pydantic-ai-slim 1.0.6__py3-none-any.whl → 1.0.8__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pydantic-ai-slim might be problematic. Click here for more details.
- pydantic_ai/_agent_graph.py +229 -134
- pydantic_ai/ag_ui.py +51 -40
- pydantic_ai/agent/__init__.py +35 -45
- pydantic_ai/agent/abstract.py +7 -7
- pydantic_ai/agent/wrapper.py +0 -1
- pydantic_ai/durable_exec/dbos/_agent.py +14 -10
- pydantic_ai/durable_exec/dbos/_mcp_server.py +4 -2
- pydantic_ai/durable_exec/temporal/_agent.py +0 -1
- pydantic_ai/durable_exec/temporal/_logfire.py +15 -3
- pydantic_ai/durable_exec/temporal/_toolset.py +17 -12
- pydantic_ai/mcp.py +5 -0
- pydantic_ai/models/__init__.py +4 -6
- pydantic_ai/result.py +3 -5
- pydantic_ai/run.py +0 -2
- pydantic_ai/tools.py +11 -0
- pydantic_ai/toolsets/function.py +50 -9
- pydantic_ai/usage.py +2 -2
- {pydantic_ai_slim-1.0.6.dist-info → pydantic_ai_slim-1.0.8.dist-info}/METADATA +3 -3
- {pydantic_ai_slim-1.0.6.dist-info → pydantic_ai_slim-1.0.8.dist-info}/RECORD +22 -22
- {pydantic_ai_slim-1.0.6.dist-info → pydantic_ai_slim-1.0.8.dist-info}/WHEEL +0 -0
- {pydantic_ai_slim-1.0.6.dist-info → pydantic_ai_slim-1.0.8.dist-info}/entry_points.txt +0 -0
- {pydantic_ai_slim-1.0.6.dist-info → pydantic_ai_slim-1.0.8.dist-info}/licenses/LICENSE +0 -0
pydantic_ai/tools.py
CHANGED
|
@@ -255,6 +255,7 @@ class Tool(Generic[AgentDepsT]):
|
|
|
255
255
|
strict: bool | None
|
|
256
256
|
sequential: bool
|
|
257
257
|
requires_approval: bool
|
|
258
|
+
metadata: dict[str, Any] | None
|
|
258
259
|
function_schema: _function_schema.FunctionSchema
|
|
259
260
|
"""
|
|
260
261
|
The base JSON schema for the tool's parameters.
|
|
@@ -277,6 +278,7 @@ class Tool(Generic[AgentDepsT]):
|
|
|
277
278
|
strict: bool | None = None,
|
|
278
279
|
sequential: bool = False,
|
|
279
280
|
requires_approval: bool = False,
|
|
281
|
+
metadata: dict[str, Any] | None = None,
|
|
280
282
|
function_schema: _function_schema.FunctionSchema | None = None,
|
|
281
283
|
):
|
|
282
284
|
"""Create a new tool instance.
|
|
@@ -332,6 +334,7 @@ class Tool(Generic[AgentDepsT]):
|
|
|
332
334
|
sequential: Whether the function requires a sequential/serial execution environment. Defaults to False.
|
|
333
335
|
requires_approval: Whether this tool requires human-in-the-loop approval. Defaults to False.
|
|
334
336
|
See the [tools documentation](../deferred-tools.md#human-in-the-loop-tool-approval) for more info.
|
|
337
|
+
metadata: Optional metadata for the tool. This is not sent to the model but can be used for filtering and tool behavior customization.
|
|
335
338
|
function_schema: The function schema to use for the tool. If not provided, it will be generated.
|
|
336
339
|
"""
|
|
337
340
|
self.function = function
|
|
@@ -352,6 +355,7 @@ class Tool(Generic[AgentDepsT]):
|
|
|
352
355
|
self.strict = strict
|
|
353
356
|
self.sequential = sequential
|
|
354
357
|
self.requires_approval = requires_approval
|
|
358
|
+
self.metadata = metadata
|
|
355
359
|
|
|
356
360
|
@classmethod
|
|
357
361
|
def from_schema(
|
|
@@ -406,6 +410,7 @@ class Tool(Generic[AgentDepsT]):
|
|
|
406
410
|
parameters_json_schema=self.function_schema.json_schema,
|
|
407
411
|
strict=self.strict,
|
|
408
412
|
sequential=self.sequential,
|
|
413
|
+
metadata=self.metadata,
|
|
409
414
|
)
|
|
410
415
|
|
|
411
416
|
async def prepare_tool_def(self, ctx: RunContext[AgentDepsT]) -> ToolDefinition | None:
|
|
@@ -488,6 +493,12 @@ class ToolDefinition:
|
|
|
488
493
|
See the [tools documentation](../deferred-tools.md#human-in-the-loop-tool-approval) for more info.
|
|
489
494
|
"""
|
|
490
495
|
|
|
496
|
+
metadata: dict[str, Any] | None = None
|
|
497
|
+
"""Tool metadata that can be set by the toolset this tool came from. It is not sent to the model, but can be used for filtering and tool behavior customization.
|
|
498
|
+
|
|
499
|
+
For MCP tools, this contains the `meta`, `annotations`, and `output_schema` fields from the tool definition.
|
|
500
|
+
"""
|
|
501
|
+
|
|
491
502
|
@property
|
|
492
503
|
def defer(self) -> bool:
|
|
493
504
|
"""Whether calls to this tool will be deferred.
|
pydantic_ai/toolsets/function.py
CHANGED
|
@@ -45,18 +45,21 @@ class FunctionToolset(AbstractToolset[AgentDepsT]):
|
|
|
45
45
|
tools: Sequence[Tool[AgentDepsT] | ToolFuncEither[AgentDepsT, ...]] = [],
|
|
46
46
|
*,
|
|
47
47
|
max_retries: int = 1,
|
|
48
|
-
id: str | None = None,
|
|
49
48
|
docstring_format: DocstringFormat = 'auto',
|
|
50
49
|
require_parameter_descriptions: bool = False,
|
|
51
50
|
schema_generator: type[GenerateJsonSchema] = GenerateToolJsonSchema,
|
|
51
|
+
strict: bool | None = None,
|
|
52
|
+
sequential: bool = False,
|
|
53
|
+
requires_approval: bool = False,
|
|
54
|
+
metadata: dict[str, Any] | None = None,
|
|
55
|
+
id: str | None = None,
|
|
52
56
|
):
|
|
53
57
|
"""Build a new function toolset.
|
|
54
58
|
|
|
55
59
|
Args:
|
|
56
60
|
tools: The tools to add to the toolset.
|
|
57
61
|
max_retries: The maximum number of retries for each tool during a run.
|
|
58
|
-
|
|
59
|
-
in which case the ID will be used to identify the toolset's activities within the workflow.
|
|
62
|
+
Applies to all tools, unless overridden when adding a tool.
|
|
60
63
|
docstring_format: Format of tool docstring, see [`DocstringFormat`][pydantic_ai.tools.DocstringFormat].
|
|
61
64
|
Defaults to `'auto'`, such that the format is inferred from the structure of the docstring.
|
|
62
65
|
Applies to all tools, unless overridden when adding a tool.
|
|
@@ -64,12 +67,27 @@ class FunctionToolset(AbstractToolset[AgentDepsT]):
|
|
|
64
67
|
Applies to all tools, unless overridden when adding a tool.
|
|
65
68
|
schema_generator: The JSON schema generator class to use for this tool. Defaults to `GenerateToolJsonSchema`.
|
|
66
69
|
Applies to all tools, unless overridden when adding a tool.
|
|
70
|
+
strict: Whether to enforce JSON schema compliance (only affects OpenAI).
|
|
71
|
+
See [`ToolDefinition`][pydantic_ai.tools.ToolDefinition] for more info.
|
|
72
|
+
sequential: Whether the function requires a sequential/serial execution environment. Defaults to False.
|
|
73
|
+
Applies to all tools, unless overridden when adding a tool.
|
|
74
|
+
requires_approval: Whether this tool requires human-in-the-loop approval. Defaults to False.
|
|
75
|
+
See the [tools documentation](../deferred-tools.md#human-in-the-loop-tool-approval) for more info.
|
|
76
|
+
Applies to all tools, unless overridden when adding a tool.
|
|
77
|
+
metadata: Optional metadata for the tool. This is not sent to the model but can be used for filtering and tool behavior customization.
|
|
78
|
+
Applies to all tools, unless overridden when adding a tool, which will be merged with the toolset's metadata.
|
|
79
|
+
id: An optional unique ID for the toolset. A toolset needs to have an ID in order to be used in a durable execution environment like Temporal,
|
|
80
|
+
in which case the ID will be used to identify the toolset's activities within the workflow.
|
|
67
81
|
"""
|
|
68
82
|
self.max_retries = max_retries
|
|
69
83
|
self._id = id
|
|
70
84
|
self.docstring_format = docstring_format
|
|
71
85
|
self.require_parameter_descriptions = require_parameter_descriptions
|
|
72
86
|
self.schema_generator = schema_generator
|
|
87
|
+
self.strict = strict
|
|
88
|
+
self.sequential = sequential
|
|
89
|
+
self.requires_approval = requires_approval
|
|
90
|
+
self.metadata = metadata
|
|
73
91
|
|
|
74
92
|
self.tools = {}
|
|
75
93
|
for tool in tools:
|
|
@@ -97,8 +115,9 @@ class FunctionToolset(AbstractToolset[AgentDepsT]):
|
|
|
97
115
|
require_parameter_descriptions: bool | None = None,
|
|
98
116
|
schema_generator: type[GenerateJsonSchema] | None = None,
|
|
99
117
|
strict: bool | None = None,
|
|
100
|
-
sequential: bool =
|
|
101
|
-
requires_approval: bool =
|
|
118
|
+
sequential: bool | None = None,
|
|
119
|
+
requires_approval: bool | None = None,
|
|
120
|
+
metadata: dict[str, Any] | None = None,
|
|
102
121
|
) -> Callable[[ToolFuncEither[AgentDepsT, ToolParams]], ToolFuncEither[AgentDepsT, ToolParams]]: ...
|
|
103
122
|
|
|
104
123
|
def tool(
|
|
@@ -113,8 +132,9 @@ class FunctionToolset(AbstractToolset[AgentDepsT]):
|
|
|
113
132
|
require_parameter_descriptions: bool | None = None,
|
|
114
133
|
schema_generator: type[GenerateJsonSchema] | None = None,
|
|
115
134
|
strict: bool | None = None,
|
|
116
|
-
sequential: bool =
|
|
117
|
-
requires_approval: bool =
|
|
135
|
+
sequential: bool | None = None,
|
|
136
|
+
requires_approval: bool | None = None,
|
|
137
|
+
metadata: dict[str, Any] | None = None,
|
|
118
138
|
) -> Any:
|
|
119
139
|
"""Decorator to register a tool function which takes [`RunContext`][pydantic_ai.tools.RunContext] as its first argument.
|
|
120
140
|
|
|
@@ -163,9 +183,14 @@ class FunctionToolset(AbstractToolset[AgentDepsT]):
|
|
|
163
183
|
If `None`, the default value is determined by the toolset.
|
|
164
184
|
strict: Whether to enforce JSON schema compliance (only affects OpenAI).
|
|
165
185
|
See [`ToolDefinition`][pydantic_ai.tools.ToolDefinition] for more info.
|
|
186
|
+
If `None`, the default value is determined by the toolset.
|
|
166
187
|
sequential: Whether the function requires a sequential/serial execution environment. Defaults to False.
|
|
188
|
+
If `None`, the default value is determined by the toolset.
|
|
167
189
|
requires_approval: Whether this tool requires human-in-the-loop approval. Defaults to False.
|
|
168
190
|
See the [tools documentation](../deferred-tools.md#human-in-the-loop-tool-approval) for more info.
|
|
191
|
+
If `None`, the default value is determined by the toolset.
|
|
192
|
+
metadata: Optional metadata for the tool. This is not sent to the model but can be used for filtering and tool behavior customization.
|
|
193
|
+
If `None`, the default value is determined by the toolset. If provided, it will be merged with the toolset's metadata.
|
|
169
194
|
"""
|
|
170
195
|
|
|
171
196
|
def tool_decorator(
|
|
@@ -184,6 +209,7 @@ class FunctionToolset(AbstractToolset[AgentDepsT]):
|
|
|
184
209
|
strict,
|
|
185
210
|
sequential,
|
|
186
211
|
requires_approval,
|
|
212
|
+
metadata,
|
|
187
213
|
)
|
|
188
214
|
return func_
|
|
189
215
|
|
|
@@ -200,8 +226,9 @@ class FunctionToolset(AbstractToolset[AgentDepsT]):
|
|
|
200
226
|
require_parameter_descriptions: bool | None = None,
|
|
201
227
|
schema_generator: type[GenerateJsonSchema] | None = None,
|
|
202
228
|
strict: bool | None = None,
|
|
203
|
-
sequential: bool =
|
|
204
|
-
requires_approval: bool =
|
|
229
|
+
sequential: bool | None = None,
|
|
230
|
+
requires_approval: bool | None = None,
|
|
231
|
+
metadata: dict[str, Any] | None = None,
|
|
205
232
|
) -> None:
|
|
206
233
|
"""Add a function as a tool to the toolset.
|
|
207
234
|
|
|
@@ -227,9 +254,14 @@ class FunctionToolset(AbstractToolset[AgentDepsT]):
|
|
|
227
254
|
If `None`, the default value is determined by the toolset.
|
|
228
255
|
strict: Whether to enforce JSON schema compliance (only affects OpenAI).
|
|
229
256
|
See [`ToolDefinition`][pydantic_ai.tools.ToolDefinition] for more info.
|
|
257
|
+
If `None`, the default value is determined by the toolset.
|
|
230
258
|
sequential: Whether the function requires a sequential/serial execution environment. Defaults to False.
|
|
259
|
+
If `None`, the default value is determined by the toolset.
|
|
231
260
|
requires_approval: Whether this tool requires human-in-the-loop approval. Defaults to False.
|
|
232
261
|
See the [tools documentation](../deferred-tools.md#human-in-the-loop-tool-approval) for more info.
|
|
262
|
+
If `None`, the default value is determined by the toolset.
|
|
263
|
+
metadata: Optional metadata for the tool. This is not sent to the model but can be used for filtering and tool behavior customization.
|
|
264
|
+
If `None`, the default value is determined by the toolset. If provided, it will be merged with the toolset's metadata.
|
|
233
265
|
"""
|
|
234
266
|
if docstring_format is None:
|
|
235
267
|
docstring_format = self.docstring_format
|
|
@@ -237,6 +269,12 @@ class FunctionToolset(AbstractToolset[AgentDepsT]):
|
|
|
237
269
|
require_parameter_descriptions = self.require_parameter_descriptions
|
|
238
270
|
if schema_generator is None:
|
|
239
271
|
schema_generator = self.schema_generator
|
|
272
|
+
if strict is None:
|
|
273
|
+
strict = self.strict
|
|
274
|
+
if sequential is None:
|
|
275
|
+
sequential = self.sequential
|
|
276
|
+
if requires_approval is None:
|
|
277
|
+
requires_approval = self.requires_approval
|
|
240
278
|
|
|
241
279
|
tool = Tool[AgentDepsT](
|
|
242
280
|
func,
|
|
@@ -250,6 +288,7 @@ class FunctionToolset(AbstractToolset[AgentDepsT]):
|
|
|
250
288
|
strict=strict,
|
|
251
289
|
sequential=sequential,
|
|
252
290
|
requires_approval=requires_approval,
|
|
291
|
+
metadata=metadata,
|
|
253
292
|
)
|
|
254
293
|
self.add_tool(tool)
|
|
255
294
|
|
|
@@ -263,6 +302,8 @@ class FunctionToolset(AbstractToolset[AgentDepsT]):
|
|
|
263
302
|
raise UserError(f'Tool name conflicts with existing tool: {tool.name!r}')
|
|
264
303
|
if tool.max_retries is None:
|
|
265
304
|
tool.max_retries = self.max_retries
|
|
305
|
+
if self.metadata is not None:
|
|
306
|
+
tool.metadata = self.metadata | (tool.metadata or {})
|
|
266
307
|
self.tools[tool.name] = tool
|
|
267
308
|
|
|
268
309
|
async def get_tools(self, ctx: RunContext[AgentDepsT]) -> dict[str, ToolsetTool[AgentDepsT]]:
|
pydantic_ai/usage.py
CHANGED
|
@@ -135,7 +135,7 @@ class RunUsage(UsageBase):
|
|
|
135
135
|
"""Number of successful tool calls executed during the run."""
|
|
136
136
|
|
|
137
137
|
input_tokens: int = 0
|
|
138
|
-
"""Total number of
|
|
138
|
+
"""Total number of input/prompt tokens."""
|
|
139
139
|
|
|
140
140
|
cache_write_tokens: int = 0
|
|
141
141
|
"""Total number of tokens written to the cache."""
|
|
@@ -150,7 +150,7 @@ class RunUsage(UsageBase):
|
|
|
150
150
|
"""Total number of audio tokens read from the cache."""
|
|
151
151
|
|
|
152
152
|
output_tokens: int = 0
|
|
153
|
-
"""Total number of
|
|
153
|
+
"""Total number of output/completion tokens."""
|
|
154
154
|
|
|
155
155
|
details: dict[str, int] = dataclasses.field(default_factory=dict)
|
|
156
156
|
"""Any extra details returned by the model."""
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pydantic-ai-slim
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.8
|
|
4
4
|
Summary: Agent Framework / shim to use Pydantic with LLMs, slim package
|
|
5
5
|
Project-URL: Homepage, https://github.com/pydantic/pydantic-ai/tree/main/pydantic_ai_slim
|
|
6
6
|
Project-URL: Source, https://github.com/pydantic/pydantic-ai/tree/main/pydantic_ai_slim
|
|
@@ -33,7 +33,7 @@ Requires-Dist: genai-prices>=0.0.23
|
|
|
33
33
|
Requires-Dist: griffe>=1.3.2
|
|
34
34
|
Requires-Dist: httpx>=0.27
|
|
35
35
|
Requires-Dist: opentelemetry-api>=1.28.0
|
|
36
|
-
Requires-Dist: pydantic-graph==1.0.
|
|
36
|
+
Requires-Dist: pydantic-graph==1.0.8
|
|
37
37
|
Requires-Dist: pydantic>=2.10
|
|
38
38
|
Requires-Dist: typing-inspection>=0.4.0
|
|
39
39
|
Provides-Extra: a2a
|
|
@@ -57,7 +57,7 @@ Requires-Dist: dbos>=1.13.0; extra == 'dbos'
|
|
|
57
57
|
Provides-Extra: duckduckgo
|
|
58
58
|
Requires-Dist: ddgs>=9.0.0; extra == 'duckduckgo'
|
|
59
59
|
Provides-Extra: evals
|
|
60
|
-
Requires-Dist: pydantic-evals==1.0.
|
|
60
|
+
Requires-Dist: pydantic-evals==1.0.8; extra == 'evals'
|
|
61
61
|
Provides-Extra: google
|
|
62
62
|
Requires-Dist: google-genai>=1.31.0; extra == 'google'
|
|
63
63
|
Provides-Extra: groq
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
pydantic_ai/__init__.py,sha256=CfqGPSjKlDl5iw1L48HbELsDuzxIzBFnFnovI_GcFWA,2083
|
|
2
2
|
pydantic_ai/__main__.py,sha256=Q_zJU15DUA01YtlJ2mnaLCoId2YmgmreVEERGuQT-Y0,132
|
|
3
3
|
pydantic_ai/_a2a.py,sha256=2Hopcyl6o6U91eVkd7iAbEPYA5f0hJb8A5_fwMC0UfM,12168
|
|
4
|
-
pydantic_ai/_agent_graph.py,sha256=
|
|
4
|
+
pydantic_ai/_agent_graph.py,sha256=fbKvy6WAognD57KLD4khvP8l3EFu_yy5v1T8NmtHhF4,51966
|
|
5
5
|
pydantic_ai/_cli.py,sha256=C-Uvbdx9wWnNqZKHN_r8d4mGte_aIPikOkKrTPvdrN8,14057
|
|
6
6
|
pydantic_ai/_function_schema.py,sha256=olbmUMQoQV5qKV4j0-cOnhcTINz4uYyeDqMyusrFRtY,11234
|
|
7
7
|
pydantic_ai/_griffe.py,sha256=BphvTL00FHxsSY56GM-bNyCOdwrpL0T3LbDQITWUK_Q,5280
|
|
@@ -14,45 +14,45 @@ pydantic_ai/_system_prompt.py,sha256=WdDW_DTGHujcFFaK-J7J6mA4ZDJZ0IOKpyizJA-1Y5Q
|
|
|
14
14
|
pydantic_ai/_thinking_part.py,sha256=x80-Vkon16GOyq3W6f2qzafTVPC5dCgF7QD3k8ZMmYU,1304
|
|
15
15
|
pydantic_ai/_tool_manager.py,sha256=hB_QzVxnGEbB7ZT2UUDeKeLm_Cv0F-0oCPwInxR-8NE,10369
|
|
16
16
|
pydantic_ai/_utils.py,sha256=xa2PoAcTN-oXhfXOONOighmue-jtSv668o9Fu_IdO0A,16062
|
|
17
|
-
pydantic_ai/ag_ui.py,sha256=
|
|
17
|
+
pydantic_ai/ag_ui.py,sha256=tV-jiRvAYU8ztsJjZ8VdrbUPRXlQvtaxWZeiHxhmT94,29309
|
|
18
18
|
pydantic_ai/builtin_tools.py,sha256=l4GLWM54yXa1lqBM-o2WMiTx51nhMZRPS7ufleEn474,3301
|
|
19
19
|
pydantic_ai/direct.py,sha256=zMsz6poVgEq7t7L_8FWM6hmKdqTzjyQYL5xzQt_59Us,14951
|
|
20
20
|
pydantic_ai/exceptions.py,sha256=zsXZMKf2BJuVsfuHl1fWTkogLU37bd4yq7D6BKHAzVs,4968
|
|
21
21
|
pydantic_ai/format_prompt.py,sha256=37imBG2Fgpn-_RfAFalOX8Xc_XpGH2gY9tnhJDvxfk8,4243
|
|
22
|
-
pydantic_ai/mcp.py,sha256=
|
|
22
|
+
pydantic_ai/mcp.py,sha256=N1X5zldNeNJmH9EHnccLxXU4Pw7tBCdxFJzzbTOVAnE,34778
|
|
23
23
|
pydantic_ai/messages.py,sha256=bq9Ps-CsYkXdkq4eu1gmIoiLiYsFTwEzB4fXUF_neic,55865
|
|
24
24
|
pydantic_ai/output.py,sha256=wzNgVKJgxyXtSH-uNbRxIaUNLidxlQcwWYT2o1gY2hE,12037
|
|
25
25
|
pydantic_ai/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
26
|
-
pydantic_ai/result.py,sha256=
|
|
26
|
+
pydantic_ai/result.py,sha256=Z_5g_lwYrEvHCgXlDDjHS6F8oTmsz2XxUTWTttBCtdc,25363
|
|
27
27
|
pydantic_ai/retries.py,sha256=QM4oDA9DG-Y2qP06fbCp8Dqq8ups40Rr4HYjAOlbNyM,14650
|
|
28
|
-
pydantic_ai/run.py,sha256=
|
|
28
|
+
pydantic_ai/run.py,sha256=wHlWl4CXIHLcgo2R8PlsU3Pjn0vuMLFfP8D6Fbany-Y,15097
|
|
29
29
|
pydantic_ai/settings.py,sha256=0mr6KudxKKjTG8e3nsv_8vDLxNhu_1-WvefCOzCGSYM,3565
|
|
30
|
-
pydantic_ai/tools.py,sha256=
|
|
31
|
-
pydantic_ai/usage.py,sha256=
|
|
32
|
-
pydantic_ai/agent/__init__.py,sha256=
|
|
33
|
-
pydantic_ai/agent/abstract.py,sha256=
|
|
34
|
-
pydantic_ai/agent/wrapper.py,sha256
|
|
30
|
+
pydantic_ai/tools.py,sha256=dCecmJtRkF1ioqFYbfT00XGGqzGB4PPO9n6IrHCQtnc,20343
|
|
31
|
+
pydantic_ai/usage.py,sha256=KuDwSvWCzV5O9fPeEy5lUg2OhPq2eZFEFk2vYCA_DwA,14060
|
|
32
|
+
pydantic_ai/agent/__init__.py,sha256=HH0bJXzNkpfzv99MMYkHIBy8_ArpETqNF6yugkTjqu8,62542
|
|
33
|
+
pydantic_ai/agent/abstract.py,sha256=fL2nD5XgLHfmva6t-foBENpLHV_WYTUWLGBKU-l8stM,44622
|
|
34
|
+
pydantic_ai/agent/wrapper.py,sha256=lx0NcM8MX_MoNm0oiPFDH2Cod78N5ONcerKcpJQeJes,9425
|
|
35
35
|
pydantic_ai/common_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
36
36
|
pydantic_ai/common_tools/duckduckgo.py,sha256=cJd-BUg-i50E0QjKveRCndGlU5GdvLq9UgNNJ18VQIQ,2263
|
|
37
37
|
pydantic_ai/common_tools/tavily.py,sha256=Q1xxSF5HtXAaZ10Pp-OaDOHXwJf2mco9wScGEQXD7E4,2495
|
|
38
38
|
pydantic_ai/durable_exec/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
39
|
pydantic_ai/durable_exec/dbos/__init__.py,sha256=H_dT0ERuNCBP0Im8eVGl8F9h7E9Aj87-pvmnLpDelF0,199
|
|
40
|
-
pydantic_ai/durable_exec/dbos/_agent.py,sha256=
|
|
41
|
-
pydantic_ai/durable_exec/dbos/_mcp_server.py,sha256=
|
|
40
|
+
pydantic_ai/durable_exec/dbos/_agent.py,sha256=C03G7Sy_aS68GDr8gB3tgEnxBH6fkfTSEz0UXI4gfh4,32584
|
|
41
|
+
pydantic_ai/durable_exec/dbos/_mcp_server.py,sha256=8RsDGqAluVOiGPuSl37XjaOEZvdN0LfwuqqZc7o4foE,3047
|
|
42
42
|
pydantic_ai/durable_exec/dbos/_model.py,sha256=XNGLKJ5a9znUWnMSIA0SzxvQmUJREWzcVDrnfdjMoac,5115
|
|
43
43
|
pydantic_ai/durable_exec/dbos/_utils.py,sha256=_aNceFvTcNeqb78sTDYM2TdYph85tbdeLueyXY1lbTA,242
|
|
44
44
|
pydantic_ai/durable_exec/temporal/__init__.py,sha256=XKwy68wfgmjr057nolRwGHTKiadxufpQEGEUprAV09k,5563
|
|
45
|
-
pydantic_ai/durable_exec/temporal/_agent.py,sha256=
|
|
45
|
+
pydantic_ai/durable_exec/temporal/_agent.py,sha256=9X1cPjQ72lihmoeOvmcPsYOQ18S-5qlHPOanH97vKZ0,36830
|
|
46
46
|
pydantic_ai/durable_exec/temporal/_function_toolset.py,sha256=Hnfz3ukOqgq8j3h9u97S-fMfq4un1HZA4kxN2irWD_0,5562
|
|
47
|
-
pydantic_ai/durable_exec/temporal/_logfire.py,sha256=
|
|
47
|
+
pydantic_ai/durable_exec/temporal/_logfire.py,sha256=ASd7vb0cd61yESI0mgU2w9SCGxsOegz95HtQjKdlQkE,2472
|
|
48
48
|
pydantic_ai/durable_exec/temporal/_mcp_server.py,sha256=VFvHPVhvYz-ITGaXXNyuWwB8tsdF3Hg9rs7gss8TKWY,6032
|
|
49
49
|
pydantic_ai/durable_exec/temporal/_model.py,sha256=cFHrk-yM65d41TPiWp5hwZEqXBNO6lNMtcU587j1b58,6765
|
|
50
50
|
pydantic_ai/durable_exec/temporal/_run_context.py,sha256=IMLEW4AqHklumLiRBUTW-ogJGiH_tX3nCrFrxD7CbFw,2390
|
|
51
|
-
pydantic_ai/durable_exec/temporal/_toolset.py,sha256=
|
|
51
|
+
pydantic_ai/durable_exec/temporal/_toolset.py,sha256=bnMbmR8JmBjBeWGaAMtgWP9Kb930nu0jzLS1T5Z9VEU,2978
|
|
52
52
|
pydantic_ai/ext/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
53
53
|
pydantic_ai/ext/aci.py,sha256=sUllKDNO-LOMurbFgxwRHuzNlBkSa3aVBqXfEm-A_vo,2545
|
|
54
54
|
pydantic_ai/ext/langchain.py,sha256=iLVEZv1kcLkdIHo3us2yfdi0kVqyJ6qTaCt9BoLWm4k,2335
|
|
55
|
-
pydantic_ai/models/__init__.py,sha256=
|
|
55
|
+
pydantic_ai/models/__init__.py,sha256=TwCSdRVEfNK2M241tMoczcZzkHjnPs0xNIy6AwxijYs,36379
|
|
56
56
|
pydantic_ai/models/anthropic.py,sha256=-dH4qYSRlRD1XiC1wR89oGHKnFTjxP8zQh0scQDkTCk,32768
|
|
57
57
|
pydantic_ai/models/bedrock.py,sha256=wHo65QNEsfsb1UaUv_TpvJ0WrgFoKoegB6I3eDVnORI,33393
|
|
58
58
|
pydantic_ai/models/cohere.py,sha256=uQLynz-zWciZBHuvkm8HxJyTOee1bs3pSka-x-56a98,13668
|
|
@@ -115,13 +115,13 @@ pydantic_ai/toolsets/approval_required.py,sha256=zyYGEx2VqprLed16OXg1QWr81rnAB0C
|
|
|
115
115
|
pydantic_ai/toolsets/combined.py,sha256=LQzm_g6gskiHRUMFDvm88SSrz8OGxbdxyHiKzQrMBNU,4026
|
|
116
116
|
pydantic_ai/toolsets/external.py,sha256=J9mWQm1HLbRCOJwpLBIvUZZGR_ywSB7pz8MrXkRNBoU,1736
|
|
117
117
|
pydantic_ai/toolsets/filtered.py,sha256=PSQG9EbBYJpHUEBb_4TGzhjAcQPo5aPKvTuReeoWYtQ,864
|
|
118
|
-
pydantic_ai/toolsets/function.py,sha256=
|
|
118
|
+
pydantic_ai/toolsets/function.py,sha256=6QQclnwbelLXXdTGnS4JuU21J_nKHdklgOscL0QGDuQ,16203
|
|
119
119
|
pydantic_ai/toolsets/prefixed.py,sha256=0KwcDkW8OM36ZUsOLVP5h-Nj2tPq78L3_E2c-1Fbh5s,1426
|
|
120
120
|
pydantic_ai/toolsets/prepared.py,sha256=Zjfz6S8In6PBVxoKFN9sKPN984zO6t0awB7Lnq5KODw,1431
|
|
121
121
|
pydantic_ai/toolsets/renamed.py,sha256=JuLHpi-hYPiSPlaTpN8WiXLiGsywYK0axi2lW2Qs75k,1637
|
|
122
122
|
pydantic_ai/toolsets/wrapper.py,sha256=KRzF1p8dncHbva8CE6Ud-IC5E_aygIHlwH5atXK55k4,1673
|
|
123
|
-
pydantic_ai_slim-1.0.
|
|
124
|
-
pydantic_ai_slim-1.0.
|
|
125
|
-
pydantic_ai_slim-1.0.
|
|
126
|
-
pydantic_ai_slim-1.0.
|
|
127
|
-
pydantic_ai_slim-1.0.
|
|
123
|
+
pydantic_ai_slim-1.0.8.dist-info/METADATA,sha256=S4cGU9aP_2rXMWafcsjgft-jWoekPMq1wpTi0JYQVhI,4627
|
|
124
|
+
pydantic_ai_slim-1.0.8.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
125
|
+
pydantic_ai_slim-1.0.8.dist-info/entry_points.txt,sha256=kbKxe2VtDCYS06hsI7P3uZGxcVC08-FPt1rxeiMpIps,50
|
|
126
|
+
pydantic_ai_slim-1.0.8.dist-info/licenses/LICENSE,sha256=vA6Jc482lEyBBuGUfD1pYx-cM7jxvLYOxPidZ30t_PQ,1100
|
|
127
|
+
pydantic_ai_slim-1.0.8.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|