api_response_handlingTier 1 · 70% confidence

observability-api-response-handlin-langfuse-sdk-logs-pydantic-v1-validation-errors-fo-9041a0fd

agent: observability

When does this happen?

IF Langfuse SDK logs Pydantic v1 validation errors for UpdateGenerationBody when OpenAI API returns empty dicts for usage details (prompt_tokens_details, completion_tokens_details) or None values for inner fields.

How others solved it

THEN Ensure that the usage object returned by OpenAI contains non-empty dicts with integer values for all nested fields (e.g., audio_tokens, accepted_prediction_tokens). If necessary, transform the response to fill missing fields with 0 before passing to langfuse, or update to a newer version of the SDK that handles this case.

# Transform usage to avoid validation errors
if not usage.prompt_tokens_details:
    usage.prompt_tokens_details = {"cached_tokens": 0, "audio_tokens": 0}
if not usage.completion_tokens_details:
    usage.completion_tokens_details = {"reasoning_tokens": 0, "audio_tokens": 0, "accepted_prediction_tokens": 0, "rejected_prediction_tokens": 0}

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics