Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions pydantic_ai_slim/pydantic_ai/agent/abstract.py
Original file line number Diff line number Diff line change
Expand Up @@ -683,6 +683,9 @@ async def main():
An async iterable of stream events `AgentStreamEvent` and finally a `AgentRunResultEvent` with the final
run result.
"""
if infer_name and self.name is None:
self._infer_name(inspect.currentframe())

# unfortunately this hack of returning a generator rather than defining it right here is
# required to allow overloads of this method to work in python's typing system, or at least with pyright
# or at least I couldn't make it work without
Expand All @@ -696,7 +699,6 @@ async def main():
model_settings=model_settings,
usage_limits=usage_limits,
usage=usage,
infer_name=infer_name,
toolsets=toolsets,
builtin_tools=builtin_tools,
)
Expand All @@ -713,7 +715,6 @@ async def _run_stream_events(
model_settings: ModelSettings | None = None,
usage_limits: _usage.UsageLimits | None = None,
usage: _usage.RunUsage | None = None,
infer_name: bool = True,
toolsets: Sequence[AbstractToolset[AgentDepsT]] | None = None,
builtin_tools: Sequence[AbstractBuiltinTool] | None = None,
) -> AsyncIterator[_messages.AgentStreamEvent | AgentRunResultEvent[Any]]:
Expand All @@ -739,7 +740,7 @@ async def run_agent() -> AgentRunResult[Any]:
model_settings=model_settings,
usage_limits=usage_limits,
usage=usage,
infer_name=infer_name,
infer_name=False,
toolsets=toolsets,
builtin_tools=builtin_tools,
event_stream_handler=event_stream_handler,
Expand Down
1 change: 1 addition & 0 deletions tests/test_streaming.py
Original file line number Diff line number Diff line change
Expand Up @@ -1817,6 +1817,7 @@ async def ret_a(x: str) -> str:
return f'{x}-apple'

events = [event async for event in test_agent.run_stream_events('Hello')]
assert test_agent.name == 'test_agent'

assert events == snapshot(
[
Expand Down