pydantic-ai-slim 0.2.11__py3-none-any.whl → 0.2.13__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 +29 -35
- pydantic_ai/{_pydantic.py → _function_schema.py} +48 -8
- pydantic_ai/_output.py +266 -119
- pydantic_ai/agent.py +15 -15
- pydantic_ai/mcp.py +1 -1
- pydantic_ai/messages.py +2 -2
- pydantic_ai/models/__init__.py +39 -3
- pydantic_ai/models/anthropic.py +4 -0
- pydantic_ai/models/bedrock.py +43 -16
- pydantic_ai/models/cohere.py +4 -0
- pydantic_ai/models/gemini.py +78 -109
- pydantic_ai/models/google.py +47 -112
- pydantic_ai/models/groq.py +17 -2
- pydantic_ai/models/mistral.py +4 -0
- pydantic_ai/models/openai.py +25 -158
- pydantic_ai/profiles/__init__.py +39 -0
- pydantic_ai/{models → profiles}/_json_schema.py +23 -2
- pydantic_ai/profiles/amazon.py +9 -0
- pydantic_ai/profiles/anthropic.py +8 -0
- pydantic_ai/profiles/cohere.py +8 -0
- pydantic_ai/profiles/deepseek.py +8 -0
- pydantic_ai/profiles/google.py +100 -0
- pydantic_ai/profiles/grok.py +8 -0
- pydantic_ai/profiles/meta.py +9 -0
- pydantic_ai/profiles/mistral.py +8 -0
- pydantic_ai/profiles/openai.py +144 -0
- pydantic_ai/profiles/qwen.py +9 -0
- pydantic_ai/providers/__init__.py +18 -0
- pydantic_ai/providers/anthropic.py +5 -0
- pydantic_ai/providers/azure.py +34 -0
- pydantic_ai/providers/bedrock.py +60 -1
- pydantic_ai/providers/cohere.py +5 -0
- pydantic_ai/providers/deepseek.py +12 -0
- pydantic_ai/providers/fireworks.py +99 -0
- pydantic_ai/providers/google.py +5 -0
- pydantic_ai/providers/google_gla.py +5 -0
- pydantic_ai/providers/google_vertex.py +5 -0
- pydantic_ai/providers/grok.py +82 -0
- pydantic_ai/providers/groq.py +25 -0
- pydantic_ai/providers/mistral.py +5 -0
- pydantic_ai/providers/openai.py +5 -0
- pydantic_ai/providers/openrouter.py +36 -0
- pydantic_ai/providers/together.py +96 -0
- pydantic_ai/result.py +34 -103
- pydantic_ai/tools.py +29 -59
- {pydantic_ai_slim-0.2.11.dist-info → pydantic_ai_slim-0.2.13.dist-info}/METADATA +4 -4
- pydantic_ai_slim-0.2.13.dist-info/RECORD +73 -0
- pydantic_ai_slim-0.2.11.dist-info/RECORD +0 -59
- {pydantic_ai_slim-0.2.11.dist-info → pydantic_ai_slim-0.2.13.dist-info}/WHEEL +0 -0
- {pydantic_ai_slim-0.2.11.dist-info → pydantic_ai_slim-0.2.13.dist-info}/entry_points.txt +0 -0
- {pydantic_ai_slim-0.2.11.dist-info → pydantic_ai_slim-0.2.13.dist-info}/licenses/LICENSE +0 -0
pydantic_ai/tools.py
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
from __future__ import annotations as _annotations
|
|
2
2
|
|
|
3
3
|
import dataclasses
|
|
4
|
-
import inspect
|
|
5
4
|
import json
|
|
6
5
|
from collections.abc import Awaitable, Sequence
|
|
7
6
|
from dataclasses import dataclass, field
|
|
8
|
-
from typing import TYPE_CHECKING, Any, Callable, Generic, Literal, Union
|
|
7
|
+
from typing import TYPE_CHECKING, Any, Callable, Generic, Literal, Union
|
|
9
8
|
|
|
10
9
|
from opentelemetry.trace import Tracer
|
|
11
10
|
from pydantic import ValidationError
|
|
12
11
|
from pydantic.json_schema import GenerateJsonSchema, JsonSchemaValue
|
|
13
|
-
from pydantic_core import
|
|
12
|
+
from pydantic_core import core_schema
|
|
14
13
|
from typing_extensions import Concatenate, ParamSpec, TypeAlias, TypeVar
|
|
15
14
|
|
|
16
|
-
from . import
|
|
15
|
+
from . import _function_schema, _utils, messages as _messages
|
|
17
16
|
from .exceptions import ModelRetry, UnexpectedModelBehavior
|
|
18
17
|
|
|
19
18
|
if TYPE_CHECKING:
|
|
19
|
+
from .models import Model
|
|
20
20
|
from .result import Usage
|
|
21
21
|
|
|
22
22
|
__all__ = (
|
|
@@ -45,7 +45,7 @@ class RunContext(Generic[AgentDepsT]):
|
|
|
45
45
|
|
|
46
46
|
deps: AgentDepsT
|
|
47
47
|
"""Dependencies for the agent."""
|
|
48
|
-
model:
|
|
48
|
+
model: Model
|
|
49
49
|
"""The model used in this run."""
|
|
50
50
|
usage: Usage
|
|
51
51
|
"""LLM usage associated with the run."""
|
|
@@ -208,12 +208,7 @@ class Tool(Generic[AgentDepsT]):
|
|
|
208
208
|
docstring_format: DocstringFormat
|
|
209
209
|
require_parameter_descriptions: bool
|
|
210
210
|
strict: bool | None
|
|
211
|
-
|
|
212
|
-
_single_arg_name: str | None = field(init=False)
|
|
213
|
-
_positional_fields: list[str] = field(init=False)
|
|
214
|
-
_var_positional_field: str | None = field(init=False)
|
|
215
|
-
_validator: SchemaValidator = field(init=False, repr=False)
|
|
216
|
-
_base_parameters_json_schema: ObjectJsonSchema = field(init=False)
|
|
211
|
+
function_schema: _function_schema.FunctionSchema
|
|
217
212
|
"""
|
|
218
213
|
The base JSON schema for the tool's parameters.
|
|
219
214
|
|
|
@@ -237,6 +232,7 @@ class Tool(Generic[AgentDepsT]):
|
|
|
237
232
|
require_parameter_descriptions: bool = False,
|
|
238
233
|
schema_generator: type[GenerateJsonSchema] = GenerateToolJsonSchema,
|
|
239
234
|
strict: bool | None = None,
|
|
235
|
+
function_schema: _function_schema.FunctionSchema | None = None,
|
|
240
236
|
):
|
|
241
237
|
"""Create a new tool instance.
|
|
242
238
|
|
|
@@ -289,28 +285,24 @@ class Tool(Generic[AgentDepsT]):
|
|
|
289
285
|
schema_generator: The JSON schema generator class to use. Defaults to `GenerateToolJsonSchema`.
|
|
290
286
|
strict: Whether to enforce JSON schema compliance (only affects OpenAI).
|
|
291
287
|
See [`ToolDefinition`][pydantic_ai.tools.ToolDefinition] for more info.
|
|
288
|
+
function_schema: The function schema to use for the tool. If not provided, it will be generated.
|
|
292
289
|
"""
|
|
293
|
-
if takes_ctx is None:
|
|
294
|
-
takes_ctx = _pydantic.takes_ctx(function)
|
|
295
|
-
|
|
296
|
-
f = _pydantic.function_schema(
|
|
297
|
-
function, takes_ctx, docstring_format, require_parameter_descriptions, schema_generator
|
|
298
|
-
)
|
|
299
290
|
self.function = function
|
|
300
|
-
self.
|
|
291
|
+
self.function_schema = function_schema or _function_schema.function_schema(
|
|
292
|
+
function,
|
|
293
|
+
schema_generator,
|
|
294
|
+
takes_ctx=takes_ctx,
|
|
295
|
+
docstring_format=docstring_format,
|
|
296
|
+
require_parameter_descriptions=require_parameter_descriptions,
|
|
297
|
+
)
|
|
298
|
+
self.takes_ctx = self.function_schema.takes_ctx
|
|
301
299
|
self.max_retries = max_retries
|
|
302
300
|
self.name = name or function.__name__
|
|
303
|
-
self.description = description or
|
|
301
|
+
self.description = description or self.function_schema.description
|
|
304
302
|
self.prepare = prepare
|
|
305
303
|
self.docstring_format = docstring_format
|
|
306
304
|
self.require_parameter_descriptions = require_parameter_descriptions
|
|
307
305
|
self.strict = strict
|
|
308
|
-
self._is_async = inspect.iscoroutinefunction(self.function)
|
|
309
|
-
self._single_arg_name = f['single_arg_name']
|
|
310
|
-
self._positional_fields = f['positional_fields']
|
|
311
|
-
self._var_positional_field = f['var_positional_field']
|
|
312
|
-
self._validator = f['validator']
|
|
313
|
-
self._base_parameters_json_schema = f['json_schema']
|
|
314
306
|
|
|
315
307
|
async def prepare_tool_def(self, ctx: RunContext[AgentDepsT]) -> ToolDefinition | None:
|
|
316
308
|
"""Get the tool definition.
|
|
@@ -324,7 +316,7 @@ class Tool(Generic[AgentDepsT]):
|
|
|
324
316
|
tool_def = ToolDefinition(
|
|
325
317
|
name=self.name,
|
|
326
318
|
description=self.description,
|
|
327
|
-
parameters_json_schema=self.
|
|
319
|
+
parameters_json_schema=self.function_schema.json_schema,
|
|
328
320
|
strict=self.strict,
|
|
329
321
|
)
|
|
330
322
|
if self.prepare is not None:
|
|
@@ -366,21 +358,22 @@ class Tool(Generic[AgentDepsT]):
|
|
|
366
358
|
self, message: _messages.ToolCallPart, run_context: RunContext[AgentDepsT]
|
|
367
359
|
) -> _messages.ToolReturnPart | _messages.RetryPromptPart:
|
|
368
360
|
try:
|
|
361
|
+
validator = self.function_schema.validator
|
|
369
362
|
if isinstance(message.args, str):
|
|
370
|
-
args_dict =
|
|
363
|
+
args_dict = validator.validate_json(message.args or '{}')
|
|
371
364
|
else:
|
|
372
|
-
args_dict =
|
|
365
|
+
args_dict = validator.validate_python(message.args or {})
|
|
373
366
|
except ValidationError as e:
|
|
374
367
|
return self._on_error(e, message)
|
|
375
368
|
|
|
376
|
-
|
|
369
|
+
ctx = dataclasses.replace(
|
|
370
|
+
run_context,
|
|
371
|
+
retry=self.current_retry,
|
|
372
|
+
tool_name=message.tool_name,
|
|
373
|
+
tool_call_id=message.tool_call_id,
|
|
374
|
+
)
|
|
377
375
|
try:
|
|
378
|
-
|
|
379
|
-
function = cast(Callable[[Any], Awaitable[str]], self.function)
|
|
380
|
-
response_content = await function(*args, **kwargs)
|
|
381
|
-
else:
|
|
382
|
-
function = cast(Callable[[Any], str], self.function)
|
|
383
|
-
response_content = await _utils.run_in_executor(function, *args, **kwargs)
|
|
376
|
+
response_content = await self.function_schema.call(args_dict, ctx)
|
|
384
377
|
except ModelRetry as e:
|
|
385
378
|
return self._on_error(e, message)
|
|
386
379
|
|
|
@@ -391,29 +384,6 @@ class Tool(Generic[AgentDepsT]):
|
|
|
391
384
|
tool_call_id=message.tool_call_id,
|
|
392
385
|
)
|
|
393
386
|
|
|
394
|
-
def _call_args(
|
|
395
|
-
self,
|
|
396
|
-
args_dict: dict[str, Any],
|
|
397
|
-
message: _messages.ToolCallPart,
|
|
398
|
-
run_context: RunContext[AgentDepsT],
|
|
399
|
-
) -> tuple[list[Any], dict[str, Any]]:
|
|
400
|
-
if self._single_arg_name:
|
|
401
|
-
args_dict = {self._single_arg_name: args_dict}
|
|
402
|
-
|
|
403
|
-
ctx = dataclasses.replace(
|
|
404
|
-
run_context,
|
|
405
|
-
retry=self.current_retry,
|
|
406
|
-
tool_name=message.tool_name,
|
|
407
|
-
tool_call_id=message.tool_call_id,
|
|
408
|
-
)
|
|
409
|
-
args = [ctx] if self.takes_ctx else []
|
|
410
|
-
for positional_field in self._positional_fields:
|
|
411
|
-
args.append(args_dict.pop(positional_field)) # pragma: no cover
|
|
412
|
-
if self._var_positional_field:
|
|
413
|
-
args.extend(args_dict.pop(self._var_positional_field))
|
|
414
|
-
|
|
415
|
-
return args, args_dict
|
|
416
|
-
|
|
417
387
|
def _on_error(
|
|
418
388
|
self, exc: ValidationError | ModelRetry, call_message: _messages.ToolCallPart
|
|
419
389
|
) -> _messages.RetryPromptPart:
|
|
@@ -422,7 +392,7 @@ class Tool(Generic[AgentDepsT]):
|
|
|
422
392
|
raise UnexpectedModelBehavior(f'Tool exceeded max retries count of {self.max_retries}') from exc
|
|
423
393
|
else:
|
|
424
394
|
if isinstance(exc, ValidationError):
|
|
425
|
-
content = exc.errors(include_url=False)
|
|
395
|
+
content = exc.errors(include_url=False, include_context=False)
|
|
426
396
|
else:
|
|
427
397
|
content = exc.message
|
|
428
398
|
return _messages.RetryPromptPart(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pydantic-ai-slim
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.13
|
|
4
4
|
Summary: Agent Framework / shim to use Pydantic with LLMs, slim package
|
|
5
5
|
Author-email: Samuel Colvin <samuel@pydantic.dev>, Marcelo Trylesinski <marcelotryle@gmail.com>, David Montague <david@pydantic.dev>, Alex Hall <alex@pydantic.dev>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -30,11 +30,11 @@ Requires-Dist: exceptiongroup; python_version < '3.11'
|
|
|
30
30
|
Requires-Dist: griffe>=1.3.2
|
|
31
31
|
Requires-Dist: httpx>=0.27
|
|
32
32
|
Requires-Dist: opentelemetry-api>=1.28.0
|
|
33
|
-
Requires-Dist: pydantic-graph==0.2.
|
|
33
|
+
Requires-Dist: pydantic-graph==0.2.13
|
|
34
34
|
Requires-Dist: pydantic>=2.10
|
|
35
35
|
Requires-Dist: typing-inspection>=0.4.0
|
|
36
36
|
Provides-Extra: a2a
|
|
37
|
-
Requires-Dist: fasta2a==0.2.
|
|
37
|
+
Requires-Dist: fasta2a==0.2.13; extra == 'a2a'
|
|
38
38
|
Provides-Extra: anthropic
|
|
39
39
|
Requires-Dist: anthropic>=0.52.0; extra == 'anthropic'
|
|
40
40
|
Provides-Extra: bedrock
|
|
@@ -48,7 +48,7 @@ Requires-Dist: cohere>=5.13.11; (platform_system != 'Emscripten') and extra == '
|
|
|
48
48
|
Provides-Extra: duckduckgo
|
|
49
49
|
Requires-Dist: duckduckgo-search>=7.0.0; extra == 'duckduckgo'
|
|
50
50
|
Provides-Extra: evals
|
|
51
|
-
Requires-Dist: pydantic-evals==0.2.
|
|
51
|
+
Requires-Dist: pydantic-evals==0.2.13; extra == 'evals'
|
|
52
52
|
Provides-Extra: google
|
|
53
53
|
Requires-Dist: google-genai>=1.15.0; extra == 'google'
|
|
54
54
|
Provides-Extra: groq
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
pydantic_ai/__init__.py,sha256=5flxyMQJVrHRMQ3MYaZf1el2ctNs0JmPClKbw2Q-Lsk,1160
|
|
2
|
+
pydantic_ai/__main__.py,sha256=Q_zJU15DUA01YtlJ2mnaLCoId2YmgmreVEERGuQT-Y0,132
|
|
3
|
+
pydantic_ai/_a2a.py,sha256=8nNtx6GENDt2Ej3f1ui9L-FuNQBYVELpJFfwz-y7fUw,7234
|
|
4
|
+
pydantic_ai/_agent_graph.py,sha256=_7iJLLpOwCqViTE2BGTZfI42zdmsz7QPhgP0hdclsvg,36251
|
|
5
|
+
pydantic_ai/_cli.py,sha256=kc9UxGjYsKK0IR4No-V5BGiAtq2fY6eZZ9rBkAdHWOM,12948
|
|
6
|
+
pydantic_ai/_function_schema.py,sha256=Ciah-kyw-QiMeM8PtIe4DhOAlmyCZf98D1U0FIdl930,10563
|
|
7
|
+
pydantic_ai/_griffe.py,sha256=Sf_DisE9k2TA0VFeVIK2nf1oOct5MygW86PBCACJkFA,5244
|
|
8
|
+
pydantic_ai/_output.py,sha256=MxonK-JPfgSw1nboIQMlnGb5WloTX8WkI9gcWAeCiPI,16798
|
|
9
|
+
pydantic_ai/_parts_manager.py,sha256=c0Gj29FH8K20AmxIr7MY8_SQVdb7SRIRcJYTQVmVYgc,12204
|
|
10
|
+
pydantic_ai/_system_prompt.py,sha256=602c2jyle2R_SesOrITBDETZqsLk4BZ8Cbo8yEhmx04,1120
|
|
11
|
+
pydantic_ai/_utils.py,sha256=XfZ7mZmrv5ZsU3DwjwLXwmbVNTQrgX_kIL9SIfatg90,10456
|
|
12
|
+
pydantic_ai/agent.py,sha256=1j3Wkk-wgJQWhaIFiOqc2uvQ2ISqMFoTdoG_8m2faHk,93558
|
|
13
|
+
pydantic_ai/direct.py,sha256=tXRcQ3fMkykaawO51VxnSwQnqcEmu1LhCy7U9gOyM-g,7768
|
|
14
|
+
pydantic_ai/exceptions.py,sha256=IdFw594Ou7Vn4YFa7xdZ040_j_6nmyA3MPANbC7sys4,3175
|
|
15
|
+
pydantic_ai/format_as_xml.py,sha256=IINfh1evWDphGahqHNLBArB5dQ4NIqS3S-kru35ztGg,372
|
|
16
|
+
pydantic_ai/format_prompt.py,sha256=qdKep95Sjlr7u1-qag4JwPbjoURbG0GbeU_l5ODTNw4,4466
|
|
17
|
+
pydantic_ai/mcp.py,sha256=QriH7D-DBSr7FyAMUqSLBahv57M3Nl-YRNKlJlHNX0k,13955
|
|
18
|
+
pydantic_ai/messages.py,sha256=K5zHLOgTLCr2AlqPYA_-WyDJ9B-rAvSiylATbzvZSfc,32410
|
|
19
|
+
pydantic_ai/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
20
|
+
pydantic_ai/result.py,sha256=YlcR0QAQIejz3fbZ50zYfHKIZco0dwmnZTxytV-n3oM,24609
|
|
21
|
+
pydantic_ai/settings.py,sha256=U2XzZ9y1fIi_L6yCGTugZRxfk7_01rk5GKSgFqySHL4,3520
|
|
22
|
+
pydantic_ai/tools.py,sha256=a6sZv_YcGYbc2A9mhnlR0UoQp9Mt-uSrwbvfhat6mbw,16867
|
|
23
|
+
pydantic_ai/usage.py,sha256=35YPmItlzfNOwP35Rhh0qBUOlg5On5rUE7xqHQWrpaU,5596
|
|
24
|
+
pydantic_ai/common_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
25
|
+
pydantic_ai/common_tools/duckduckgo.py,sha256=Ty9tu1rCwMfGKgz1JAaC2q_4esmL6QvpkHQUN8F0Ecc,2152
|
|
26
|
+
pydantic_ai/common_tools/tavily.py,sha256=Q1xxSF5HtXAaZ10Pp-OaDOHXwJf2mco9wScGEQXD7E4,2495
|
|
27
|
+
pydantic_ai/models/__init__.py,sha256=M_KXHIFCCVGYr52Rc0xe-uQOMuLJC1AC1Zmj0H9JB00,24725
|
|
28
|
+
pydantic_ai/models/anthropic.py,sha256=2R4VpnuXyM1WPB4vV2Ssl7urPwD1IiOAbVJDWplJ0Wc,21201
|
|
29
|
+
pydantic_ai/models/bedrock.py,sha256=Y_JMGe09JlFrfS2U3m39EGLViFbJ_WSMljZCQpxSuEI,27519
|
|
30
|
+
pydantic_ai/models/cohere.py,sha256=bQLTQguqVXkzkPgWmMncrxApO9CQ7YtgrmFwa057g7g,12116
|
|
31
|
+
pydantic_ai/models/fallback.py,sha256=idOYGMo3CZzpCBT8DDiuPAAgnV2jzluDUq3ESb3KteM,4981
|
|
32
|
+
pydantic_ai/models/function.py,sha256=rnihsyakyieCGbEyxfqzvoBHnR_3LJn4x6DXQqdAAM4,11458
|
|
33
|
+
pydantic_ai/models/gemini.py,sha256=27y4JPGU0EJzGpYZpv6WlAYzHdW_1oD4fRISjoQMKW0,35823
|
|
34
|
+
pydantic_ai/models/google.py,sha256=6aHUz5lnzA2cxAhF5l9ff5vx0ubtdIUsjHVUyKFjjCM,20991
|
|
35
|
+
pydantic_ai/models/groq.py,sha256=MVJO8DQbgO7NlRA898hTdFnKz1Y42c31u8BDoYDxGIg,17848
|
|
36
|
+
pydantic_ai/models/instrumented.py,sha256=Y3SxAlP9cCX_Ch02c8qN9mrWMY9_tuyj6zMeN5Gz-W0,12356
|
|
37
|
+
pydantic_ai/models/mistral.py,sha256=pTywq_QCjjAlRC5uTQ9DQeONH0Fsc1cYUVku9BW21Wk,29614
|
|
38
|
+
pydantic_ai/models/openai.py,sha256=tsuHg-Rywlv9LtnW3Wad6W1pr4Ogr-pca2q14ZhTiPU,44556
|
|
39
|
+
pydantic_ai/models/test.py,sha256=Jlq-YQ9dhzENgmBMVerZpM4L-I2aPf7HH7ifIncyDlE,17010
|
|
40
|
+
pydantic_ai/models/wrapper.py,sha256=43ntRkTF7rVBYLC-Ihdo1fkwpeveOpA_1fXe1fd3W9Y,1690
|
|
41
|
+
pydantic_ai/profiles/__init__.py,sha256=uO_f1kSqrnXuO0x5U0EHTTMRYcmOiOoa-tS1OZppxBk,1426
|
|
42
|
+
pydantic_ai/profiles/_json_schema.py,sha256=3ofRGnBca9WzqlUbw0C1ywhv_V7eGTmFAf2O7Bs5zgk,7199
|
|
43
|
+
pydantic_ai/profiles/amazon.py,sha256=O4ijm1Lpz01vaSiHrkSeGQhbCKV5lyQVtHYqh0pCW_k,339
|
|
44
|
+
pydantic_ai/profiles/anthropic.py,sha256=DtTGh85tbkTrrrn2OrJ4FJKXWUIxUH_1Vw6y5fyMRyM,222
|
|
45
|
+
pydantic_ai/profiles/cohere.py,sha256=lcL34Ht1jZopwuqoU6OV9l8vN4zwF-jiPjlsEABbSRo,215
|
|
46
|
+
pydantic_ai/profiles/deepseek.py,sha256=DS_idprnXpMliKziKF0k1neLDJOwUvpatZ3YLaiYnCM,219
|
|
47
|
+
pydantic_ai/profiles/google.py,sha256=TL8WxCuFKQ7FZnDQpBYvtd26_qOwPDpLfDeTdAOdrBE,4812
|
|
48
|
+
pydantic_ai/profiles/grok.py,sha256=nBOxOCYCK9aiLmz2Q-esqYhotNbbBC1boAoOYIk1tVw,211
|
|
49
|
+
pydantic_ai/profiles/meta.py,sha256=IAGPoUrLWd-g9ajAgpWp9fIeOrP-7dBlZ2HEFjIhUbY,334
|
|
50
|
+
pydantic_ai/profiles/mistral.py,sha256=ll01PmcK3szwlTfbaJLQmfd0TADN8lqjov9HpPJzCMQ,217
|
|
51
|
+
pydantic_ai/profiles/openai.py,sha256=6fRJxA-m196OfzfhG3_2zdZl2plwW0kBNUbQorJUSSE,5459
|
|
52
|
+
pydantic_ai/profiles/qwen.py,sha256=u7pL8uomoQTVl45g5wDrHx0P_oFDLaN6ALswuwmkWc0,334
|
|
53
|
+
pydantic_ai/providers/__init__.py,sha256=N2rneMydEhq6BbcCxvza1Sv_cdh9HFyNQkjlaiyU6zA,3252
|
|
54
|
+
pydantic_ai/providers/anthropic.py,sha256=D35UXxCPXv8yIbD0fj9Zg2FvNyoMoJMeDUtVM8Sn78I,3046
|
|
55
|
+
pydantic_ai/providers/azure.py,sha256=y77IHGiSQ9Ttx9f4SGMgdpin2Daq6eYyzUdM9ET22RQ,5819
|
|
56
|
+
pydantic_ai/providers/bedrock.py,sha256=ycdTXnkj_WNqPMA7DNDPeYia0C37FP0_l0CygSQmWYI,5694
|
|
57
|
+
pydantic_ai/providers/cohere.py,sha256=LT6QaLPJBBlFUgYgXQOfKpbM9SXLzorWFxI7jNfOX_4,2892
|
|
58
|
+
pydantic_ai/providers/deepseek.py,sha256=kUdM8eVp1lse4bS_uy70Gy7wgog94NTZ36GY-vhSB50,3060
|
|
59
|
+
pydantic_ai/providers/fireworks.py,sha256=TPbqOpNgXG59qovBaHWbbV2vsvROwlHwQ3PvqHUBH-s,3626
|
|
60
|
+
pydantic_ai/providers/google.py,sha256=3thJwFxJi5R21LuAGhSBYIwmThZ3Bk-6DOCaVhHLDto,5380
|
|
61
|
+
pydantic_ai/providers/google_gla.py,sha256=BCF5_6EVtpkCZ6qIDuvgY1Qa9EirS71l51CBqPqk4C4,1825
|
|
62
|
+
pydantic_ai/providers/google_vertex.py,sha256=NZKMaTQqiopyU4fYJ2WN09GAupPU-g4iKXz82DwQ3zg,9422
|
|
63
|
+
pydantic_ai/providers/grok.py,sha256=mtlx7KP6xEDrDnYR1pmuT61wjUlYbCJNASNCDfVGQ5A,2912
|
|
64
|
+
pydantic_ai/providers/groq.py,sha256=LcD0vXiZhWOsMatz0yKzt9NCIAw6H7OhJsQ5GPDqL44,3835
|
|
65
|
+
pydantic_ai/providers/mistral.py,sha256=EIUSENjFuGzBhvbdrarUTM4VPkesIMnZrzfnEKHOsc4,3120
|
|
66
|
+
pydantic_ai/providers/openai.py,sha256=7iGij0EaFylab7dTZAZDgXr78tr-HsZrn9EI9AkWBNQ,3091
|
|
67
|
+
pydantic_ai/providers/openrouter.py,sha256=NXjNdnlXIBrBMMqbzcWQnowXOuZh4NHikXenBn5h3mc,4061
|
|
68
|
+
pydantic_ai/providers/together.py,sha256=zFVSMSm5jXbpkNouvBOTjWrPmlPpCp6sQS5LMSyVjrQ,3482
|
|
69
|
+
pydantic_ai_slim-0.2.13.dist-info/METADATA,sha256=Lvl-Ez42y8jr_iHjI7XvkOd5WYCGNVTREgnh699XV8k,3850
|
|
70
|
+
pydantic_ai_slim-0.2.13.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
71
|
+
pydantic_ai_slim-0.2.13.dist-info/entry_points.txt,sha256=kbKxe2VtDCYS06hsI7P3uZGxcVC08-FPt1rxeiMpIps,50
|
|
72
|
+
pydantic_ai_slim-0.2.13.dist-info/licenses/LICENSE,sha256=vA6Jc482lEyBBuGUfD1pYx-cM7jxvLYOxPidZ30t_PQ,1100
|
|
73
|
+
pydantic_ai_slim-0.2.13.dist-info/RECORD,,
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
pydantic_ai/__init__.py,sha256=5flxyMQJVrHRMQ3MYaZf1el2ctNs0JmPClKbw2Q-Lsk,1160
|
|
2
|
-
pydantic_ai/__main__.py,sha256=Q_zJU15DUA01YtlJ2mnaLCoId2YmgmreVEERGuQT-Y0,132
|
|
3
|
-
pydantic_ai/_a2a.py,sha256=8nNtx6GENDt2Ej3f1ui9L-FuNQBYVELpJFfwz-y7fUw,7234
|
|
4
|
-
pydantic_ai/_agent_graph.py,sha256=vabNuwWnJlvmLls8RkOgoda9T-kb_xf5TnzIgk-DeBI,36516
|
|
5
|
-
pydantic_ai/_cli.py,sha256=kc9UxGjYsKK0IR4No-V5BGiAtq2fY6eZZ9rBkAdHWOM,12948
|
|
6
|
-
pydantic_ai/_griffe.py,sha256=Sf_DisE9k2TA0VFeVIK2nf1oOct5MygW86PBCACJkFA,5244
|
|
7
|
-
pydantic_ai/_output.py,sha256=fJ3xyaIUf7R_QmYQaTZLqNBbZdVgzFTYsS2NxyqsybI,11447
|
|
8
|
-
pydantic_ai/_parts_manager.py,sha256=c0Gj29FH8K20AmxIr7MY8_SQVdb7SRIRcJYTQVmVYgc,12204
|
|
9
|
-
pydantic_ai/_pydantic.py,sha256=Dz9pVp-mcxBtIUK6TnfSZIAVXdsB1JKErZsINgX8Fpk,9161
|
|
10
|
-
pydantic_ai/_system_prompt.py,sha256=602c2jyle2R_SesOrITBDETZqsLk4BZ8Cbo8yEhmx04,1120
|
|
11
|
-
pydantic_ai/_utils.py,sha256=XfZ7mZmrv5ZsU3DwjwLXwmbVNTQrgX_kIL9SIfatg90,10456
|
|
12
|
-
pydantic_ai/agent.py,sha256=gz_AFp5dO2xSbf9ej-jTNLa6-LZFV_JCWeRwA4Kq0tc,93721
|
|
13
|
-
pydantic_ai/direct.py,sha256=tXRcQ3fMkykaawO51VxnSwQnqcEmu1LhCy7U9gOyM-g,7768
|
|
14
|
-
pydantic_ai/exceptions.py,sha256=IdFw594Ou7Vn4YFa7xdZ040_j_6nmyA3MPANbC7sys4,3175
|
|
15
|
-
pydantic_ai/format_as_xml.py,sha256=IINfh1evWDphGahqHNLBArB5dQ4NIqS3S-kru35ztGg,372
|
|
16
|
-
pydantic_ai/format_prompt.py,sha256=qdKep95Sjlr7u1-qag4JwPbjoURbG0GbeU_l5ODTNw4,4466
|
|
17
|
-
pydantic_ai/mcp.py,sha256=otT4TICJYgZEYIjIaWEwz5AjMArH79BPGdO0qIPmV2g,13947
|
|
18
|
-
pydantic_ai/messages.py,sha256=jJUh10-NGp58YkiTrKUUzffmd7JC2w2HXUlKWVhbGUM,32442
|
|
19
|
-
pydantic_ai/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
20
|
-
pydantic_ai/result.py,sha256=un7AHAY3Rtqh1naSacZiTcrPgDGYo1vvAGlW7-95EO8,27825
|
|
21
|
-
pydantic_ai/settings.py,sha256=U2XzZ9y1fIi_L6yCGTugZRxfk7_01rk5GKSgFqySHL4,3520
|
|
22
|
-
pydantic_ai/tools.py,sha256=UspUFXFa54ohFX5FNEN34cMTObqkCSN6gXOrKizm5C0,18124
|
|
23
|
-
pydantic_ai/usage.py,sha256=35YPmItlzfNOwP35Rhh0qBUOlg5On5rUE7xqHQWrpaU,5596
|
|
24
|
-
pydantic_ai/common_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
25
|
-
pydantic_ai/common_tools/duckduckgo.py,sha256=Ty9tu1rCwMfGKgz1JAaC2q_4esmL6QvpkHQUN8F0Ecc,2152
|
|
26
|
-
pydantic_ai/common_tools/tavily.py,sha256=Q1xxSF5HtXAaZ10Pp-OaDOHXwJf2mco9wScGEQXD7E4,2495
|
|
27
|
-
pydantic_ai/models/__init__.py,sha256=oqyIvNEwwoRmsBXYzFdxN6PVauOvVcKa4sU1lm711eQ,23154
|
|
28
|
-
pydantic_ai/models/_json_schema.py,sha256=RD0cIU9mOGIdRuhkjLtPdlwfmF8XDOP1kLevIOLudaE,6540
|
|
29
|
-
pydantic_ai/models/anthropic.py,sha256=M_ydokBaUOxlhYWalnU6ROpva-YrMNEliYGCmK13Jd4,20937
|
|
30
|
-
pydantic_ai/models/bedrock.py,sha256=mv-NFtnbaXS4NyGgLjExItrD6Hcu-8gHh1wVu2a-gZQ,26369
|
|
31
|
-
pydantic_ai/models/cohere.py,sha256=a9dxjrH5StfvPP5CTituQsOhujO2KPHD6JOGpsx1E9o,11852
|
|
32
|
-
pydantic_ai/models/fallback.py,sha256=idOYGMo3CZzpCBT8DDiuPAAgnV2jzluDUq3ESb3KteM,4981
|
|
33
|
-
pydantic_ai/models/function.py,sha256=rnihsyakyieCGbEyxfqzvoBHnR_3LJn4x6DXQqdAAM4,11458
|
|
34
|
-
pydantic_ai/models/gemini.py,sha256=xG15g65r_kSqMC8Hg1yJSIem2uBEz7hKV8KEdPnzeR4,37870
|
|
35
|
-
pydantic_ai/models/google.py,sha256=I18u5MZ9sYxRm88vSJf3XwcziuDmljuBazfajYAF4LU,24523
|
|
36
|
-
pydantic_ai/models/groq.py,sha256=px2C3oW6Yvrk695E0dzDzDRUav6XiwkjyJvjro4Tb9M,17520
|
|
37
|
-
pydantic_ai/models/instrumented.py,sha256=Y3SxAlP9cCX_Ch02c8qN9mrWMY9_tuyj6zMeN5Gz-W0,12356
|
|
38
|
-
pydantic_ai/models/mistral.py,sha256=h24_VwAx2iaAN8FHW9W72U6y5YyhYm1X9XK5rIQvTGI,29350
|
|
39
|
-
pydantic_ai/models/openai.py,sha256=YEn9D-bhU-iOdyeB6vQoEnKaM_OK8uXCq45JyyOsLL8,49774
|
|
40
|
-
pydantic_ai/models/test.py,sha256=Jlq-YQ9dhzENgmBMVerZpM4L-I2aPf7HH7ifIncyDlE,17010
|
|
41
|
-
pydantic_ai/models/wrapper.py,sha256=43ntRkTF7rVBYLC-Ihdo1fkwpeveOpA_1fXe1fd3W9Y,1690
|
|
42
|
-
pydantic_ai/providers/__init__.py,sha256=mBRULL9WaiGAgjKGY5aPQ7KatYoIOhkHSJJ3DkP6jvE,2695
|
|
43
|
-
pydantic_ai/providers/anthropic.py,sha256=0WzWEDseBaJ5eyEatvnDXBtDZKA9-od4BuPZn9NoTPw,2812
|
|
44
|
-
pydantic_ai/providers/azure.py,sha256=6liJWEgz5uHN1xkDG3J7aiMjL_twWuW7h51-RC3cLvo,4205
|
|
45
|
-
pydantic_ai/providers/bedrock.py,sha256=fHw3wF0qq-y0BmWfCxAX9ezQGAgeSkOtYyIS7-nT7bo,3454
|
|
46
|
-
pydantic_ai/providers/cohere.py,sha256=WOFZCllgVbWciF4nNkG3pCqw4poy57VEGyux2mVntbQ,2667
|
|
47
|
-
pydantic_ai/providers/deepseek.py,sha256=_5JPzDGWsyVyTBX-yYYdy5aZwUOWNCVgoWI-UoBamms,2193
|
|
48
|
-
pydantic_ai/providers/google.py,sha256=8YgEdOz4VfiSN8wMGpKWq8PsvK8u8PtvwfENsUfrp3c,5155
|
|
49
|
-
pydantic_ai/providers/google_gla.py,sha256=MJM7aRZRdP4kFlNg0ZHgC95O0wH02OQgbNiDQeK9fZo,1600
|
|
50
|
-
pydantic_ai/providers/google_vertex.py,sha256=tvokVpZvR-3DIRkyEsEYy6wZMlCKQVmUKpoSk3r3_fI,9197
|
|
51
|
-
pydantic_ai/providers/groq.py,sha256=DoY6qkfhuemuKB5JXhUkqG-3t1HQkxwSXoE_kHQIAK0,2788
|
|
52
|
-
pydantic_ai/providers/mistral.py,sha256=FAS7yKn26yWy7LTmEiBSvqe0HpTXi8_nIf824vE6RFQ,2892
|
|
53
|
-
pydantic_ai/providers/openai.py,sha256=ePF-QWwLkGkSE5w245gTTDVR3VoTIUqFoIhQ0TAoUiA,2866
|
|
54
|
-
pydantic_ai/providers/openrouter.py,sha256=ZwlpGjrHFqZefohdGJGL6MQiLOGKwu6kOCHziymJA_E,2215
|
|
55
|
-
pydantic_ai_slim-0.2.11.dist-info/METADATA,sha256=qqpqGBuO3FwitQ_kXw5H0lLx1IQzMEDPZnVS-9K0Uqc,3850
|
|
56
|
-
pydantic_ai_slim-0.2.11.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
57
|
-
pydantic_ai_slim-0.2.11.dist-info/entry_points.txt,sha256=kbKxe2VtDCYS06hsI7P3uZGxcVC08-FPt1rxeiMpIps,50
|
|
58
|
-
pydantic_ai_slim-0.2.11.dist-info/licenses/LICENSE,sha256=vA6Jc482lEyBBuGUfD1pYx-cM7jxvLYOxPidZ30t_PQ,1100
|
|
59
|
-
pydantic_ai_slim-0.2.11.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|