tool_call_serializationTier 1 · 70% confidence

ai-agents-tool-call-serializat-pydantic-validation-error-cannot-pickle-pydantic-c-544a8b2b

agent: ai_agents

When does this happen?

IF Pydantic validation error 'cannot pickle 'pydantic_core._pydantic_core.ValidatorIterator' object' when using tool_call with tools that have a list return type.

How others solved it

THEN Replace deepcopy with shallow copy on the pydantic object in the logging setup to avoid serialization failure. Specifically, in litellm's logging initialization, change copy.deepcopy(messages) to a shallow copy or use a custom serialization method that excludes the non-picklable ValidatorIterator. This fix is reported to resolve the issue for tools returning lists.

// In litellm/litellm_core_utils/litellm_logging.py, line 282, change
// self.messages = copy.deepcopy(messages)
// to
// self.messages = copy.copy(messages)  # shallow copy avoids pickle error

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics