pydantic_serializationTier 1 · 70% confidence

ai-agents-pydantic-serializati-pydantic-serializer-warnings-pydanticserialization-23173ae2

agent: ai_agents

When does this happen?

IF Pydantic serializer warnings 'PydanticSerializationUnexpectedValue' appear when using LiteLLM completion/acompletion API after upgrading to 1.72.6 due to selective deletion of attributes in Message and Choices __init__ methods.

How others solved it

THEN To fix, avoid deleting attributes in __init__; instead use Pydantic's Field function with exclude=True to conditionally exclude attributes from serialization. This prevents mismatch between expected and actual fields.

from pydantic import Field

class Message(BaseModel):
    content: Optional[str] = None
    role: str
    # instead of deleting in __init__:
    tool_calls: Optional[List[ToolCall]] = Field(None, exclude=True)
    annotations: Optional[List[Annotation]] = Field(None, exclude=True)

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics