pydantic-ai 0.8.1__tar.gz → 1.0.0b1__tar.gz

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 might be problematic. Click here for more details.

Files changed (400) hide show
  1. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/Makefile +2 -4
  2. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/PKG-INFO +4 -7
  3. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/pyproject.toml +6 -8
  4. pydantic_ai-1.0.0b1/tests/cassettes/test_temporal/test_temporal_agent_with_hitl_tool.yaml +249 -0
  5. pydantic_ai-1.0.0b1/tests/cassettes/test_temporal/test_temporal_agent_with_model_retry.yaml +335 -0
  6. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/conftest.py +2 -3
  7. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_dataset.py +437 -193
  8. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_evaluator_base.py +3 -1
  9. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_evaluators.py +17 -7
  10. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_reporting.py +474 -0
  11. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_reports.py +1 -0
  12. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_utils.py +2 -1
  13. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/ext/test_langchain.py +11 -11
  14. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/graph/test_file_persistence.py +0 -1
  15. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/graph/test_mermaid.py +3 -3
  16. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_model_names/test_known_model_names.yaml +7 -41
  17. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/mock_openai.py +5 -6
  18. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_anthropic.py +4 -5
  19. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_cohere.py +2 -3
  20. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_download_item.py +1 -3
  21. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_fallback.py +85 -17
  22. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_gemini.py +1 -2
  23. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_gemini_vertex.py +1 -2
  24. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_groq.py +3 -4
  25. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_huggingface.py +3 -3
  26. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_instrumented.py +54 -13
  27. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_mistral.py +3 -4
  28. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_model_names.py +6 -4
  29. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_openai.py +4 -4
  30. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_google_vertex.py +0 -3
  31. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_agent.py +232 -69
  32. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_cli.py +2 -1
  33. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_examples.py +72 -23
  34. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_live.py +1 -2
  35. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_logfire.py +108 -96
  36. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_streaming.py +164 -43
  37. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_temporal.py +333 -8
  38. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_tools.py +481 -80
  39. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/typed_agent.py +14 -14
  40. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/.gitignore +0 -0
  41. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/LICENSE +0 -0
  42. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/README.md +0 -0
  43. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/__init__.py +0 -0
  44. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/assets/dummy.pdf +0 -0
  45. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/assets/kiwi.png +0 -0
  46. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/assets/marcelo.mp3 +0 -0
  47. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/assets/product_name.txt +0 -0
  48. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/assets/small_video.mp4 +0 -0
  49. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_agent_with_server_not_running.yaml +0 -0
  50. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_agent_with_stdio_server.yaml +0 -0
  51. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_audio_resource.yaml +0 -0
  52. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_audio_resource_link.yaml +0 -0
  53. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_dict.yaml +0 -0
  54. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_error.yaml +0 -0
  55. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_image.yaml +0 -0
  56. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_image_resource.yaml +0 -0
  57. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_image_resource_link.yaml +0 -0
  58. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_multiple_items.yaml +0 -0
  59. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_none.yaml +0 -0
  60. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_str.yaml +0 -0
  61. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_text_resource.yaml +0 -0
  62. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_mcp/test_tool_returning_text_resource_link.yaml +0 -0
  63. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_settings/test_stop_settings[anthropic].yaml +0 -0
  64. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_settings/test_stop_settings[bedrock].yaml +0 -0
  65. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_settings/test_stop_settings[cohere].yaml +0 -0
  66. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_settings/test_stop_settings[gemini].yaml +0 -0
  67. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_settings/test_stop_settings[google].yaml +0 -0
  68. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_settings/test_stop_settings[groq].yaml +0 -0
  69. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_settings/test_stop_settings[mistral].yaml +0 -0
  70. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_settings/test_stop_settings[openai].yaml +0 -0
  71. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_complex_agent_run.yaml +0 -0
  72. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_complex_agent_run_in_workflow.yaml +0 -0
  73. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_complex_agent_run_stream_in_workflow.yaml +0 -0
  74. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_logfire_plugin.yaml +0 -0
  75. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_multiple_agents.yaml +0 -0
  76. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_simple_agent_run_in_workflow.yaml +0 -0
  77. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_temporal_agent_iter.yaml +0 -0
  78. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_temporal_agent_override_deps_in_workflow.yaml +0 -0
  79. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_temporal_agent_run.yaml +0 -0
  80. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_temporal_agent_run_stream.yaml +0 -0
  81. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_temporal_agent_run_sync.yaml +0 -0
  82. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_temporal_agent_sync_tool_activity_disabled.yaml +0 -0
  83. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_temporal_agent_with_dataclass_deps_as_dict.yaml +0 -0
  84. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_temporal_agent_with_non_dict_deps.yaml +0 -0
  85. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/cassettes/test_temporal/test_temporal_agent_with_unserializable_deps_type.yaml +0 -0
  86. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/__init__.py +0 -0
  87. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_evaluator_common.py +0 -0
  88. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_evaluator_context.py +0 -0
  89. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_evaluator_spec.py +0 -0
  90. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_llm_as_a_judge.py +0 -0
  91. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_otel.py +0 -0
  92. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/test_render_numbers.py +0 -0
  93. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/evals/utils.py +0 -0
  94. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/example_modules/README.md +0 -0
  95. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/example_modules/bank_database.py +0 -0
  96. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/example_modules/fake_database.py +0 -0
  97. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/example_modules/mcp_server.py +0 -0
  98. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/example_modules/weather_service.py +0 -0
  99. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/ext/__init__.py +0 -0
  100. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/graph/__init__.py +0 -0
  101. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/graph/test_graph.py +0 -0
  102. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/graph/test_persistence.py +0 -0
  103. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/graph/test_state.py +0 -0
  104. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/graph/test_utils.py +0 -0
  105. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/import_examples.py +0 -0
  106. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/json_body_serializer.py +0 -0
  107. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/mcp_server.py +0 -0
  108. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/__init__.py +0 -0
  109. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_code_execution_tool.yaml +0 -0
  110. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_model_empty_message_on_history.yaml +0 -0
  111. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_model_instructions.yaml +0 -0
  112. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_model_thinking_part.yaml +0 -0
  113. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_model_thinking_part_stream.yaml +0 -0
  114. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_prompted_output.yaml +0 -0
  115. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_prompted_output_multiple.yaml +0 -0
  116. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_server_tool_pass_history_to_another_provider.yaml +0 -0
  117. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_server_tool_receive_history_from_another_provider.yaml +0 -0
  118. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_text_output_function.yaml +0 -0
  119. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_tool_output.yaml +0 -0
  120. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_tool_with_thinking.yaml +0 -0
  121. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_web_search_tool.yaml +0 -0
  122. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_anthropic_web_search_tool_stream.yaml +0 -0
  123. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_document_binary_content_input.yaml +0 -0
  124. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_document_url_input.yaml +0 -0
  125. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_extra_headers.yaml +0 -0
  126. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_image_as_binary_content_tool_response.yaml +0 -0
  127. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_image_url_input.yaml +0 -0
  128. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_image_url_input_invalid_mime_type.yaml +0 -0
  129. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_multiple_parallel_tool_calls.yaml +0 -0
  130. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_anthropic/test_text_document_url_input.yaml +0 -0
  131. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_anthropic_tool_with_thinking.yaml +0 -0
  132. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_empty_system_prompt.yaml +0 -0
  133. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model.yaml +0 -0
  134. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_anthropic_model_without_tools.yaml +0 -0
  135. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_guardrail_config.yaml +0 -0
  136. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_instructions.yaml +0 -0
  137. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_iter_stream.yaml +0 -0
  138. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_max_tokens.yaml +0 -0
  139. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_other_parameters.yaml +0 -0
  140. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_performance_config.yaml +0 -0
  141. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_retry.yaml +0 -0
  142. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_stream.yaml +0 -0
  143. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_structured_output.yaml +0 -0
  144. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_thinking_part.yaml +0 -0
  145. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_thinking_part_stream.yaml +0 -0
  146. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_model_top_p.yaml +0 -0
  147. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_bedrock_multiple_documents_in_history.yaml +0 -0
  148. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_document_url_input.yaml +0 -0
  149. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_image_as_binary_content_input.yaml +0 -0
  150. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_image_url_input.yaml +0 -0
  151. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_text_as_binary_content_input.yaml +0 -0
  152. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_text_document_url_input.yaml +0 -0
  153. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_video_as_binary_content_input.yaml +0 -0
  154. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_bedrock/test_video_url_input.yaml +0 -0
  155. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_cohere/test_cohere_model_instructions.yaml +0 -0
  156. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_cohere/test_cohere_model_thinking_part.yaml +0 -0
  157. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_cohere/test_request_simple_success_with_vcr.yaml +0 -0
  158. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_deepseek/test_deepseek_model_thinking_part.yaml +0 -0
  159. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_deepseek/test_deepseek_model_thinking_stream.yaml +0 -0
  160. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_download_item/test_download_item_application_octet_stream.yaml +0 -0
  161. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_download_item/test_download_item_audio_mpeg.yaml +0 -0
  162. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_download_item/test_download_item_no_content_type.yaml +0 -0
  163. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_document_url_input.yaml +0 -0
  164. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_additional_properties_is_false.yaml +0 -0
  165. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_additional_properties_is_true.yaml +0 -0
  166. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_drop_exclusive_maximum.yaml +0 -0
  167. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_exclusive_minimum_and_maximum.yaml +0 -0
  168. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_model_instructions.yaml +0 -0
  169. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_model_thinking_part.yaml +0 -0
  170. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_native_output.yaml +0 -0
  171. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_native_output_multiple.yaml +0 -0
  172. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_prompted_output.yaml +0 -0
  173. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_prompted_output_multiple.yaml +0 -0
  174. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_prompted_output_with_tools.yaml +0 -0
  175. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_text_output_function.yaml +0 -0
  176. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_tool_config_any_with_tool_without_args.yaml +0 -0
  177. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_tool_output.yaml +0 -0
  178. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_gemini_youtube_video_url_input.yaml +0 -0
  179. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_image_as_binary_content_input.yaml +0 -0
  180. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_image_as_binary_content_tool_response.yaml +0 -0
  181. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_image_url_input.yaml +0 -0
  182. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_labels_are_ignored_with_gla_provider.yaml +0 -0
  183. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_video_as_binary_content_input.yaml +0 -0
  184. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini/test_video_url_input.yaml +0 -0
  185. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini_vertex/test_labels.yaml +0 -0
  186. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini_vertex/test_url_input[AudioUrl (gs)].yaml +0 -0
  187. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini_vertex/test_url_input[AudioUrl].yaml +0 -0
  188. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini_vertex/test_url_input[DocumentUrl (gs)].yaml +0 -0
  189. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini_vertex/test_url_input[DocumentUrl].yaml +0 -0
  190. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini_vertex/test_url_input[ImageUrl (gs)].yaml +0 -0
  191. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini_vertex/test_url_input[ImageUrl].yaml +0 -0
  192. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini_vertex/test_url_input[VideoUrl (YouTube)].yaml +0 -0
  193. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini_vertex/test_url_input[VideoUrl (gs)].yaml +0 -0
  194. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini_vertex/test_url_input[VideoUrl].yaml +0 -0
  195. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_gemini_vertex/test_url_input_force_download.yaml +0 -0
  196. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model.yaml +0 -0
  197. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_code_execution_tool.yaml +0 -0
  198. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_document_url_input.yaml +0 -0
  199. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_empty_assistant_response.yaml +0 -0
  200. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_empty_user_prompt.yaml +0 -0
  201. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_image_as_binary_content_input.yaml +0 -0
  202. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_image_url_input.yaml +0 -0
  203. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_instructions.yaml +0 -0
  204. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_iter_stream.yaml +0 -0
  205. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_max_tokens.yaml +0 -0
  206. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_multiple_documents_in_history.yaml +0 -0
  207. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_receive_web_search_history_from_another_provider.yaml +0 -0
  208. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_retry.yaml +0 -0
  209. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_safety_settings.yaml +0 -0
  210. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_server_tool_receive_history_from_another_provider.yaml +0 -0
  211. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_stream.yaml +0 -0
  212. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_structured_output.yaml +0 -0
  213. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_text_as_binary_content_input.yaml +0 -0
  214. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_text_document_url_input.yaml +0 -0
  215. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_thinking_config.yaml +0 -0
  216. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_thinking_part.yaml +0 -0
  217. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_thinking_part_iter.yaml +0 -0
  218. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_top_p.yaml +0 -0
  219. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_url_context_tool.yaml +0 -0
  220. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_usage_limit_exceeded.yaml +0 -0
  221. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_usage_limit_not_exceeded.yaml +0 -0
  222. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_vertex_labels.yaml +0 -0
  223. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_vertex_provider.yaml +0 -0
  224. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_video_as_binary_content_input.yaml +0 -0
  225. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_video_as_binary_content_input_with_vendor_metadata.yaml +0 -0
  226. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_video_url_input.yaml +0 -0
  227. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_web_search_tool.yaml +0 -0
  228. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_model_youtube_video_url_input_with_vendor_metadata.yaml +0 -0
  229. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_native_output.yaml +0 -0
  230. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_native_output_multiple.yaml +0 -0
  231. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_prompted_output.yaml +0 -0
  232. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_prompted_output_multiple.yaml +0 -0
  233. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_prompted_output_with_tools.yaml +0 -0
  234. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_text_output_function.yaml +0 -0
  235. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_timeout.yaml +0 -0
  236. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_tool_config_any_with_tool_without_args.yaml +0 -0
  237. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_tool_output.yaml +0 -0
  238. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_url_input[AudioUrl (gs)].yaml +0 -0
  239. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_url_input[AudioUrl].yaml +0 -0
  240. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_url_input[DocumentUrl (gs)].yaml +0 -0
  241. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_url_input[DocumentUrl].yaml +0 -0
  242. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_url_input[ImageUrl (gs)].yaml +0 -0
  243. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_url_input[ImageUrl].yaml +0 -0
  244. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_url_input[VideoUrl (YouTube)].yaml +0 -0
  245. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_url_input[VideoUrl (gs)].yaml +0 -0
  246. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_url_input[VideoUrl].yaml +0 -0
  247. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_url_input_force_download.yaml +0 -0
  248. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_google/test_google_vertexai_model_usage_limit_exceeded.yaml +0 -0
  249. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_groq/test_extra_headers.yaml +0 -0
  250. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_groq/test_groq_model_instructions.yaml +0 -0
  251. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_groq/test_groq_model_thinking_part.yaml +0 -0
  252. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_groq/test_groq_model_thinking_part_iter.yaml +0 -0
  253. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_groq/test_groq_model_web_search_tool.yaml +0 -0
  254. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_groq/test_image_as_binary_content_input.yaml +0 -0
  255. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_groq/test_image_as_binary_content_tool_response.yaml +0 -0
  256. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_groq/test_image_url_input.yaml +0 -0
  257. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_hf_model_instructions.yaml +0 -0
  258. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_hf_model_thinking_part.yaml +0 -0
  259. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_hf_model_thinking_part_iter.yaml +0 -0
  260. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_image_as_binary_content_input.yaml +0 -0
  261. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_image_url_input.yaml +0 -0
  262. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_max_completion_tokens[Qwen-Qwen2.5-72B-Instruct].yaml +0 -0
  263. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_max_completion_tokens[deepseek-ai-DeepSeek-R1-0528].yaml +0 -0
  264. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_max_completion_tokens[meta-llama-Llama-3.3-70B-Instruct].yaml +0 -0
  265. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_request_simple_success_with_vcr.yaml +0 -0
  266. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_request_simple_usage.yaml +0 -0
  267. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_simple_completion.yaml +0 -0
  268. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_huggingface/test_stream_completion.yaml +0 -0
  269. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_mistral/test_image_as_binary_content_tool_response.yaml +0 -0
  270. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_mistral/test_mistral_model_instructions.yaml +0 -0
  271. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_mistral/test_mistral_model_thinking_part.yaml +0 -0
  272. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_audio_as_binary_content_input.yaml +0 -0
  273. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_compatible_api_with_tool_calls_without_id.yaml +0 -0
  274. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_document_as_binary_content_input.yaml +0 -0
  275. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_document_as_binary_content_input_with_tool.yaml +0 -0
  276. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_document_url_input.yaml +0 -0
  277. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_extra_headers.yaml +0 -0
  278. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_image_as_binary_content_input.yaml +0 -0
  279. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_image_as_binary_content_tool_response.yaml +0 -0
  280. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_image_url_tool_response.yaml +0 -0
  281. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_invalid_response.yaml +0 -0
  282. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_max_completion_tokens[gpt-4.5-preview].yaml +0 -0
  283. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_max_completion_tokens[gpt-4o-mini].yaml +0 -0
  284. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_max_completion_tokens[o3-mini].yaml +0 -0
  285. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_multiple_agent_tool_calls.yaml +0 -0
  286. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_audio_url_input.yaml +0 -0
  287. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_instructions.yaml +0 -0
  288. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_instructions_with_tool_calls_keep_instructions.yaml +0 -0
  289. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_model_cerebras_provider.yaml +0 -0
  290. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_model_cerebras_provider_harmony.yaml +0 -0
  291. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_model_cerebras_provider_qwen_3_coder.yaml +0 -0
  292. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_model_settings_temperature_ignored_on_gpt_5.yaml +0 -0
  293. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_model_thinking_part.yaml +0 -0
  294. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_model_thinking_part_iter.yaml +0 -0
  295. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_model_without_system_prompt.yaml +0 -0
  296. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_native_output.yaml +0 -0
  297. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_native_output_multiple.yaml +0 -0
  298. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_o1_mini_system_role[developer].yaml +0 -0
  299. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_o1_mini_system_role[system].yaml +0 -0
  300. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_prompted_output.yaml +0 -0
  301. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_prompted_output_multiple.yaml +0 -0
  302. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_responses_model_thinking_part.yaml +0 -0
  303. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_text_output_function.yaml +0 -0
  304. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_tool_output.yaml +0 -0
  305. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_web_search_tool.yaml +0 -0
  306. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_web_search_tool_model_not_supported.yaml +0 -0
  307. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_openai_web_search_tool_with_user_location.yaml +0 -0
  308. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_reasoning_model_with_temperature.yaml +0 -0
  309. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_system_prompt_role_o1_mini.yaml +0 -0
  310. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_text_response.yaml +0 -0
  311. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_user_id.yaml +0 -0
  312. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai/test_valid_response.yaml +0 -0
  313. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_audio_as_binary_content_input.yaml +0 -0
  314. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_image_as_binary_content_input.yaml +0 -0
  315. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_image_as_binary_content_tool_response.yaml +0 -0
  316. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_native_output.yaml +0 -0
  317. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_native_output_multiple.yaml +0 -0
  318. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_code_execution_tool.yaml +0 -0
  319. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_code_execution_tool_stream.yaml +0 -0
  320. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_document_as_binary_content_input.yaml +0 -0
  321. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_document_url_input.yaml +0 -0
  322. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_image_url_input.yaml +0 -0
  323. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_builtin_tools.yaml +0 -0
  324. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_http_error.yaml +0 -0
  325. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_instructions.yaml +0 -0
  326. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_retry.yaml +0 -0
  327. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_simple_response.yaml +0 -0
  328. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_simple_response_with_tool_call.yaml +0 -0
  329. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool.yaml +0 -0
  330. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool_stream.yaml +0 -0
  331. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool_with_invalid_region.yaml +0 -0
  332. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool_with_user_location.yaml +0 -0
  333. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_output_type.yaml +0 -0
  334. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_reasoning_effort.yaml +0 -0
  335. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_reasoning_generate_summary.yaml +0 -0
  336. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_stream.yaml +0 -0
  337. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_system_prompt.yaml +0 -0
  338. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_text_document_url_input.yaml +0 -0
  339. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_openai_responses_verbosity.yaml +0 -0
  340. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_prompted_output.yaml +0 -0
  341. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_prompted_output_multiple.yaml +0 -0
  342. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_reasoning_model_with_temperature.yaml +0 -0
  343. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_text_output_function.yaml +0 -0
  344. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/cassettes/test_openai_responses/test_tool_output.yaml +0 -0
  345. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/mock_async_stream.py +0 -0
  346. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_bedrock.py +0 -0
  347. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_deepseek.py +0 -0
  348. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_google.py +0 -0
  349. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_mcp_sampling.py +0 -0
  350. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_model.py +0 -0
  351. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_model_function.py +0 -0
  352. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_model_request_parameters.py +0 -0
  353. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_model_settings.py +0 -0
  354. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_model_test.py +0 -0
  355. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/models/test_openai_responses.py +0 -0
  356. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/parts_from_messages.py +0 -0
  357. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/__init__.py +0 -0
  358. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/cassettes/test_azure/test_azure_provider_call.yaml +0 -0
  359. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/cassettes/test_google_vertex/test_vertexai_provider.yaml +0 -0
  360. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/cassettes/test_heroku/test_heroku_model_provider_claude_3_7_sonnet.yaml +0 -0
  361. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/cassettes/test_openrouter/test_openrouter_with_google_model.yaml +0 -0
  362. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_anthropic.py +0 -0
  363. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_azure.py +0 -0
  364. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_bedrock.py +0 -0
  365. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_cerebras.py +0 -0
  366. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_cohere.py +0 -0
  367. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_deepseek.py +0 -0
  368. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_fireworks.py +0 -0
  369. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_github.py +0 -0
  370. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_google_gla.py +0 -0
  371. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_grok.py +0 -0
  372. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_groq.py +0 -0
  373. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_heroku.py +0 -0
  374. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_huggingface.py +0 -0
  375. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_mistral.py +0 -0
  376. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_moonshotai.py +0 -0
  377. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_ollama.py +0 -0
  378. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_openai.py +0 -0
  379. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_openrouter.py +0 -0
  380. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_provider_names.py +0 -0
  381. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_together.py +0 -0
  382. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/providers/test_vercel.py +0 -0
  383. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_a2a.py +0 -0
  384. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_ag_ui.py +0 -0
  385. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_builtin_tools.py +0 -0
  386. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_deps.py +0 -0
  387. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_direct.py +0 -0
  388. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_format_as_xml.py +0 -0
  389. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_history_processor.py +0 -0
  390. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_json_body_serializer.py +0 -0
  391. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_mcp.py +0 -0
  392. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_messages.py +0 -0
  393. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_parts_manager.py +0 -0
  394. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_settings.py +0 -0
  395. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_tenacity.py +0 -0
  396. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_thinking_part.py +0 -0
  397. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_toolsets.py +0 -0
  398. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_usage_limits.py +0 -0
  399. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/test_utils.py +0 -0
  400. {pydantic_ai-0.8.1 → pydantic_ai-1.0.0b1}/tests/typed_graph.py +0 -0
@@ -19,7 +19,6 @@ install: .uv .pre-commit .deno ## Install the package, dependencies, and pre-com
19
19
 
20
20
  .PHONY: install-all-python
21
21
  install-all-python: ## Install and synchronize an interpreter for every python version
22
- UV_PROJECT_ENVIRONMENT=.venv39 uv sync --python 3.9 --frozen --all-extras --all-packages --group lint --group docs
23
22
  UV_PROJECT_ENVIRONMENT=.venv310 uv sync --python 3.10 --frozen --all-extras --all-packages --group lint --group docs
24
23
  UV_PROJECT_ENVIRONMENT=.venv311 uv sync --python 3.11 --frozen --all-extras --all-packages --group lint --group docs
25
24
  UV_PROJECT_ENVIRONMENT=.venv312 uv sync --python 3.12 --frozen --all-extras --all-packages --group lint --group docs
@@ -60,13 +59,12 @@ typecheck-both: typecheck-pyright typecheck-mypy
60
59
 
61
60
  .PHONY: test
62
61
  test: ## Run tests and collect coverage data
63
- uv run coverage run -m pytest -n auto --dist=loadgroup
62
+ uv run coverage run -m pytest -n auto --dist=loadgroup --durations=20
64
63
  @uv run coverage combine
65
64
  @uv run coverage report
66
65
 
67
66
  .PHONY: test-all-python
68
- test-all-python: ## Run tests on Python 3.9 to 3.13
69
- UV_PROJECT_ENVIRONMENT=.venv39 uv run --python 3.9 --all-extras --all-packages coverage run -p -m pytest
67
+ test-all-python: ## Run tests on Python 3.10 to 3.13
70
68
  UV_PROJECT_ENVIRONMENT=.venv310 uv run --python 3.10 --all-extras --all-packages coverage run -p -m pytest
71
69
  UV_PROJECT_ENVIRONMENT=.venv311 uv run --python 3.11 --all-extras --all-packages coverage run -p -m pytest
72
70
  UV_PROJECT_ENVIRONMENT=.venv312 uv run --python 3.12 --all-extras --all-packages coverage run -p -m pytest
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pydantic-ai
3
- Version: 0.8.1
3
+ Version: 1.0.0b1
4
4
  Summary: Agent Framework / shim to use Pydantic with LLMs
5
5
  Project-URL: Homepage, https://ai.pydantic.dev
6
6
  Project-URL: Source, https://github.com/pydantic/pydantic-ai
@@ -19,7 +19,6 @@ Classifier: Operating System :: OS Independent
19
19
  Classifier: Programming Language :: Python
20
20
  Classifier: Programming Language :: Python :: 3
21
21
  Classifier: Programming Language :: Python :: 3 :: Only
22
- Classifier: Programming Language :: Python :: 3.9
23
22
  Classifier: Programming Language :: Python :: 3.10
24
23
  Classifier: Programming Language :: Python :: 3.11
25
24
  Classifier: Programming Language :: Python :: 3.12
@@ -27,14 +26,12 @@ Classifier: Programming Language :: Python :: 3.13
27
26
  Classifier: Topic :: Internet
28
27
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
29
28
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
30
- Requires-Python: >=3.9
31
- Requires-Dist: pydantic-ai-slim[ag-ui,anthropic,bedrock,cli,cohere,evals,google,groq,huggingface,mcp,mistral,openai,retries,temporal,vertexai]==0.8.1
29
+ Requires-Python: >=3.10
30
+ Requires-Dist: pydantic-ai-slim[ag-ui,anthropic,bedrock,cli,cohere,evals,google,groq,huggingface,logfire,mcp,mistral,openai,retries,temporal,vertexai]==1.0.0b1
32
31
  Provides-Extra: a2a
33
32
  Requires-Dist: fasta2a>=0.4.1; extra == 'a2a'
34
33
  Provides-Extra: examples
35
- Requires-Dist: pydantic-ai-examples==0.8.1; extra == 'examples'
36
- Provides-Extra: logfire
37
- Requires-Dist: logfire>=3.14.1; extra == 'logfire'
34
+ Requires-Dist: pydantic-ai-examples==1.0.0b1; extra == 'examples'
38
35
  Description-Content-Type: text/markdown
39
36
 
40
37
  <div align="center">
@@ -28,7 +28,6 @@ classifiers = [
28
28
  "Programming Language :: Python",
29
29
  "Programming Language :: Python :: 3",
30
30
  "Programming Language :: Python :: 3 :: Only",
31
- "Programming Language :: Python :: 3.9",
32
31
  "Programming Language :: Python :: 3.10",
33
32
  "Programming Language :: Python :: 3.11",
34
33
  "Programming Language :: Python :: 3.12",
@@ -43,16 +42,15 @@ classifiers = [
43
42
  "Framework :: Pydantic",
44
43
  "Framework :: Pydantic :: 2",
45
44
  ]
46
- requires-python = ">=3.9"
45
+ requires-python = ">=3.10"
47
46
 
48
47
  [tool.hatch.metadata.hooks.uv-dynamic-versioning]
49
48
  dependencies = [
50
- "pydantic-ai-slim[openai,vertexai,google,groq,anthropic,mistral,cohere,bedrock,huggingface,cli,mcp,evals,ag-ui,retries,temporal]=={{ version }}",
49
+ "pydantic-ai-slim[openai,vertexai,google,groq,anthropic,mistral,cohere,bedrock,huggingface,cli,mcp,evals,ag-ui,retries,temporal,logfire]=={{ version }}",
51
50
  ]
52
51
 
53
52
  [tool.hatch.metadata.hooks.uv-dynamic-versioning.optional-dependencies]
54
53
  examples = ["pydantic-ai-examples=={{ version }}"]
55
- logfire = ["logfire>=3.14.1"]
56
54
  a2a = ["fasta2a>=0.4.1"]
57
55
 
58
56
  [project.urls]
@@ -127,7 +125,7 @@ include = ["/README.md", "/Makefile", "/tests"]
127
125
 
128
126
  [tool.ruff]
129
127
  line-length = 120
130
- target-version = "py39"
128
+ target-version = "py310"
131
129
  include = [
132
130
  "pydantic_ai_slim/**/*.py",
133
131
  "pydantic_evals/**/*.py",
@@ -162,7 +160,7 @@ ignore = [
162
160
 
163
161
  [tool.ruff.lint.isort]
164
162
  combine-as-imports = true
165
- known-first-party = ["pydantic_ai"]
163
+ known-first-party = ["pydantic_ai", "pydantic_evals", "pydantic_graph"]
166
164
  # weird issue with ruff thinking fasta2a is still editable
167
165
  known-third-party = ["fasta2a"]
168
166
 
@@ -209,7 +207,7 @@ executionEnvironments = [
209
207
  exclude = [
210
208
  "examples/pydantic_ai_examples/weather_agent_gradio.py",
211
209
  "mcp-run-python/node_modules",
212
- "pydantic_ai_slim/pydantic_ai/ext/aci.py", # aci-sdk requires Python 3.10+ so cannot be added as an (optional) dependency
210
+ "pydantic_ai_slim/pydantic_ai/ext/aci.py", # aci-sdk is too niche to be added as an (optional) dependency
213
211
  ]
214
212
  extraPaths = ["mcp-run-python/stubs"]
215
213
 
@@ -253,7 +251,7 @@ include = [
253
251
  omit = [
254
252
  "tests/test_live.py",
255
253
  "tests/example_modules/*.py",
256
- "pydantic_ai_slim/pydantic_ai/ext/aci.py", # aci-sdk requires Python 3.10+ so cannot be added as an (optional) dependency
254
+ "pydantic_ai_slim/pydantic_ai/ext/aci.py", # aci-sdk is too niche to be added as an (optional) dependency
257
255
  ]
258
256
  branch = true
259
257
  # Disable include-ignored warnings as --source is enabled automatically causing a self conflict as per:
@@ -0,0 +1,249 @@
1
+ interactions:
2
+ - request:
3
+ headers:
4
+ accept:
5
+ - application/json
6
+ accept-encoding:
7
+ - gzip, deflate
8
+ connection:
9
+ - keep-alive
10
+ content-length:
11
+ - '639'
12
+ content-type:
13
+ - application/json
14
+ host:
15
+ - api.openai.com
16
+ method: POST
17
+ parsed_body:
18
+ messages:
19
+ - content: Just call tools without asking for confirmation.
20
+ role: system
21
+ - content: Delete the file `.env` and create `test.txt`
22
+ role: user
23
+ model: gpt-4o
24
+ stream: false
25
+ tool_choice: auto
26
+ tools:
27
+ - function:
28
+ description: ''
29
+ name: create_file
30
+ parameters:
31
+ additionalProperties: false
32
+ properties:
33
+ path:
34
+ type: string
35
+ required:
36
+ - path
37
+ type: object
38
+ strict: true
39
+ type: function
40
+ - function:
41
+ description: ''
42
+ name: delete_file
43
+ parameters:
44
+ additionalProperties: false
45
+ properties:
46
+ path:
47
+ type: string
48
+ required:
49
+ - path
50
+ type: object
51
+ strict: true
52
+ type: function
53
+ uri: https://api.openai.com/v1/chat/completions
54
+ response:
55
+ headers:
56
+ access-control-expose-headers:
57
+ - X-Request-ID
58
+ alt-svc:
59
+ - h3=":443"; ma=86400
60
+ connection:
61
+ - keep-alive
62
+ content-length:
63
+ - '1319'
64
+ content-type:
65
+ - application/json
66
+ openai-organization:
67
+ - pydantic-28gund
68
+ openai-processing-ms:
69
+ - '737'
70
+ openai-project:
71
+ - proj_dKobscVY9YJxeEaDJen54e3d
72
+ openai-version:
73
+ - '2020-10-01'
74
+ strict-transport-security:
75
+ - max-age=31536000; includeSubDomains; preload
76
+ transfer-encoding:
77
+ - chunked
78
+ parsed_body:
79
+ choices:
80
+ - finish_reason: tool_calls
81
+ index: 0
82
+ logprobs: null
83
+ message:
84
+ annotations: []
85
+ content: null
86
+ refusal: null
87
+ role: assistant
88
+ tool_calls:
89
+ - function:
90
+ arguments: '{"path": ".env"}'
91
+ name: delete_file
92
+ id: call_jYdIdRZHxZTn5bWCq5jlMrJi
93
+ type: function
94
+ - function:
95
+ arguments: '{"path": "test.txt"}'
96
+ name: create_file
97
+ id: call_TmlTVWQbzrXCZ4jNsCVNbNqu
98
+ type: function
99
+ created: 1756419063
100
+ id: chatcmpl-C9f7f1SbHRzcwlJwrYKdSonTRWPvV
101
+ model: gpt-4o-2024-08-06
102
+ object: chat.completion
103
+ service_tier: default
104
+ system_fingerprint: fp_df0f7b956c
105
+ usage:
106
+ completion_tokens: 46
107
+ completion_tokens_details:
108
+ accepted_prediction_tokens: 0
109
+ audio_tokens: 0
110
+ reasoning_tokens: 0
111
+ rejected_prediction_tokens: 0
112
+ prompt_tokens: 71
113
+ prompt_tokens_details:
114
+ audio_tokens: 0
115
+ cached_tokens: 0
116
+ total_tokens: 117
117
+ status:
118
+ code: 200
119
+ message: OK
120
+ - request:
121
+ headers:
122
+ accept:
123
+ - application/json
124
+ accept-encoding:
125
+ - gzip, deflate
126
+ connection:
127
+ - keep-alive
128
+ content-length:
129
+ - '1109'
130
+ content-type:
131
+ - application/json
132
+ cookie:
133
+ - __cf_bm=mLR5rPRuew3fXXRgovBj3Ir6vRflwQucmAT8xYCnZaA-1756419064-1.0.1.1-HvvEmDcDOmavm0vBqLo_ZG_Bjh6B2CgT.etvrYCBiezHow_0xNZ64xqybhJl_NViSVDNXuaXviCcDgIZg13KgsWp0J_qNORRiVIHxO2UAO4;
134
+ _cfuvid=536Zye1eyyVQS9C8BV6AAFwv4vaW.H4o2O4LK_228oc-1756419064420-0.0.1.1-604800000
135
+ host:
136
+ - api.openai.com
137
+ method: POST
138
+ parsed_body:
139
+ messages:
140
+ - content: Just call tools without asking for confirmation.
141
+ role: system
142
+ - content: Delete the file `.env` and create `test.txt`
143
+ role: user
144
+ - content: null
145
+ role: assistant
146
+ tool_calls:
147
+ - function:
148
+ arguments: '{"path": ".env"}'
149
+ name: delete_file
150
+ id: call_jYdIdRZHxZTn5bWCq5jlMrJi
151
+ type: function
152
+ - function:
153
+ arguments: '{"path": "test.txt"}'
154
+ name: create_file
155
+ id: call_TmlTVWQbzrXCZ4jNsCVNbNqu
156
+ type: function
157
+ - content: 'true'
158
+ role: tool
159
+ tool_call_id: call_jYdIdRZHxZTn5bWCq5jlMrJi
160
+ - content: Success
161
+ role: tool
162
+ tool_call_id: call_TmlTVWQbzrXCZ4jNsCVNbNqu
163
+ model: gpt-4o
164
+ stream: false
165
+ tool_choice: auto
166
+ tools:
167
+ - function:
168
+ description: ''
169
+ name: create_file
170
+ parameters:
171
+ additionalProperties: false
172
+ properties:
173
+ path:
174
+ type: string
175
+ required:
176
+ - path
177
+ type: object
178
+ strict: true
179
+ type: function
180
+ - function:
181
+ description: ''
182
+ name: delete_file
183
+ parameters:
184
+ additionalProperties: false
185
+ properties:
186
+ path:
187
+ type: string
188
+ required:
189
+ - path
190
+ type: object
191
+ strict: true
192
+ type: function
193
+ uri: https://api.openai.com/v1/chat/completions
194
+ response:
195
+ headers:
196
+ access-control-expose-headers:
197
+ - X-Request-ID
198
+ alt-svc:
199
+ - h3=":443"; ma=86400
200
+ connection:
201
+ - keep-alive
202
+ content-length:
203
+ - '882'
204
+ content-type:
205
+ - application/json
206
+ openai-organization:
207
+ - pydantic-28gund
208
+ openai-processing-ms:
209
+ - '624'
210
+ openai-project:
211
+ - proj_dKobscVY9YJxeEaDJen54e3d
212
+ openai-version:
213
+ - '2020-10-01'
214
+ strict-transport-security:
215
+ - max-age=31536000; includeSubDomains; preload
216
+ transfer-encoding:
217
+ - chunked
218
+ parsed_body:
219
+ choices:
220
+ - finish_reason: stop
221
+ index: 0
222
+ logprobs: null
223
+ message:
224
+ annotations: []
225
+ content: The file `.env` has been deleted and `test.txt` has been created successfully.
226
+ refusal: null
227
+ role: assistant
228
+ created: 1756419066
229
+ id: chatcmpl-C9f7iBeeNNBazDCMa7RSx3EFtiZoR
230
+ model: gpt-4o-2024-08-06
231
+ object: chat.completion
232
+ service_tier: default
233
+ system_fingerprint: fp_80956533cb
234
+ usage:
235
+ completion_tokens: 19
236
+ completion_tokens_details:
237
+ accepted_prediction_tokens: 0
238
+ audio_tokens: 0
239
+ reasoning_tokens: 0
240
+ rejected_prediction_tokens: 0
241
+ prompt_tokens: 133
242
+ prompt_tokens_details:
243
+ audio_tokens: 0
244
+ cached_tokens: 0
245
+ total_tokens: 152
246
+ status:
247
+ code: 200
248
+ message: OK
249
+ version: 1
@@ -0,0 +1,335 @@
1
+ interactions:
2
+ - request:
3
+ headers:
4
+ accept:
5
+ - application/json
6
+ accept-encoding:
7
+ - gzip, deflate
8
+ connection:
9
+ - keep-alive
10
+ content-length:
11
+ - '347'
12
+ content-type:
13
+ - application/json
14
+ host:
15
+ - api.openai.com
16
+ method: POST
17
+ parsed_body:
18
+ messages:
19
+ - content: What is the weather in CDMX?
20
+ role: user
21
+ model: gpt-4o
22
+ stream: false
23
+ tool_choice: auto
24
+ tools:
25
+ - function:
26
+ description: ''
27
+ name: get_weather_in_city
28
+ parameters:
29
+ additionalProperties: false
30
+ properties:
31
+ city:
32
+ type: string
33
+ required:
34
+ - city
35
+ type: object
36
+ strict: true
37
+ type: function
38
+ uri: https://api.openai.com/v1/chat/completions
39
+ response:
40
+ headers:
41
+ access-control-expose-headers:
42
+ - X-Request-ID
43
+ alt-svc:
44
+ - h3=":443"; ma=86400
45
+ connection:
46
+ - keep-alive
47
+ content-length:
48
+ - '1086'
49
+ content-type:
50
+ - application/json
51
+ openai-organization:
52
+ - pydantic-28gund
53
+ openai-processing-ms:
54
+ - '327'
55
+ openai-project:
56
+ - proj_dKobscVY9YJxeEaDJen54e3d
57
+ openai-version:
58
+ - '2020-10-01'
59
+ strict-transport-security:
60
+ - max-age=31536000; includeSubDomains; preload
61
+ transfer-encoding:
62
+ - chunked
63
+ parsed_body:
64
+ choices:
65
+ - finish_reason: tool_calls
66
+ index: 0
67
+ logprobs: null
68
+ message:
69
+ annotations: []
70
+ content: null
71
+ refusal: null
72
+ role: assistant
73
+ tool_calls:
74
+ - function:
75
+ arguments: '{"city":"CDMX"}'
76
+ name: get_weather_in_city
77
+ id: call_fFAB8MNL3tUdfNIIdsIJTo0H
78
+ type: function
79
+ created: 1756423190
80
+ id: chatcmpl-C9gCExiXILzHBQ4ZuERdiURkHUZZM
81
+ model: gpt-4o-2024-08-06
82
+ object: chat.completion
83
+ service_tier: default
84
+ system_fingerprint: fp_ea40d5097a
85
+ usage:
86
+ completion_tokens: 17
87
+ completion_tokens_details:
88
+ accepted_prediction_tokens: 0
89
+ audio_tokens: 0
90
+ reasoning_tokens: 0
91
+ rejected_prediction_tokens: 0
92
+ prompt_tokens: 47
93
+ prompt_tokens_details:
94
+ audio_tokens: 0
95
+ cached_tokens: 0
96
+ total_tokens: 64
97
+ status:
98
+ code: 200
99
+ message: OK
100
+ - request:
101
+ headers:
102
+ accept:
103
+ - application/json
104
+ accept-encoding:
105
+ - gzip, deflate
106
+ connection:
107
+ - keep-alive
108
+ content-length:
109
+ - '665'
110
+ content-type:
111
+ - application/json
112
+ cookie:
113
+ - __cf_bm=yUpeQm6kQWb.kRgbX0F391IMtd8nqGUrSigYrEakdXQ-1756423190-1.0.1.1-FPxZURmrG14EfyWc8ZgNIHTHoWxQ3IPV9X4uCZ2O_z1KiiSc66VTYHq86EbI5aUnd26QXGFdwTsriLpMHbGRxfqlOj.DSK3daVg9q_XBQDE;
114
+ _cfuvid=t8Kvct8UEUS4P6_7AIQ7_ayX0J6QaCWrtHqGpTB5uMo-1756423190751-0.0.1.1-604800000
115
+ host:
116
+ - api.openai.com
117
+ method: POST
118
+ parsed_body:
119
+ messages:
120
+ - content: What is the weather in CDMX?
121
+ role: user
122
+ - content: null
123
+ role: assistant
124
+ tool_calls:
125
+ - function:
126
+ arguments: '{"city":"CDMX"}'
127
+ name: get_weather_in_city
128
+ id: call_fFAB8MNL3tUdfNIIdsIJTo0H
129
+ type: function
130
+ - content: |-
131
+ Did you mean Mexico City?
132
+
133
+ Fix the errors and try again.
134
+ role: tool
135
+ tool_call_id: call_fFAB8MNL3tUdfNIIdsIJTo0H
136
+ model: gpt-4o
137
+ stream: false
138
+ tool_choice: auto
139
+ tools:
140
+ - function:
141
+ description: ''
142
+ name: get_weather_in_city
143
+ parameters:
144
+ additionalProperties: false
145
+ properties:
146
+ city:
147
+ type: string
148
+ required:
149
+ - city
150
+ type: object
151
+ strict: true
152
+ type: function
153
+ uri: https://api.openai.com/v1/chat/completions
154
+ response:
155
+ headers:
156
+ access-control-expose-headers:
157
+ - X-Request-ID
158
+ alt-svc:
159
+ - h3=":443"; ma=86400
160
+ connection:
161
+ - keep-alive
162
+ content-length:
163
+ - '1094'
164
+ content-type:
165
+ - application/json
166
+ openai-organization:
167
+ - pydantic-28gund
168
+ openai-processing-ms:
169
+ - '352'
170
+ openai-project:
171
+ - proj_dKobscVY9YJxeEaDJen54e3d
172
+ openai-version:
173
+ - '2020-10-01'
174
+ strict-transport-security:
175
+ - max-age=31536000; includeSubDomains; preload
176
+ transfer-encoding:
177
+ - chunked
178
+ parsed_body:
179
+ choices:
180
+ - finish_reason: tool_calls
181
+ index: 0
182
+ logprobs: null
183
+ message:
184
+ annotations: []
185
+ content: null
186
+ refusal: null
187
+ role: assistant
188
+ tool_calls:
189
+ - function:
190
+ arguments: '{"city":"Mexico City"}'
191
+ name: get_weather_in_city
192
+ id: call_hLYHO5lK5lmiukTZv6VQzz3x
193
+ type: function
194
+ created: 1756423191
195
+ id: chatcmpl-C9gCF2OpzQojDQTsp31IsAagNqEC6
196
+ model: gpt-4o-2024-08-06
197
+ object: chat.completion
198
+ service_tier: default
199
+ system_fingerprint: fp_ea40d5097a
200
+ usage:
201
+ completion_tokens: 17
202
+ completion_tokens_details:
203
+ accepted_prediction_tokens: 0
204
+ audio_tokens: 0
205
+ reasoning_tokens: 0
206
+ rejected_prediction_tokens: 0
207
+ prompt_tokens: 87
208
+ prompt_tokens_details:
209
+ audio_tokens: 0
210
+ cached_tokens: 0
211
+ total_tokens: 104
212
+ status:
213
+ code: 200
214
+ message: OK
215
+ - request:
216
+ headers:
217
+ accept:
218
+ - application/json
219
+ accept-encoding:
220
+ - gzip, deflate
221
+ connection:
222
+ - keep-alive
223
+ content-length:
224
+ - '937'
225
+ content-type:
226
+ - application/json
227
+ cookie:
228
+ - __cf_bm=yUpeQm6kQWb.kRgbX0F391IMtd8nqGUrSigYrEakdXQ-1756423190-1.0.1.1-FPxZURmrG14EfyWc8ZgNIHTHoWxQ3IPV9X4uCZ2O_z1KiiSc66VTYHq86EbI5aUnd26QXGFdwTsriLpMHbGRxfqlOj.DSK3daVg9q_XBQDE;
229
+ _cfuvid=t8Kvct8UEUS4P6_7AIQ7_ayX0J6QaCWrtHqGpTB5uMo-1756423190751-0.0.1.1-604800000
230
+ host:
231
+ - api.openai.com
232
+ method: POST
233
+ parsed_body:
234
+ messages:
235
+ - content: What is the weather in CDMX?
236
+ role: user
237
+ - content: null
238
+ role: assistant
239
+ tool_calls:
240
+ - function:
241
+ arguments: '{"city":"CDMX"}'
242
+ name: get_weather_in_city
243
+ id: call_fFAB8MNL3tUdfNIIdsIJTo0H
244
+ type: function
245
+ - content: |-
246
+ Did you mean Mexico City?
247
+
248
+ Fix the errors and try again.
249
+ role: tool
250
+ tool_call_id: call_fFAB8MNL3tUdfNIIdsIJTo0H
251
+ - content: null
252
+ role: assistant
253
+ tool_calls:
254
+ - function:
255
+ arguments: '{"city":"Mexico City"}'
256
+ name: get_weather_in_city
257
+ id: call_hLYHO5lK5lmiukTZv6VQzz3x
258
+ type: function
259
+ - content: sunny
260
+ role: tool
261
+ tool_call_id: call_hLYHO5lK5lmiukTZv6VQzz3x
262
+ model: gpt-4o
263
+ stream: false
264
+ tool_choice: auto
265
+ tools:
266
+ - function:
267
+ description: ''
268
+ name: get_weather_in_city
269
+ parameters:
270
+ additionalProperties: false
271
+ properties:
272
+ city:
273
+ type: string
274
+ required:
275
+ - city
276
+ type: object
277
+ strict: true
278
+ type: function
279
+ uri: https://api.openai.com/v1/chat/completions
280
+ response:
281
+ headers:
282
+ access-control-expose-headers:
283
+ - X-Request-ID
284
+ alt-svc:
285
+ - h3=":443"; ma=86400
286
+ connection:
287
+ - keep-alive
288
+ content-length:
289
+ - '850'
290
+ content-type:
291
+ - application/json
292
+ openai-organization:
293
+ - pydantic-28gund
294
+ openai-processing-ms:
295
+ - '312'
296
+ openai-project:
297
+ - proj_dKobscVY9YJxeEaDJen54e3d
298
+ openai-version:
299
+ - '2020-10-01'
300
+ strict-transport-security:
301
+ - max-age=31536000; includeSubDomains; preload
302
+ transfer-encoding:
303
+ - chunked
304
+ parsed_body:
305
+ choices:
306
+ - finish_reason: stop
307
+ index: 0
308
+ logprobs: null
309
+ message:
310
+ annotations: []
311
+ content: The weather in Mexico City is currently sunny.
312
+ refusal: null
313
+ role: assistant
314
+ created: 1756423192
315
+ id: chatcmpl-C9gCGg6DDdUlo7CuS04nK9k6dnkZG
316
+ model: gpt-4o-2024-08-06
317
+ object: chat.completion
318
+ service_tier: default
319
+ system_fingerprint: fp_ea40d5097a
320
+ usage:
321
+ completion_tokens: 10
322
+ completion_tokens_details:
323
+ accepted_prediction_tokens: 0
324
+ audio_tokens: 0
325
+ reasoning_tokens: 0
326
+ rejected_prediction_tokens: 0
327
+ prompt_tokens: 116
328
+ prompt_tokens_details:
329
+ audio_tokens: 0
330
+ cached_tokens: 0
331
+ total_tokens: 126
332
+ status:
333
+ code: 200
334
+ message: OK
335
+ version: 1