pydantic-ai 1.0.9__tar.gz → 1.0.11__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 (462) hide show
  1. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/PKG-INFO +5 -6
  2. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/README.md +1 -1
  3. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/pyproject.toml +2 -2
  4. pydantic_ai-1.0.11/tests/models/cassettes/test_anthropic/test_anthropic_output_tool_with_thinking.yaml +74 -0
  5. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_document_url_input.yaml +12 -14
  6. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_image_as_binary_content_input.yaml +6 -6
  7. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_image_url_input.yaml +9 -10
  8. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_text_as_binary_content_input.yaml +4 -4
  9. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_text_document_url_input.yaml +11 -9
  10. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_video_as_binary_content_input.yaml +18 -16
  11. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_video_url_input.yaml +36 -36
  12. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_anthropic.py +24 -0
  13. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_google.py +17 -11
  14. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_groq.py +1 -12
  15. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_huggingface.py +1 -15
  16. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_instrumented.py +146 -1
  17. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_model_names.py +2 -6
  18. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_openai.py +21 -11
  19. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_openai_responses.py +35 -1
  20. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_ollama.py +8 -0
  21. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_agent.py +70 -5
  22. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_dbos.py +26 -6
  23. pydantic_ai-1.0.11/tests/test_format_as_xml.py +594 -0
  24. pydantic_ai-1.0.11/tests/test_function_schema.py +201 -0
  25. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_history_processor.py +82 -0
  26. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_streaming.py +39 -7
  27. pydantic_ai-1.0.9/tests/test_format_as_xml.py +0 -202
  28. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/.gitignore +0 -0
  29. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/LICENSE +0 -0
  30. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/Makefile +0 -0
  31. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/__init__.py +0 -0
  32. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/assets/dummy.pdf +0 -0
  33. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/assets/kiwi.png +0 -0
  34. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/assets/marcelo.mp3 +0 -0
  35. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/assets/product_name.txt +0 -0
  36. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/assets/small_video.mp4 +0 -0
  37. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_complex_agent_run.yaml +0 -0
  38. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_complex_agent_run_in_workflow.yaml +0 -0
  39. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_complex_agent_run_stream_in_workflow.yaml +0 -0
  40. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_iter.yaml +0 -0
  41. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_iter_in_workflow.yaml +0 -0
  42. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_override_deps_in_workflow.yaml +0 -0
  43. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_override_tools_in_workflow.yaml +0 -0
  44. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_run.yaml +0 -0
  45. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_run_in_workflow_with_toolsets.yaml +0 -0
  46. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_run_stream.yaml +0 -0
  47. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_run_sync.yaml +0 -0
  48. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_run_sync_in_workflow.yaml +0 -0
  49. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_with_dataclass_deps_as_dict.yaml +0 -0
  50. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_with_hitl_tool.yaml +0 -0
  51. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_with_hitl_tool_sync.yaml +0 -0
  52. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_with_model_retry.yaml +0 -0
  53. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_with_non_dict_deps.yaml +0 -0
  54. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_agent_with_unserializable_deps_type.yaml +0 -0
  55. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_dbos_model_stream_direct.yaml +0 -0
  56. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_multiple_agents.yaml +0 -0
  57. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_dbos/test_simple_agent_run_in_workflow.yaml +0 -0
  58. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_agent_with_server_not_running.yaml +0 -0
  59. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_agent_with_stdio_server.yaml +0 -0
  60. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_audio_resource.yaml +0 -0
  61. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_audio_resource_link.yaml +0 -0
  62. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_dict.yaml +0 -0
  63. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_error.yaml +0 -0
  64. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_image.yaml +0 -0
  65. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_image_resource.yaml +0 -0
  66. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_image_resource_link.yaml +0 -0
  67. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_multiple_items.yaml +0 -0
  68. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_none.yaml +0 -0
  69. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_str.yaml +0 -0
  70. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_text_resource.yaml +0 -0
  71. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_mcp/test_tool_returning_text_resource_link.yaml +0 -0
  72. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_settings/test_stop_settings[anthropic].yaml +0 -0
  73. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_settings/test_stop_settings[bedrock].yaml +0 -0
  74. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_settings/test_stop_settings[cohere].yaml +0 -0
  75. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_settings/test_stop_settings[gemini].yaml +0 -0
  76. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_settings/test_stop_settings[google].yaml +0 -0
  77. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_settings/test_stop_settings[groq].yaml +0 -0
  78. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_settings/test_stop_settings[mistral].yaml +0 -0
  79. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_settings/test_stop_settings[openai].yaml +0 -0
  80. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_complex_agent_run.yaml +0 -0
  81. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_complex_agent_run_in_workflow.yaml +0 -0
  82. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_complex_agent_run_stream_in_workflow.yaml +0 -0
  83. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_logfire_plugin.yaml +0 -0
  84. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_multiple_agents.yaml +0 -0
  85. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_simple_agent_run_in_workflow.yaml +0 -0
  86. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_temporal_agent_iter.yaml +0 -0
  87. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_temporal_agent_override_deps_in_workflow.yaml +0 -0
  88. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_temporal_agent_run.yaml +0 -0
  89. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_temporal_agent_run_stream.yaml +0 -0
  90. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_temporal_agent_run_sync.yaml +0 -0
  91. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_temporal_agent_sync_tool_activity_disabled.yaml +0 -0
  92. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_temporal_agent_with_dataclass_deps_as_dict.yaml +0 -0
  93. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_temporal_agent_with_hitl_tool.yaml +0 -0
  94. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_temporal_agent_with_model_retry.yaml +0 -0
  95. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_temporal_agent_with_non_dict_deps.yaml +0 -0
  96. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/cassettes/test_temporal/test_temporal_agent_with_unserializable_deps_type.yaml +0 -0
  97. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/conftest.py +0 -0
  98. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/__init__.py +0 -0
  99. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_dataset.py +0 -0
  100. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_evaluator_base.py +0 -0
  101. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_evaluator_common.py +0 -0
  102. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_evaluator_context.py +0 -0
  103. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_evaluator_spec.py +0 -0
  104. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_evaluators.py +0 -0
  105. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_llm_as_a_judge.py +0 -0
  106. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_otel.py +0 -0
  107. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_render_numbers.py +0 -0
  108. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_reporting.py +0 -0
  109. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_reports.py +0 -0
  110. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/test_utils.py +0 -0
  111. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/evals/utils.py +0 -0
  112. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/example_modules/README.md +0 -0
  113. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/example_modules/bank_database.py +0 -0
  114. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/example_modules/fake_database.py +0 -0
  115. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/example_modules/mcp_server.py +0 -0
  116. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/example_modules/weather_service.py +0 -0
  117. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/ext/__init__.py +0 -0
  118. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/ext/test_langchain.py +0 -0
  119. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/graph/__init__.py +0 -0
  120. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/graph/test_file_persistence.py +0 -0
  121. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/graph/test_graph.py +0 -0
  122. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/graph/test_mermaid.py +0 -0
  123. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/graph/test_persistence.py +0 -0
  124. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/graph/test_state.py +0 -0
  125. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/graph/test_utils.py +0 -0
  126. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/import_examples.py +0 -0
  127. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/json_body_serializer.py +0 -0
  128. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/mcp_server.py +0 -0
  129. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/__init__.py +0 -0
  130. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_code_execution_tool.yaml +0 -0
  131. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_code_execution_tool_stream.yaml +0 -0
  132. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_model_empty_message_on_history.yaml +0 -0
  133. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_model_instructions.yaml +0 -0
  134. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_model_thinking_part.yaml +0 -0
  135. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_model_thinking_part_from_other_model.yaml +0 -0
  136. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_model_thinking_part_redacted.yaml +0 -0
  137. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_model_thinking_part_redacted_stream.yaml +0 -0
  138. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_model_thinking_part_stream.yaml +0 -0
  139. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_model_web_search_tool_stream.yaml +0 -0
  140. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_prompted_output.yaml +0 -0
  141. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_prompted_output_multiple.yaml +0 -0
  142. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_server_tool_pass_history_to_another_provider.yaml +0 -0
  143. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_server_tool_receive_history_from_another_provider.yaml +0 -0
  144. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_text_output_function.yaml +0 -0
  145. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_text_parts_ahead_of_built_in_tool_call.yaml +0 -0
  146. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_tool_output.yaml +0 -0
  147. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_tool_with_thinking.yaml +0 -0
  148. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_web_search_tool.yaml +0 -0
  149. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_anthropic_web_search_tool_stream.yaml +0 -0
  150. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_document_binary_content_input.yaml +0 -0
  151. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_document_url_input.yaml +0 -0
  152. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_extra_headers.yaml +0 -0
  153. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_image_as_binary_content_tool_response.yaml +0 -0
  154. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_image_url_input.yaml +0 -0
  155. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_image_url_input_invalid_mime_type.yaml +0 -0
  156. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_multiple_parallel_tool_calls.yaml +0 -0
  157. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_anthropic/test_text_document_url_input.yaml +0 -0
  158. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_anthropic_tool_with_thinking.yaml +0 -0
  159. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_empty_system_prompt.yaml +0 -0
  160. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model.yaml +0 -0
  161. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_anthropic_model_without_tools.yaml +0 -0
  162. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_guardrail_config.yaml +0 -0
  163. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_instructions.yaml +0 -0
  164. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_iter_stream.yaml +0 -0
  165. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_max_tokens.yaml +0 -0
  166. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_other_parameters.yaml +0 -0
  167. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_performance_config.yaml +0 -0
  168. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_retry.yaml +0 -0
  169. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_stream.yaml +0 -0
  170. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_structured_output.yaml +0 -0
  171. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_thinking_part_anthropic.yaml +0 -0
  172. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_thinking_part_deepseek.yaml +0 -0
  173. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_thinking_part_from_other_model.yaml +0 -0
  174. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_thinking_part_redacted.yaml +0 -0
  175. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_thinking_part_redacted_stream.yaml +0 -0
  176. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_thinking_part_stream.yaml +0 -0
  177. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_model_top_p.yaml +0 -0
  178. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_bedrock_multiple_documents_in_history.yaml +0 -0
  179. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_document_url_input.yaml +0 -0
  180. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_image_as_binary_content_input.yaml +0 -0
  181. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_image_url_input.yaml +0 -0
  182. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_text_as_binary_content_input.yaml +0 -0
  183. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_text_document_url_input.yaml +0 -0
  184. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_video_as_binary_content_input.yaml +0 -0
  185. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_bedrock/test_video_url_input.yaml +0 -0
  186. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_cohere/test_cohere_model_instructions.yaml +0 -0
  187. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_cohere/test_cohere_model_thinking_part.yaml +0 -0
  188. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_cohere/test_request_simple_success_with_vcr.yaml +0 -0
  189. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_deepseek/test_deepseek_model_thinking_part.yaml +0 -0
  190. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_deepseek/test_deepseek_model_thinking_stream.yaml +0 -0
  191. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_download_item/test_download_item_application_octet_stream.yaml +0 -0
  192. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_download_item/test_download_item_audio_mpeg.yaml +0 -0
  193. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_download_item/test_download_item_no_content_type.yaml +0 -0
  194. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_document_url_input.yaml +0 -0
  195. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_additional_properties_is_false.yaml +0 -0
  196. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_additional_properties_is_true.yaml +0 -0
  197. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_drop_exclusive_maximum.yaml +0 -0
  198. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_exclusive_minimum_and_maximum.yaml +0 -0
  199. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_model_instructions.yaml +0 -0
  200. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_model_thinking_part.yaml +0 -0
  201. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_native_output.yaml +0 -0
  202. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_native_output_multiple.yaml +0 -0
  203. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_prompted_output.yaml +0 -0
  204. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_prompted_output_multiple.yaml +0 -0
  205. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_prompted_output_with_tools.yaml +0 -0
  206. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_text_output_function.yaml +0 -0
  207. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_tool_config_any_with_tool_without_args.yaml +0 -0
  208. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_tool_output.yaml +0 -0
  209. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_gemini_youtube_video_url_input.yaml +0 -0
  210. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_image_as_binary_content_input.yaml +0 -0
  211. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_image_as_binary_content_tool_response.yaml +0 -0
  212. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_image_url_input.yaml +0 -0
  213. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_labels_are_ignored_with_gla_provider.yaml +0 -0
  214. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_video_as_binary_content_input.yaml +0 -0
  215. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini/test_video_url_input.yaml +0 -0
  216. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini_vertex/test_labels.yaml +0 -0
  217. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini_vertex/test_url_input[AudioUrl (gs)].yaml +0 -0
  218. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini_vertex/test_url_input[AudioUrl].yaml +0 -0
  219. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini_vertex/test_url_input[DocumentUrl (gs)].yaml +0 -0
  220. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini_vertex/test_url_input[DocumentUrl].yaml +0 -0
  221. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini_vertex/test_url_input[ImageUrl (gs)].yaml +0 -0
  222. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini_vertex/test_url_input[ImageUrl].yaml +0 -0
  223. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini_vertex/test_url_input[VideoUrl (YouTube)].yaml +0 -0
  224. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini_vertex/test_url_input[VideoUrl (gs)].yaml +0 -0
  225. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini_vertex/test_url_input[VideoUrl].yaml +0 -0
  226. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_gemini_vertex/test_url_input_force_download.yaml +0 -0
  227. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_builtin_tools_with_other_tools.yaml +0 -0
  228. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model.yaml +0 -0
  229. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_builtin_code_execution_stream.yaml +0 -0
  230. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_code_execution_tool.yaml +0 -0
  231. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_empty_assistant_response.yaml +0 -0
  232. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_empty_user_prompt.yaml +0 -0
  233. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_instructions.yaml +0 -0
  234. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_iter_stream.yaml +0 -0
  235. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_max_tokens.yaml +0 -0
  236. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_multiple_documents_in_history.yaml +0 -0
  237. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_receive_web_search_history_from_another_provider.yaml +0 -0
  238. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_retry.yaml +0 -0
  239. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_safety_settings.yaml +0 -0
  240. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_server_tool_receive_history_from_another_provider.yaml +0 -0
  241. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_stream.yaml +0 -0
  242. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_structured_output.yaml +0 -0
  243. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_thinking_config.yaml +0 -0
  244. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_thinking_part.yaml +0 -0
  245. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_thinking_part_from_other_model.yaml +0 -0
  246. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_thinking_part_iter.yaml +0 -0
  247. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_top_p.yaml +0 -0
  248. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_url_context_tool.yaml +0 -0
  249. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_usage_limit_exceeded.yaml +0 -0
  250. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_usage_limit_not_exceeded.yaml +0 -0
  251. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_vertex_labels.yaml +0 -0
  252. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_vertex_provider.yaml +0 -0
  253. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_video_as_binary_content_input_with_vendor_metadata.yaml +0 -0
  254. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_web_search_tool.yaml +0 -0
  255. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_web_search_tool_stream.yaml +0 -0
  256. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_model_youtube_video_url_input_with_vendor_metadata.yaml +0 -0
  257. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_native_output.yaml +0 -0
  258. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_native_output_multiple.yaml +0 -0
  259. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_prompted_output.yaml +0 -0
  260. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_prompted_output_multiple.yaml +0 -0
  261. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_prompted_output_with_tools.yaml +0 -0
  262. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_text_output_function.yaml +0 -0
  263. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_timeout.yaml +0 -0
  264. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_tool_config_any_with_tool_without_args.yaml +0 -0
  265. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_tool_output.yaml +0 -0
  266. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_url_input[AudioUrl (gs)].yaml +0 -0
  267. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_url_input[AudioUrl].yaml +0 -0
  268. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_url_input[DocumentUrl (gs)].yaml +0 -0
  269. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_url_input[DocumentUrl].yaml +0 -0
  270. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_url_input[ImageUrl (gs)].yaml +0 -0
  271. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_url_input[ImageUrl].yaml +0 -0
  272. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_url_input[VideoUrl (YouTube)].yaml +0 -0
  273. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_url_input[VideoUrl (gs)].yaml +0 -0
  274. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_url_input[VideoUrl].yaml +0 -0
  275. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_url_input_force_download.yaml +0 -0
  276. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_google/test_google_vertexai_model_usage_limit_exceeded.yaml +0 -0
  277. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_extra_headers.yaml +0 -0
  278. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_groq_model_instructions.yaml +0 -0
  279. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_groq_model_thinking_part.yaml +0 -0
  280. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_groq_model_thinking_part_iter.yaml +0 -0
  281. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_groq_model_web_search_tool.yaml +0 -0
  282. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_groq_model_web_search_tool_stream.yaml +0 -0
  283. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_groq_native_output.yaml +0 -0
  284. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_groq_prompted_output.yaml +0 -0
  285. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_image_as_binary_content_input.yaml +0 -0
  286. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_image_as_binary_content_tool_response.yaml +0 -0
  287. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_image_url_input.yaml +0 -0
  288. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_tool_regular_error.yaml +0 -0
  289. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_tool_use_failed_error.yaml +0 -0
  290. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_groq/test_tool_use_failed_error_streaming.yaml +0 -0
  291. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_hf_model_instructions.yaml +0 -0
  292. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_hf_model_thinking_part.yaml +0 -0
  293. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_hf_model_thinking_part_iter.yaml +0 -0
  294. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_image_as_binary_content_input.yaml +0 -0
  295. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_image_url_input.yaml +0 -0
  296. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_max_completion_tokens[Qwen-Qwen2.5-72B-Instruct].yaml +0 -0
  297. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_max_completion_tokens[deepseek-ai-DeepSeek-R1-0528].yaml +0 -0
  298. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_max_completion_tokens[meta-llama-Llama-3.3-70B-Instruct].yaml +0 -0
  299. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_request_simple_success_with_vcr.yaml +0 -0
  300. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_request_simple_usage.yaml +0 -0
  301. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_simple_completion.yaml +0 -0
  302. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_huggingface/test_stream_completion.yaml +0 -0
  303. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_mistral/test_image_as_binary_content_tool_response.yaml +0 -0
  304. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_mistral/test_mistral_model_instructions.yaml +0 -0
  305. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_mistral/test_mistral_model_thinking_part.yaml +0 -0
  306. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_mistral/test_mistral_model_thinking_part_iter.yaml +0 -0
  307. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_model_names/test_known_model_names.yaml +0 -0
  308. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_audio_as_binary_content_input.yaml +0 -0
  309. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_compatible_api_with_tool_calls_without_id.yaml +0 -0
  310. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_document_as_binary_content_input.yaml +0 -0
  311. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_document_as_binary_content_input_with_tool.yaml +0 -0
  312. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_document_url_input.yaml +0 -0
  313. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_extra_headers.yaml +0 -0
  314. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_image_as_binary_content_input.yaml +0 -0
  315. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_image_as_binary_content_tool_response.yaml +0 -0
  316. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_image_url_tool_response.yaml +0 -0
  317. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_invalid_response.yaml +0 -0
  318. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_max_completion_tokens[gpt-4.5-preview].yaml +0 -0
  319. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_max_completion_tokens[gpt-4o-mini].yaml +0 -0
  320. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_max_completion_tokens[o3-mini].yaml +0 -0
  321. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_multiple_agent_tool_calls.yaml +0 -0
  322. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_audio_url_input.yaml +0 -0
  323. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_instructions.yaml +0 -0
  324. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_instructions_with_tool_calls_keep_instructions.yaml +0 -0
  325. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_model_cerebras_provider.yaml +0 -0
  326. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_model_cerebras_provider_harmony.yaml +0 -0
  327. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_model_cerebras_provider_qwen_3_coder.yaml +0 -0
  328. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_model_settings_temperature_ignored_on_gpt_5.yaml +0 -0
  329. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_model_thinking_part.yaml +0 -0
  330. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_model_without_system_prompt.yaml +0 -0
  331. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_native_output.yaml +0 -0
  332. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_native_output_multiple.yaml +0 -0
  333. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_o1_mini_system_role[developer].yaml +0 -0
  334. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_o1_mini_system_role[system].yaml +0 -0
  335. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_prompted_output.yaml +0 -0
  336. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_prompted_output_multiple.yaml +0 -0
  337. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_text_output_function.yaml +0 -0
  338. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_tool_output.yaml +0 -0
  339. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_web_search_tool.yaml +0 -0
  340. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_web_search_tool_model_not_supported.yaml +0 -0
  341. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_openai_web_search_tool_with_user_location.yaml +0 -0
  342. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_reasoning_model_with_temperature.yaml +0 -0
  343. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_system_prompt_role_o1_mini.yaml +0 -0
  344. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_text_response.yaml +0 -0
  345. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_user_id.yaml +0 -0
  346. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai/test_valid_response.yaml +0 -0
  347. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_audio_as_binary_content_input.yaml +0 -0
  348. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_image_as_binary_content_input.yaml +0 -0
  349. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_image_as_binary_content_tool_response.yaml +0 -0
  350. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_native_output.yaml +0 -0
  351. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_native_output_multiple.yaml +0 -0
  352. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_previous_response_id.yaml +0 -0
  353. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_previous_response_id_auto_mode.yaml +0 -0
  354. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_code_execution_return_image.yaml +0 -0
  355. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_document_as_binary_content_input.yaml +0 -0
  356. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_document_url_input.yaml +0 -0
  357. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_image_url_input.yaml +0 -0
  358. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_builtin_tools.yaml +0 -0
  359. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_builtin_tools_web_search.yaml +0 -0
  360. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_http_error.yaml +0 -0
  361. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_instructions.yaml +0 -0
  362. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_retry.yaml +0 -0
  363. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_simple_response.yaml +0 -0
  364. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_simple_response_with_tool_call.yaml +0 -0
  365. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_thinking_part.yaml +0 -0
  366. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool.yaml +0 -0
  367. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool_stream.yaml +0 -0
  368. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool_with_invalid_region.yaml +0 -0
  369. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool_with_user_location.yaml +0 -0
  370. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_non_reasoning_model_no_item_ids.yaml +0 -0
  371. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_output_type.yaml +0 -0
  372. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_reasoning_effort.yaml +0 -0
  373. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_reasoning_generate_summary.yaml +0 -0
  374. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_stream.yaml +0 -0
  375. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_streaming_usage.yaml +0 -0
  376. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_system_prompt.yaml +0 -0
  377. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_text_document_url_input.yaml +0 -0
  378. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_thinking_part_from_other_model.yaml +0 -0
  379. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_thinking_part_iter.yaml +0 -0
  380. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_thinking_with_code_execution_tool.yaml +0 -0
  381. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_thinking_with_code_execution_tool_stream.yaml +0 -0
  382. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_thinking_with_modified_history.yaml +0 -0
  383. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_thinking_with_tool_calls.yaml +0 -0
  384. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_openai_responses_verbosity.yaml +0 -0
  385. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_prompted_output.yaml +0 -0
  386. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_prompted_output_multiple.yaml +0 -0
  387. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_reasoning_model_with_temperature.yaml +0 -0
  388. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_text_output_function.yaml +0 -0
  389. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/cassettes/test_openai_responses/test_tool_output.yaml +0 -0
  390. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/mock_async_stream.py +0 -0
  391. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/mock_openai.py +0 -0
  392. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_bedrock.py +0 -0
  393. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_cohere.py +0 -0
  394. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_deepseek.py +0 -0
  395. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_download_item.py +0 -0
  396. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_fallback.py +0 -0
  397. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_gemini.py +0 -0
  398. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_gemini_vertex.py +0 -0
  399. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_mcp_sampling.py +0 -0
  400. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_mistral.py +0 -0
  401. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_model.py +0 -0
  402. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_model_function.py +0 -0
  403. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_model_request_parameters.py +0 -0
  404. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_model_settings.py +0 -0
  405. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/models/test_model_test.py +0 -0
  406. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/parts_from_messages.py +0 -0
  407. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/__init__.py +0 -0
  408. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/cassettes/test_azure/test_azure_provider_call.yaml +0 -0
  409. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/cassettes/test_gateway/test_gateway_provider_with_anthropic.yaml +0 -0
  410. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/cassettes/test_gateway/test_gateway_provider_with_google_vertex.yaml +0 -0
  411. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/cassettes/test_gateway/test_gateway_provider_with_groq.yaml +0 -0
  412. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/cassettes/test_gateway/test_gateway_provider_with_openai.yaml +0 -0
  413. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/cassettes/test_gateway/test_gateway_provider_with_openai_responses.yaml +0 -0
  414. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/cassettes/test_google_vertex/test_vertexai_provider.yaml +0 -0
  415. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/cassettes/test_heroku/test_heroku_model_provider_claude_3_7_sonnet.yaml +0 -0
  416. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/cassettes/test_openrouter/test_openrouter_with_google_model.yaml +0 -0
  417. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_anthropic.py +0 -0
  418. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_azure.py +0 -0
  419. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_bedrock.py +0 -0
  420. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_cerebras.py +0 -0
  421. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_cohere.py +0 -0
  422. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_deepseek.py +0 -0
  423. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_fireworks.py +0 -0
  424. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_gateway.py +0 -0
  425. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_github.py +0 -0
  426. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_google_gla.py +0 -0
  427. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_google_vertex.py +0 -0
  428. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_grok.py +0 -0
  429. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_groq.py +0 -0
  430. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_heroku.py +0 -0
  431. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_huggingface.py +0 -0
  432. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_litellm.py +0 -0
  433. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_mistral.py +0 -0
  434. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_moonshotai.py +0 -0
  435. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_openai.py +0 -0
  436. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_openrouter.py +0 -0
  437. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_provider_names.py +0 -0
  438. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_together.py +0 -0
  439. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/providers/test_vercel.py +0 -0
  440. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_a2a.py +0 -0
  441. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_ag_ui.py +0 -0
  442. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_builtin_tools.py +0 -0
  443. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_cli.py +0 -0
  444. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_deps.py +0 -0
  445. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_direct.py +0 -0
  446. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_examples.py +0 -0
  447. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_json_body_serializer.py +0 -0
  448. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_live.py +0 -0
  449. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_logfire.py +0 -0
  450. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_mcp.py +0 -0
  451. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_messages.py +0 -0
  452. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_parts_manager.py +0 -0
  453. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_settings.py +0 -0
  454. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_temporal.py +0 -0
  455. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_tenacity.py +0 -0
  456. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_thinking_part.py +0 -0
  457. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_tools.py +0 -0
  458. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_toolsets.py +0 -0
  459. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_usage_limits.py +0 -0
  460. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/test_utils.py +0 -0
  461. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/typed_agent.py +0 -0
  462. {pydantic_ai-1.0.9 → pydantic_ai-1.0.11}/tests/typed_graph.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pydantic-ai
3
- Version: 1.0.9
3
+ Version: 1.0.11
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
@@ -14,7 +14,6 @@ Classifier: Framework :: Pydantic
14
14
  Classifier: Framework :: Pydantic :: 2
15
15
  Classifier: Intended Audience :: Developers
16
16
  Classifier: Intended Audience :: Information Technology
17
- Classifier: License :: OSI Approved :: MIT License
18
17
  Classifier: Operating System :: OS Independent
19
18
  Classifier: Programming Language :: Python
20
19
  Classifier: Programming Language :: Python :: 3
@@ -27,13 +26,13 @@ Classifier: Topic :: Internet
27
26
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
28
27
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
29
28
  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.9
29
+ Requires-Dist: pydantic-ai-slim[ag-ui,anthropic,bedrock,cli,cohere,evals,google,groq,huggingface,logfire,mcp,mistral,openai,retries,temporal,vertexai]==1.0.11
31
30
  Provides-Extra: a2a
32
31
  Requires-Dist: fasta2a>=0.4.1; extra == 'a2a'
33
32
  Provides-Extra: dbos
34
- Requires-Dist: pydantic-ai-slim[dbos]==1.0.9; extra == 'dbos'
33
+ Requires-Dist: pydantic-ai-slim[dbos]==1.0.11; extra == 'dbos'
35
34
  Provides-Extra: examples
36
- Requires-Dist: pydantic-ai-examples==1.0.9; extra == 'examples'
35
+ Requires-Dist: pydantic-ai-examples==1.0.11; extra == 'examples'
37
36
  Description-Content-Type: text/markdown
38
37
 
39
38
  <div align="center">
@@ -95,7 +94,7 @@ Integrates the [Model Context Protocol](https://ai.pydantic.dev/mcp/client), [Ag
95
94
  Easily lets you flag that certain tool calls [require approval](https://ai.pydantic.dev/deferred-tools#human-in-the-loop-tool-approval) before they can proceed, possibly depending on tool call arguments, conversation history, or user preferences.
96
95
 
97
96
  8. **Durable Execution**:
98
- Enables you to build [durable agents](https://ai.pydantic.dev/temporal) that can preserve their progress across transient API failures and application errors or restarts, and handle long-running, asynchronous, and human-in-the-loop workflows with production-grade reliability.
97
+ Enables you to build [durable agents](https://ai.pydantic.dev/durable_execution/overview/) that can preserve their progress across transient API failures and application errors or restarts, and handle long-running, asynchronous, and human-in-the-loop workflows with production-grade reliability.
99
98
 
100
99
  9. **Streamed Outputs**:
101
100
  Provides the ability to [stream](https://ai.pydantic.dev/output#streamed-results) structured output continuously, with immediate validation, ensuring real time access to generated data.
@@ -57,7 +57,7 @@ Integrates the [Model Context Protocol](https://ai.pydantic.dev/mcp/client), [Ag
57
57
  Easily lets you flag that certain tool calls [require approval](https://ai.pydantic.dev/deferred-tools#human-in-the-loop-tool-approval) before they can proceed, possibly depending on tool call arguments, conversation history, or user preferences.
58
58
 
59
59
  8. **Durable Execution**:
60
- Enables you to build [durable agents](https://ai.pydantic.dev/temporal) that can preserve their progress across transient API failures and application errors or restarts, and handle long-running, asynchronous, and human-in-the-loop workflows with production-grade reliability.
60
+ Enables you to build [durable agents](https://ai.pydantic.dev/durable_execution/overview/) that can preserve their progress across transient API failures and application errors or restarts, and handle long-running, asynchronous, and human-in-the-loop workflows with production-grade reliability.
61
61
 
62
62
  9. **Streamed Outputs**:
63
63
  Provides the ability to [stream](https://ai.pydantic.dev/output#streamed-results) structured output continuously, with immediate validation, ensuring real time access to generated data.
@@ -22,6 +22,7 @@ authors = [
22
22
  { name = "Douwe Maan", email = "douwe@pydantic.dev" },
23
23
  ]
24
24
  license = "MIT"
25
+ license-files = ["LICENSE"]
25
26
  readme = "README.md"
26
27
  classifiers = [
27
28
  "Development Status :: 5 - Production/Stable",
@@ -34,7 +35,6 @@ classifiers = [
34
35
  "Programming Language :: Python :: 3.13",
35
36
  "Intended Audience :: Developers",
36
37
  "Intended Audience :: Information Technology",
37
- "License :: OSI Approved :: MIT License",
38
38
  "Operating System :: OS Independent",
39
39
  "Topic :: Internet",
40
40
  "Topic :: Scientific/Engineering :: Artificial Intelligence",
@@ -102,7 +102,7 @@ dev = [
102
102
  "pytest-xdist>=3.6.1",
103
103
  # Needed for PyCharm users
104
104
  "pip>=25.2",
105
- "genai-prices>=0.0.22",
105
+ "genai-prices>=0.0.28",
106
106
  "mcp-run-python>=0.0.20",
107
107
  ]
108
108
  lint = ["mypy>=1.11.2", "pyright>=1.1.390", "ruff>=0.6.9"]
@@ -0,0 +1,74 @@
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
+ - '471'
12
+ content-type:
13
+ - application/json
14
+ host:
15
+ - api.anthropic.com
16
+ method: POST
17
+ parsed_body:
18
+ max_tokens: 4096
19
+ messages:
20
+ - content:
21
+ - text: What is 3 + 3?
22
+ type: text
23
+ role: user
24
+ model: claude-sonnet-4-0
25
+ stream: false
26
+ system: |-
27
+ Always respond with a JSON object that's compatible with this schema:
28
+
29
+ {"properties": {"response": {"type": "integer"}}, "required": ["response"], "type": "object", "title": "int"}
30
+
31
+ Don't include any text or Markdown fencing before or after.
32
+ thinking:
33
+ budget_tokens: 3000
34
+ type: enabled
35
+ uri: https://api.anthropic.com/v1/messages?beta=true
36
+ response:
37
+ headers:
38
+ connection:
39
+ - keep-alive
40
+ content-length:
41
+ - '1032'
42
+ content-type:
43
+ - application/json
44
+ strict-transport-security:
45
+ - max-age=31536000; includeSubDomains; preload
46
+ transfer-encoding:
47
+ - chunked
48
+ parsed_body:
49
+ content:
50
+ - signature: ErQCCkYICBgCKkDId3yuTWB+RmnrHX1N/m+Q+uvt6TTyU6tRWGzFYK1UmQo+lkK5PFjgRvLK6eXA/q8sbVIC6mO3/1eq5aTkSX7+EgzYnRzfZdWJZ1X+410aDC5zyOhlAbOmBiBUmiIwPC3/mI3lVg3woo5Q2jwuZ/u+Pl8LMzrFxG0YbK2F5YDVuCjhrJsOq5e1V36GWJjqKpsBsKiPfPZQ6wizN25g64pwJb+Wjm55hDeGpK8xJeVFuren6PNKKkruBtlK1PIVpjSXBGkdTJCC69xlhwaXF20zah/A8HDm/2QEqid8Gz8+7zu+b7OGa22WdW0uZEwQgJtydTscZFqWzyAm8CZtsCh8STbRNPggOaCNg9vX5ipu2D+jXnAaL6MIOOQ3FUO+CdljS0mvfoyeCabS8TUYAQ==
51
+ thinking: The user is asking for 3 + 3, which equals 6. I need to respond with a JSON object that has a "response"
52
+ field containing an integer value.
53
+ type: thinking
54
+ - text: '{"response": 6}'
55
+ type: text
56
+ id: msg_01Fo4JKsQzJMTQBgLSAeCJDG
57
+ model: claude-sonnet-4-20250514
58
+ role: assistant
59
+ stop_reason: end_turn
60
+ stop_sequence: null
61
+ type: message
62
+ usage:
63
+ cache_creation:
64
+ ephemeral_1h_input_tokens: 0
65
+ ephemeral_5m_input_tokens: 0
66
+ cache_creation_input_tokens: 0
67
+ cache_read_input_tokens: 0
68
+ input_tokens: 105
69
+ output_tokens: 55
70
+ service_tier: standard
71
+ status:
72
+ code: 200
73
+ message: OK
74
+ version: 1
@@ -251,12 +251,10 @@ interactions:
251
251
  headers:
252
252
  accept-ranges:
253
253
  - bytes
254
- age:
255
- - '264068'
256
254
  alt-svc:
257
255
  - h3=":443"; ma=86400
258
256
  cache-control:
259
- - public, max-age=604800, s-maxage=604800
257
+ - max-age=21600
260
258
  connection:
261
259
  - keep-alive
262
260
  content-length:
@@ -268,7 +266,7 @@ interactions:
268
266
  etag:
269
267
  - '"33d0-438b181451e00"'
270
268
  expires:
271
- - Tue, 24 Jun 2025 13:27:15 GMT
269
+ - Fri, 19 Sep 2025 22:42:26 GMT
272
270
  last-modified:
273
271
  - Mon, 27 Aug 2007 17:15:36 GMT
274
272
  strict-transport-security:
@@ -312,11 +310,11 @@ interactions:
312
310
  alt-svc:
313
311
  - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
314
312
  content-length:
315
- - '776'
313
+ - '772'
316
314
  content-type:
317
315
  - application/json; charset=UTF-8
318
316
  server-timing:
319
- - gfet4t7; dur=1228
317
+ - gfet4t7; dur=1306
320
318
  transfer-encoding:
321
319
  - chunked
322
320
  vary:
@@ -325,27 +323,27 @@ interactions:
325
323
  - Referer
326
324
  parsed_body:
327
325
  candidates:
328
- - avgLogprobs: -0.28572704394658405
326
+ - avgLogprobs: -0.2349079738963734
329
327
  content:
330
328
  parts:
331
329
  - text: |
332
- The document appears to be a "Dummy PDF file".
330
+ The document appears to be a dummy PDF file.
333
331
  role: model
334
332
  finishReason: STOP
335
333
  modelVersion: gemini-2.0-flash
336
- responseId: 4FpeaJWYOLq3nvgP0vasuQk
334
+ responseId: 8ofNaO_lJsO1qtsP0OzFsQQ
337
335
  usageMetadata:
338
- candidatesTokenCount: 12
336
+ candidatesTokenCount: 11
339
337
  candidatesTokensDetails:
340
338
  - modality: TEXT
341
- tokenCount: 12
339
+ tokenCount: 11
342
340
  promptTokenCount: 1305
343
341
  promptTokensDetails:
344
- - modality: TEXT
345
- tokenCount: 15
346
342
  - modality: DOCUMENT
347
343
  tokenCount: 1290
348
- totalTokenCount: 1317
344
+ - modality: TEXT
345
+ tokenCount: 15
346
+ totalTokenCount: 1316
349
347
  status:
350
348
  code: 200
351
349
  message: OK
@@ -33,11 +33,11 @@ interactions:
33
33
  alt-svc:
34
34
  - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
35
35
  content-length:
36
- - '756'
36
+ - '754'
37
37
  content-type:
38
38
  - application/json; charset=UTF-8
39
39
  server-timing:
40
- - gfet4t7; dur=2659
40
+ - gfet4t7; dur=1900
41
41
  transfer-encoding:
42
42
  - chunked
43
43
  vary:
@@ -46,14 +46,14 @@ interactions:
46
46
  - Referer
47
47
  parsed_body:
48
48
  candidates:
49
- - avgLogprobs: -0.005608726706769731
49
+ - avgLogprobs: -0.00857612325085534
50
50
  content:
51
51
  parts:
52
52
  - text: The fruit in the image is a kiwi.
53
53
  role: model
54
54
  finishReason: STOP
55
55
  modelVersion: gemini-2.0-flash
56
- responseId: 2VpeaPm3DaHp1PIPwK-EmAM
56
+ responseId: 4YfNaLXqOsKVmtkPqqehuAQ
57
57
  usageMetadata:
58
58
  candidatesTokenCount: 9
59
59
  candidatesTokensDetails:
@@ -61,10 +61,10 @@ interactions:
61
61
  tokenCount: 9
62
62
  promptTokenCount: 3367
63
63
  promptTokensDetails:
64
- - modality: TEXT
65
- tokenCount: 13
66
64
  - modality: IMAGE
67
65
  tokenCount: 3354
66
+ - modality: TEXT
67
+ tokenCount: 13
68
68
  totalTokenCount: 3376
69
69
  status:
70
70
  code: 200
@@ -580,7 +580,7 @@ interactions:
580
580
  access-control-allow-origin:
581
581
  - '*'
582
582
  age:
583
- - '1386476'
583
+ - '1500997'
584
584
  cache-control:
585
585
  - public, max-age=31536000
586
586
  connection:
@@ -632,11 +632,11 @@ interactions:
632
632
  alt-svc:
633
633
  - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
634
634
  content-length:
635
- - '740'
635
+ - '738'
636
636
  content-type:
637
637
  - application/json; charset=UTF-8
638
638
  server-timing:
639
- - gfet4t7; dur=1424
639
+ - gfet4t7; dur=867
640
640
  transfer-encoding:
641
641
  - chunked
642
642
  vary:
@@ -645,27 +645,26 @@ interactions:
645
645
  - Referer
646
646
  parsed_body:
647
647
  candidates:
648
- - avgLogprobs: -0.1821905771891276
648
+ - avgLogprobs: -0.18855420351028443
649
649
  content:
650
650
  parts:
651
- - text: |
652
- That is a potato.
651
+ - text: That is a potato.
653
652
  role: model
654
653
  finishReason: STOP
655
654
  modelVersion: gemini-2.0-flash
656
- responseId: 3VpeaPexBLq3nvgP0vasuQk
655
+ responseId: 64fNaIPHJNulqtsPx8OZsQQ
657
656
  usageMetadata:
658
- candidatesTokenCount: 6
657
+ candidatesTokenCount: 5
659
658
  candidatesTokensDetails:
660
659
  - modality: TEXT
661
- tokenCount: 6
660
+ tokenCount: 5
662
661
  promptTokenCount: 1817
663
662
  promptTokensDetails:
664
663
  - modality: TEXT
665
664
  tokenCount: 11
666
665
  - modality: IMAGE
667
666
  tokenCount: 1806
668
- totalTokenCount: 1823
667
+ totalTokenCount: 1822
669
668
  status:
670
669
  code: 200
671
670
  message: OK
@@ -33,11 +33,11 @@ interactions:
33
33
  alt-svc:
34
34
  - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
35
35
  content-length:
36
- - '712'
36
+ - '710'
37
37
  content-type:
38
38
  - application/json; charset=UTF-8
39
39
  server-timing:
40
- - gfet4t7; dur=459
40
+ - gfet4t7; dur=571
41
41
  transfer-encoding:
42
42
  - chunked
43
43
  vary:
@@ -46,7 +46,7 @@ interactions:
46
46
  - Referer
47
47
  parsed_body:
48
48
  candidates:
49
- - avgLogprobs: -0.014047189553578695
49
+ - avgLogprobs: -0.2041482448577881
50
50
  content:
51
51
  parts:
52
52
  - text: |
@@ -54,7 +54,7 @@ interactions:
54
54
  role: model
55
55
  finishReason: STOP
56
56
  modelVersion: gemini-2.0-flash
57
- responseId: 41peaPz5EtOvnvgPgYfPiQY
57
+ responseId: 9ofNaNqNKNWDmtkPs-nsqAU
58
58
  usageMetadata:
59
59
  candidatesTokenCount: 15
60
60
  candidatesTokensDetails:
@@ -49,9 +49,11 @@ interactions:
49
49
  etag:
50
50
  - W/"61efea10-a0e"
51
51
  expires:
52
- - Fri, 04 Jul 2025 08:48:34 GMT
52
+ - Fri, 26 Sep 2025 16:42:28 GMT
53
53
  last-modified:
54
54
  - Tue, 25 Jan 2022 12:16:16 GMT
55
+ strict-transport-security:
56
+ - max-age=15552000; includeSubDomains
55
57
  transfer-encoding:
56
58
  - chunked
57
59
  vary:
@@ -93,11 +95,11 @@ interactions:
93
95
  alt-svc:
94
96
  - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
95
97
  content-length:
96
- - '1189'
98
+ - '985'
97
99
  content-type:
98
100
  - application/json; charset=UTF-8
99
101
  server-timing:
100
- - gfet4t7; dur=802
102
+ - gfet4t7; dur=888
101
103
  transfer-encoding:
102
104
  - chunked
103
105
  vary:
@@ -106,25 +108,25 @@ interactions:
106
108
  - Referer
107
109
  parsed_body:
108
110
  candidates:
109
- - avgLogprobs: -0.6026712397939151
111
+ - avgLogprobs: -0.5004191543116714
110
112
  content:
111
113
  parts:
112
114
  - text: |
113
- The main content of the document is an example of a TXT file, specifically providing information about the placeholder names "John Doe" (and related variations) used for unidentified or anonymous individuals, particularly in legal contexts in the United States and Canada. It also explains alternative names used in other countries and some additional context and examples of when "John Doe" might be used. The document also includes attribution to Wikipedia for the example content and a link to the license under which it is shared.
115
+ The main content of the TXT file is an explanation of the placeholder name "John Doe" (and related variations) and its usage in legal contexts, popular culture, and other situations where the identity of a person is unknown or needs to be withheld. The document also includes the purpose of the file and other file type information.
114
116
  role: model
115
117
  finishReason: STOP
116
118
  modelVersion: gemini-2.0-flash
117
- responseId: 4lpeaLX9EYzj1PIP0MPrsAg
119
+ responseId: 9YfNaLGGDuOmqtsPoLXu4AQ
118
120
  usageMetadata:
119
- candidatesTokenCount: 97
121
+ candidatesTokenCount: 66
120
122
  candidatesTokensDetails:
121
123
  - modality: TEXT
122
- tokenCount: 97
124
+ tokenCount: 66
123
125
  promptTokenCount: 614
124
126
  promptTokensDetails:
125
127
  - modality: TEXT
126
128
  tokenCount: 614
127
- totalTokenCount: 711
129
+ totalTokenCount: 680
128
130
  status:
129
131
  code: 200
130
132
  message: OK
@@ -33,11 +33,11 @@ interactions:
33
33
  alt-svc:
34
34
  - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
35
35
  content-length:
36
- - '1384'
36
+ - '1525'
37
37
  content-type:
38
38
  - application/json; charset=UTF-8
39
39
  server-timing:
40
- - gfet4t7; dur=1776
40
+ - gfet4t7; dur=2522
41
41
  transfer-encoding:
42
42
  - chunked
43
43
  vary:
@@ -46,31 +46,33 @@ interactions:
46
46
  - Referer
47
47
  parsed_body:
48
48
  candidates:
49
- - avgLogprobs: -0.7381779328557371
49
+ - avgLogprobs: -0.7307238166714892
50
50
  content:
51
51
  parts:
52
- - text: |-
53
- Okay, I can describe what is visible in the image.
54
-
55
- The image shows a camera setup in an outdoor setting. The camera is mounted on a tripod and has an external monitor attached to it. The monitor is displaying a scene that appears to be a desert landscape with rocky formations and mountains in the background. The foreground and background of the overall image, outside of the camera monitor, is also a blurry, desert landscape. The colors in the background are warm and suggest either sunrise, sunset, or reflected light off the rock formations.
56
-
57
- It looks like someone is either reviewing footage on the monitor, or using it as an aid for framing the shot.
52
+ - text: "Okay! It looks like the image shows a camera monitor, likely used for professional or semi-professional
53
+ video recording. \n\nHere's what I can gather from the image:\n\n* **Camera Monitor:** The central element
54
+ is a small screen attached to a camera rig (tripod and probably camera body). These monitors are used to provide
55
+ a larger, clearer view of what the camera is recording, aiding in focus, composition, and exposure adjustments.\n*
56
+ \ **Scene on Monitor:** The screen shows an image of what appears to be a rocky mountain path or canyon with
57
+ a snow capped mountain in the distance.\n* **Background:** The background is blurred, likely the same scene
58
+ as on the camera monitor.\n\nLet me know if you want me to focus on any specific aspect or detail!"
58
59
  role: model
59
60
  finishReason: STOP
60
61
  modelVersion: gemini-2.0-flash
61
- responseId: 21peaP3fE4fJ1PIPhdaDmA0
62
+ responseId: 5YfNaKulJaGtmtkPz5eQwAQ
62
63
  usageMetadata:
63
- candidatesTokenCount: 131
64
+ candidatesTokenCount: 162
64
65
  candidatesTokensDetails:
65
66
  - modality: TEXT
66
- tokenCount: 131
67
- promptTokenCount: 270
67
+ tokenCount: 162
68
+ promptTokenCount: 268
68
69
  promptTokensDetails:
69
- - modality: VIDEO
70
- tokenCount: 260
70
+ - modality: AUDIO
71
71
  - modality: TEXT
72
72
  tokenCount: 10
73
- totalTokenCount: 401
73
+ - modality: VIDEO
74
+ tokenCount: 258
75
+ totalTokenCount: 430
74
76
  status:
75
77
  code: 200
76
78
  message: OK
@@ -27,23 +27,24 @@ interactions:
27
27
  gist.github.com/assets-cdn/worker/; connect-src ''self'' uploads.github.com www.githubstatus.com collector.github.com
28
28
  raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com
29
29
  github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com
30
- *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com
31
- proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com
32
- wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/
33
- productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/
34
- productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/
35
- productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/
36
- productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/
37
- productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/
38
- productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/
39
- github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com
40
- insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com
41
- api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action ''self'' github.com gist.github.com
42
- copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors ''none''; frame-src viewscreen.githubusercontent.com
43
- notebooks.githubusercontent.com; img-src ''self'' data: blob: github.githubassets.com media.githubusercontent.com
44
- camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com
45
- github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/
46
- user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/
30
+ *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com github.githubassets.com objects-origin.githubusercontent.com
31
+ copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com
32
+ *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/
33
+ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/
34
+ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/
35
+ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/
36
+ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/
37
+ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/
38
+ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/
39
+ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com
40
+ insights.github.com wss://alive.github.com wss://alive-staging.github.com api.githubcopilot.com api.individual.githubcopilot.com
41
+ api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action ''self''
42
+ github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors
43
+ ''none''; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src ''self'' data: blob:
44
+ github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com
45
+ private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com
46
+ secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com
47
+ opengraph.githubassets.com marketplace-screenshots.githubusercontent.com/ copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/
47
48
  github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com
48
49
  *.githubusercontent.com; manifest-src ''self''; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/
49
50
  private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src
@@ -11091,7 +11092,7 @@ interactions:
11091
11092
  etag:
11092
11093
  - W/"0e8fc2491b5d905053d769cebf41efa65670fdce574bc3d0a132431e025608d7"
11093
11094
  expires:
11094
- - Fri, 27 Jun 2025 08:53:30 GMT
11095
+ - Fri, 19 Sep 2025 16:47:21 GMT
11095
11096
  source-age:
11096
11097
  - '0'
11097
11098
  strict-transport-security:
@@ -11135,11 +11136,11 @@ interactions:
11135
11136
  alt-svc:
11136
11137
  - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
11137
11138
  content-length:
11138
- - '1068'
11139
+ - '1381'
11139
11140
  content-type:
11140
11141
  - application/json; charset=UTF-8
11141
11142
  server-timing:
11142
- - gfet4t7; dur=1439
11143
+ - gfet4t7; dur=2356
11143
11144
  transfer-encoding:
11144
11145
  - chunked
11145
11146
  vary:
@@ -11148,33 +11149,32 @@ interactions:
11148
11149
  - Referer
11149
11150
  parsed_body:
11150
11151
  candidates:
11151
- - avgLogprobs: -0.7620539724090953
11152
+ - avgLogprobs: -0.8202069508943627
11152
11153
  content:
11153
11154
  parts:
11154
- - text: |-
11155
- Okay, based on the image, here's what I can infer:
11156
-
11157
- * **A camera monitor is mounted on top of a camera.**
11158
- * **The monitor's screen is on, displaying a view of the rocky mountains.**
11159
- * **This setting suggests a professional video shoot.**
11160
-
11161
- If you'd like a more detailed explanation, please provide additional information about the video.
11155
+ - text: "Certainly! Based on the image you sent, it appears to be a setup for filming or photography. \n\nHere's
11156
+ what I can observe:\n\n* **Camera Monitor:** There is a monitor mounted on a tripod, displaying a shot of
11157
+ a canyon or mountain landscape.\n* **Camera/Recording Device:** Below the monitor, there is a camera or some
11158
+ other kind of recording device.\n* **Landscape Backdrop:** In the background, there is a similar-looking landscape
11159
+ to what's being displayed on the screen.\n\nIn summary, it looks like the image shows a camera setup, perhaps
11160
+ in the process of filming, with a monitor to review the footage."
11162
11161
  role: model
11163
11162
  finishReason: STOP
11164
11163
  modelVersion: gemini-2.0-flash
11165
- responseId: 31peaJ-RIOrIx_APoM6e2A4
11164
+ responseId: 7ofNaJWHAbCtmtkPkoSwwQU
11166
11165
  usageMetadata:
11167
- candidatesTokenCount: 81
11166
+ candidatesTokenCount: 139
11168
11167
  candidatesTokensDetails:
11169
11168
  - modality: TEXT
11170
- tokenCount: 81
11171
- promptTokenCount: 270
11169
+ tokenCount: 139
11170
+ promptTokenCount: 268
11172
11171
  promptTokensDetails:
11172
+ - modality: VIDEO
11173
+ tokenCount: 258
11173
11174
  - modality: TEXT
11174
11175
  tokenCount: 10
11175
- - modality: VIDEO
11176
- tokenCount: 260
11177
- totalTokenCount: 351
11176
+ - modality: AUDIO
11177
+ totalTokenCount: 407
11178
11178
  status:
11179
11179
  code: 200
11180
11180
  message: OK
@@ -2,6 +2,7 @@ from __future__ import annotations as _annotations
2
2
 
3
3
  import json
4
4
  import os
5
+ import re
5
6
  from collections.abc import Callable, Sequence
6
7
  from dataclasses import dataclass, field
7
8
  from datetime import timezone
@@ -4182,6 +4183,29 @@ async def test_anthropic_native_output(allow_model_requests: None, anthropic_api
4182
4183
  await agent.run('What is the largest city in the user country?')
4183
4184
 
4184
4185
 
4186
+ async def test_anthropic_output_tool_with_thinking(allow_model_requests: None, anthropic_api_key: str):
4187
+ m = AnthropicModel(
4188
+ 'claude-sonnet-4-0',
4189
+ provider=AnthropicProvider(api_key=anthropic_api_key),
4190
+ settings=AnthropicModelSettings(anthropic_thinking={'type': 'enabled', 'budget_tokens': 3000}),
4191
+ )
4192
+
4193
+ agent = Agent(m, output_type=int)
4194
+
4195
+ with pytest.raises(
4196
+ UserError,
4197
+ match=re.escape(
4198
+ 'Anthropic does not support thinking and output tools at the same time. Use `output_type=PromptedOutput(...)` instead.'
4199
+ ),
4200
+ ):
4201
+ await agent.run('What is 3 + 3?')
4202
+
4203
+ agent = Agent(m, output_type=PromptedOutput(int))
4204
+
4205
+ result = await agent.run('What is 3 + 3?')
4206
+ assert result.output == snapshot(6)
4207
+
4208
+
4185
4209
  async def test_anthropic_tool_with_thinking(allow_model_requests: None, anthropic_api_key: str):
4186
4210
  """When using thinking with tool calls in Anthropic, we need to send the thinking part back to the provider.
4187
4211