Skip to content

Commit 873fe35

Browse files
committedFeb 3, 2025·
Make Agent.run not async
1 parent 80f42f1 commit 873fe35

File tree

1 file changed

+7
-9
lines changed

1 file changed

+7
-9
lines changed
 

‎pydantic_ai_slim/pydantic_ai/agent.py

+7-9
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ def __init__(
203203
self._register_tool(Tool(tool))
204204

205205
@overload
206-
async def run(
206+
def run(
207207
self,
208208
user_prompt: str,
209209
*,
@@ -218,7 +218,7 @@ async def run(
218218
) -> AgentRun[AgentDepsT, ResultDataT]: ...
219219

220220
@overload
221-
async def run(
221+
def run(
222222
self,
223223
user_prompt: str,
224224
*,
@@ -232,7 +232,7 @@ async def run(
232232
infer_name: bool = True,
233233
) -> AgentRun[AgentDepsT, ResultDataT]: ...
234234

235-
async def run(
235+
def run(
236236
self,
237237
user_prompt: str,
238238
*,
@@ -276,7 +276,7 @@ async def main():
276276
"""
277277
if infer_name and self.name is None:
278278
self._infer_name(inspect.currentframe())
279-
model_used = await self._get_model(model)
279+
model_used = self._get_model(model)
280280

281281
deps = self._get_deps(deps)
282282
new_message_index = len(message_history) if message_history else 0
@@ -337,9 +337,7 @@ async def main():
337337
)
338338

339339
# Actually run
340-
# TODO: Make this method non-async and remove the next await
341-
# That way, users can decide whether to "await" the run, or iterate over it
342-
return await AgentRun(
340+
return AgentRun(
343341
graph.run(
344342
start_node,
345343
state=state,
@@ -515,7 +513,7 @@ async def main():
515513
# f_back because `asynccontextmanager` adds one frame
516514
if frame := inspect.currentframe(): # pragma: no branch
517515
self._infer_name(frame.f_back)
518-
model_used = await self._get_model(model)
516+
model_used = self._get_model(model)
519517

520518
deps = self._get_deps(deps)
521519
new_message_index = len(message_history) if message_history else 0
@@ -966,7 +964,7 @@ def _register_tool(self, tool: Tool[AgentDepsT]) -> None:
966964

967965
self._function_tools[tool.name] = tool
968966

969-
async def _get_model(self, model: models.Model | models.KnownModelName | None) -> models.Model:
967+
def _get_model(self, model: models.Model | models.KnownModelName | None) -> models.Model:
970968
"""Create a model configured for this agent.
971969
972970
Args:

0 commit comments

Comments
 (0)