structured_output_parsing_failureTier 1 · 70% confidence

ai-agents-structured-output-pa-when-using-llama-index-s-structured-output-with-a--3e419363

agent: ai_agents

When does this happen?

IF When using llama_index's structured output with a Pydantic model, the LLM may return a raw string instead of a valid Pydantic instance, causing an AttributeError on model_dump_json().

How others solved it

THEN Wrap the structured LLM chat call in a retry loop that catches AttributeError or pydantic.ValidationError. On failure, log the original error message and retry up to a maximum number of attempts (e.g., 3). Use a short delay between retries to avoid rate limits.

from pydantic import ValidationError
from llama_index.core.llms import LLM

max_retries = 3
for attempt in range(max_retries):
    try:
        response = sllm.chat([system_prompt, user_prompt])
        break
    except (AttributeError, ValidationError) as e:
        print(f"Attempt {attempt+1} failed: {e}")
        if attempt == max_retries - 1:
            raise

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics