-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Initial Checks
- I confirm that I'm using the latest version of Pydantic AI
- I confirm that I searched for my issue in https://github.com/pydantic/pydantic-ai/issues before opening this issue
Description
I realised that if model use tools, my script fails with that error.
File "D:\programming\\.venv\Lib\site-packages\pydantic_ai\agent.py", line 893, in run_sync
return get_event_loop().run_until_complete(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\admin\AppData\Local\Programs\Python\Python312\Lib\asyncio\base_events.py", line 684, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "D:\programming\\.venv\Lib\site-packages\pydantic_ai\agent.py", line 494, in run
async for _ in agent_run:
File "D:\programming\\.venv\Lib\site-packages\pydantic_ai\agent.py", line 1985, in __anext__
next_node = await self._graph_run.__anext__()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programming\\.venv\Lib\site-packages\pydantic_graph\graph.py", line 809, in __anext__
return await self.next(self._next_node)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programming\\.venv\Lib\site-packages\pydantic_graph\graph.py", line 782, in next
self._next_node = await node.run(ctx)
^^^^^^^^^^^^^^^^^^^
File "D:\programming\\.venv\Lib\site-packages\pydantic_ai\_agent_graph.py", line 331, in run
return await self._make_request(ctx)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programming\\.venv\Lib\site-packages\pydantic_ai\_agent_graph.py", line 391, in _make_request
model_response = await ctx.deps.model.request(message_history, model_settings, model_request_parameters)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programming\\.venv\Lib\site-packages\pydantic_ai\models\openai.py", line 236, in request
model_response = self._process_response(response)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programming\\.venv\Lib\site-packages\pydantic_ai\models\openai.py", line 352, in _process_response
timestamp = number_to_datetime(response.created)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programming\\.venv\Lib\site-packages\pydantic_ai\_utils.py", line 327, in number_to_datetime
return _datetime_ta.validate_python(x)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\programming\\.venv\Lib\site-packages\pydantic\type_adapter.py", line 421, in validate_python
return self.validator.validate_python(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Example Code
from dotenv import load_dotenv
from pydantic_ai import Agent, RunContext
from pydantic_ai.models.openai import OpenAIModel
from pydantic_ai.providers.openrouter import OpenRouterProvider
import os
load_dotenv()
fast_model = OpenAIModel(
"deepseek/deepseek-chat-v3-0324:free",
provider=OpenRouterProvider(api_key=os.getenv("OPENROUTER_API_KEY"))
)
fast_agent = Agent(fast_model)
@fast_agent.tool_plain
def get_servers_status() -> list[dict]:
"""Get main servers' characteristics and resources, that are available to use."""
return [
{
"id": 1,
"location": "Berlin, Germany",
"CPU": "AMD Ryzen 7800X3D",
"CPU_FREQUENCY-GHZ": "3",
"CPU_CORES": 16,
"HDD-GB": 1024,
"SSD-GB": 100,
"RAM-MB": 20480,
"RAM_TYPE": "DDR3"
},
{
"id": 2,
"location": "London, United Kingdom",
"CPU": "Intel Pentium Gold",
"CPU_FREQUENCY-GHZ": "1",
"CPU_CORES": 2,
"HDD-GB": 200,
"SSD-GB": 5000,
"RAM-MB": 40960,
"RAM_TYPE": "DDR6"
}
]
if __name__ == "__main__":
print(fast_agent.run_sync("Give me servers' info").output)
Python, Pydantic AI & LLM client version
Python 3.12.1, Pydantic AI 0.4.3
R0boji
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working