Robustly parses an LLM's structured output (JSON). Works on character scalars or an llmr_response. Strips code fences first, then tries strict parsing, then attempts to extract the largest balanced {...} or [...].
Arguments
- x
Character or llmr_response.
- strict_only
If TRUE, do not attempt recovery via substring extraction.
- simplify
Logical passed to jsonlite::fromJSON (
simplifyVector = FALSE
when FALSE).