Skip to content
Merged
Show file tree
Hide file tree
Changes from 8 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
6 changes: 3 additions & 3 deletions pydantic_ai_slim/pydantic_ai/_cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -228,15 +228,15 @@ async def run_chat(
prog_name: str,
config_dir: Path | None = None,
deps: AgentDepsT = None,
message_history: list[ModelMessage] | None = None,
message_history: Sequence[ModelMessage] | None = None,
) -> int:
prompt_history_path = (config_dir or PYDANTIC_AI_HOME) / PROMPT_HISTORY_FILENAME
prompt_history_path.parent.mkdir(parents=True, exist_ok=True)
prompt_history_path.touch(exist_ok=True)
session: PromptSession[Any] = PromptSession(history=FileHistory(str(prompt_history_path)))

multiline = False
messages: list[ModelMessage] = message_history[:] if message_history else []
messages: list[ModelMessage] = list(message_history) if message_history else []

while True:
try:
Expand Down Expand Up @@ -272,7 +272,7 @@ async def ask_agent(
console: Console,
code_theme: str,
deps: AgentDepsT = None,
messages: list[ModelMessage] | None = None,
messages: Sequence[ModelMessage] | None = None,
) -> list[ModelMessage]:
status = Status('[dim]Working on it…[/dim]', console=console)

Expand Down
10 changes: 5 additions & 5 deletions pydantic_ai_slim/pydantic_ai/agent/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -415,7 +415,7 @@ def iter(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -432,7 +432,7 @@ def iter(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT],
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -449,7 +449,7 @@ async def iter(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT] | None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand Down Expand Up @@ -566,7 +566,7 @@ async def main():
# Build the initial state
usage = usage or _usage.RunUsage()
state = _agent_graph.GraphAgentState(
message_history=message_history[:] if message_history else [],
message_history=list(message_history) if message_history else [],
usage=usage,
retries=0,
run_step=0,
Expand Down Expand Up @@ -690,7 +690,7 @@ def _run_span_end_attributes(
}
else:
attrs = {
'pydantic_ai.all_messages': json.dumps(settings.messages_to_otel_messages(state.message_history)),
'pydantic_ai.all_messages': json.dumps(settings.messages_to_otel_messages(list(state.message_history))),
**settings.system_instructions_attributes(literal_instructions),
}

Expand Down
28 changes: 14 additions & 14 deletions pydantic_ai_slim/pydantic_ai/agent/abstract.py
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ async def run(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -146,7 +146,7 @@ async def run(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT],
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -163,7 +163,7 @@ async def run(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT] | None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand Down Expand Up @@ -242,7 +242,7 @@ def run_sync(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -260,7 +260,7 @@ def run_sync(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT],
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -277,7 +277,7 @@ def run_sync(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT] | None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand Down Expand Up @@ -348,7 +348,7 @@ def run_stream(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -366,7 +366,7 @@ def run_stream(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT],
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -384,7 +384,7 @@ async def run_stream( # noqa C901
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT] | None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand Down Expand Up @@ -726,7 +726,7 @@ def iter(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -743,7 +743,7 @@ def iter(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT],
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -761,7 +761,7 @@ async def iter(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT] | None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand Down Expand Up @@ -1112,7 +1112,7 @@ async def to_cli(
self: Self,
deps: AgentDepsT = None,
prog_name: str = 'pydantic-ai',
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
) -> None:
"""Run the agent in a CLI chat interface.

Expand Down Expand Up @@ -1149,7 +1149,7 @@ def to_cli_sync(
self: Self,
deps: AgentDepsT = None,
prog_name: str = 'pydantic-ai',
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
) -> None:
"""Run the agent in a CLI chat interface with the non-async interface.

Expand Down
6 changes: 3 additions & 3 deletions pydantic_ai_slim/pydantic_ai/agent/wrapper.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ def iter(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -89,7 +89,7 @@ def iter(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT],
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand All @@ -106,7 +106,7 @@ async def iter(
user_prompt: str | Sequence[_messages.UserContent] | None = None,
*,
output_type: OutputSpec[RunOutputDataT] | None = None,
message_history: list[_messages.ModelMessage] | None = None,
message_history: Sequence[_messages.ModelMessage] | None = None,
deferred_tool_results: DeferredToolResults | None = None,
model: models.Model | models.KnownModelName | str | None = None,
deps: AgentDepsT = None,
Expand Down
18 changes: 9 additions & 9 deletions pydantic_ai_slim/pydantic_ai/direct.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

import queue
import threading
from collections.abc import Iterator
from collections.abc import Iterator, Sequence
from contextlib import AbstractAsyncContextManager
from dataclasses import dataclass, field
from datetime import datetime
Expand All @@ -35,7 +35,7 @@

async def model_request(
model: models.Model | models.KnownModelName | str,
messages: list[messages.ModelMessage],
messages: Sequence[messages.ModelMessage],
*,
model_settings: settings.ModelSettings | None = None,
model_request_parameters: models.ModelRequestParameters | None = None,
Expand Down Expand Up @@ -79,15 +79,15 @@ async def main():
"""
model_instance = _prepare_model(model, instrument)
return await model_instance.request(
messages,
list(messages),
model_settings,
model_request_parameters or models.ModelRequestParameters(),
)


def model_request_sync(
model: models.Model | models.KnownModelName | str,
messages: list[messages.ModelMessage],
messages: Sequence[messages.ModelMessage],
*,
model_settings: settings.ModelSettings | None = None,
model_request_parameters: models.ModelRequestParameters | None = None,
Expand Down Expand Up @@ -133,7 +133,7 @@ def model_request_sync(
return _get_event_loop().run_until_complete(
model_request(
model,
messages,
list(messages),
model_settings=model_settings,
model_request_parameters=model_request_parameters,
instrument=instrument,
Expand All @@ -143,7 +143,7 @@ def model_request_sync(

def model_request_stream(
model: models.Model | models.KnownModelName | str,
messages: list[messages.ModelMessage],
messages: Sequence[messages.ModelMessage],
*,
model_settings: settings.ModelSettings | None = None,
model_request_parameters: models.ModelRequestParameters | None = None,
Expand Down Expand Up @@ -191,15 +191,15 @@ async def main():
"""
model_instance = _prepare_model(model, instrument)
return model_instance.request_stream(
messages,
list(messages),
model_settings,
model_request_parameters or models.ModelRequestParameters(),
)


def model_request_stream_sync(
model: models.Model | models.KnownModelName | str,
messages: list[messages.ModelMessage],
messages: Sequence[messages.ModelMessage],
*,
model_settings: settings.ModelSettings | None = None,
model_request_parameters: models.ModelRequestParameters | None = None,
Expand Down Expand Up @@ -246,7 +246,7 @@ def model_request_stream_sync(
"""
async_stream_cm = model_request_stream(
model=model,
messages=messages,
messages=list(messages),
model_settings=model_settings,
model_request_parameters=model_request_parameters,
instrument=instrument,
Expand Down
Loading