pydantic-ai 0.7.1__tar.gz → 0.7.2__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 (395) hide show
  1. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/PKG-INFO +3 -3
  2. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/conftest.py +19 -0
  3. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_otel.py +0 -10
  4. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_anthropic_code_execution_tool.yaml +12 -9
  5. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_anthropic_model_empty_message_on_history.yaml +12 -9
  6. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_anthropic_model_instructions.yaml +6 -3
  7. pydantic_ai-0.7.2/tests/models/cassettes/test_anthropic/test_anthropic_model_thinking_part.yaml +255 -0
  8. pydantic_ai-0.7.2/tests/models/cassettes/test_anthropic/test_anthropic_model_thinking_part_stream.yaml +270 -0
  9. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_anthropic_prompted_output.yaml +15 -9
  10. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_anthropic_prompted_output_multiple.yaml +9 -6
  11. pydantic_ai-0.7.2/tests/models/cassettes/test_anthropic/test_anthropic_server_tool_pass_history_to_another_provider.yaml +301 -0
  12. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_anthropic_server_tool_receive_history_from_another_provider.yaml +21 -18
  13. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_anthropic_text_output_function.yaml +24 -19
  14. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_anthropic_tool_output.yaml +16 -10
  15. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_anthropic_tool_with_thinking.yaml +26 -19
  16. pydantic_ai-0.7.2/tests/models/cassettes/test_anthropic/test_anthropic_web_search_tool.yaml +187 -0
  17. pydantic_ai-0.7.2/tests/models/cassettes/test_anthropic/test_anthropic_web_search_tool_stream.yaml +230 -0
  18. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_document_binary_content_input.yaml +7 -4
  19. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_document_url_input.yaml +12 -9
  20. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_extra_headers.yaml +6 -3
  21. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_image_as_binary_content_tool_response.yaml +24 -17
  22. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_image_url_input.yaml +11 -8
  23. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_image_url_input_invalid_mime_type.yaml +12 -9
  24. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_multiple_parallel_tool_calls.yaml +39 -27
  25. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_anthropic/test_text_document_url_input.yaml +13 -20
  26. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_anthropic.py +329 -272
  27. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_bedrock.py +7 -1
  28. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_deepseek.py +1 -1
  29. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_huggingface.py +1 -1
  30. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_openai.py +3 -2
  31. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_bedrock.py +4 -3
  32. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_groq.py +4 -2
  33. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_huggingface.py +47 -0
  34. pydantic_ai-0.7.2/tests/providers/test_ollama.py +120 -0
  35. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_openrouter.py +8 -0
  36. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_provider_names.py +2 -0
  37. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_ag_ui.py +1 -12
  38. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_agent.py +318 -8
  39. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_temporal.py +330 -115
  40. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_tools.py +3 -4
  41. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_toolsets.py +14 -11
  42. pydantic_ai-0.7.1/tests/models/cassettes/test_anthropic/test_anthropic_model_thinking_part.yaml +0 -230
  43. pydantic_ai-0.7.1/tests/models/cassettes/test_anthropic/test_anthropic_model_thinking_part_stream.yaml +0 -231
  44. pydantic_ai-0.7.1/tests/models/cassettes/test_anthropic/test_anthropic_server_tool_pass_history_to_another_provider.yaml +0 -280
  45. pydantic_ai-0.7.1/tests/models/cassettes/test_anthropic/test_anthropic_web_search_tool.yaml +0 -166
  46. pydantic_ai-0.7.1/tests/models/cassettes/test_anthropic/test_anthropic_web_search_tool_stream.yaml +0 -250
  47. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/.gitignore +0 -0
  48. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/LICENSE +0 -0
  49. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/Makefile +0 -0
  50. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/README.md +0 -0
  51. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/pyproject.toml +0 -0
  52. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/__init__.py +0 -0
  53. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/assets/dummy.pdf +0 -0
  54. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/assets/kiwi.png +0 -0
  55. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/assets/marcelo.mp3 +0 -0
  56. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/assets/product_name.txt +0 -0
  57. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/assets/small_video.mp4 +0 -0
  58. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_agent_with_server_not_running.yaml +0 -0
  59. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_agent_with_stdio_server.yaml +0 -0
  60. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_audio_resource.yaml +0 -0
  61. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_audio_resource_link.yaml +0 -0
  62. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_dict.yaml +0 -0
  63. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_error.yaml +0 -0
  64. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_image.yaml +0 -0
  65. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_image_resource.yaml +0 -0
  66. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_image_resource_link.yaml +0 -0
  67. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_multiple_items.yaml +0 -0
  68. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_none.yaml +0 -0
  69. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_str.yaml +0 -0
  70. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_text_resource.yaml +0 -0
  71. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_mcp/test_tool_returning_text_resource_link.yaml +0 -0
  72. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_settings/test_stop_settings[anthropic].yaml +0 -0
  73. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_settings/test_stop_settings[bedrock].yaml +0 -0
  74. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_settings/test_stop_settings[cohere].yaml +0 -0
  75. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_settings/test_stop_settings[gemini].yaml +0 -0
  76. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_settings/test_stop_settings[google].yaml +0 -0
  77. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_settings/test_stop_settings[groq].yaml +0 -0
  78. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_settings/test_stop_settings[mistral].yaml +0 -0
  79. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_settings/test_stop_settings[openai].yaml +0 -0
  80. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_complex_agent_run.yaml +0 -0
  81. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_complex_agent_run_in_workflow.yaml +0 -0
  82. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_complex_agent_run_stream_in_workflow.yaml +0 -0
  83. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_logfire_plugin.yaml +0 -0
  84. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_multiple_agents.yaml +0 -0
  85. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_simple_agent_run_in_workflow.yaml +0 -0
  86. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_temporal_agent_iter.yaml +0 -0
  87. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_temporal_agent_override_deps_in_workflow.yaml +0 -0
  88. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_temporal_agent_run.yaml +0 -0
  89. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_temporal_agent_run_stream.yaml +0 -0
  90. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_temporal_agent_run_sync.yaml +0 -0
  91. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_temporal_agent_sync_tool_activity_disabled.yaml +0 -0
  92. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_temporal_agent_with_dataclass_deps_as_dict.yaml +0 -0
  93. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_temporal_agent_with_non_dict_deps.yaml +0 -0
  94. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/cassettes/test_temporal/test_temporal_agent_with_unserializable_deps_type.yaml +0 -0
  95. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/__init__.py +0 -0
  96. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_dataset.py +0 -0
  97. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_evaluator_base.py +0 -0
  98. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_evaluator_common.py +0 -0
  99. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_evaluator_context.py +0 -0
  100. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_evaluator_spec.py +0 -0
  101. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_evaluators.py +0 -0
  102. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_llm_as_a_judge.py +0 -0
  103. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_render_numbers.py +0 -0
  104. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_reporting.py +0 -0
  105. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_reports.py +0 -0
  106. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/test_utils.py +0 -0
  107. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/evals/utils.py +0 -0
  108. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/example_modules/README.md +0 -0
  109. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/example_modules/bank_database.py +0 -0
  110. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/example_modules/fake_database.py +0 -0
  111. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/example_modules/mcp_server.py +0 -0
  112. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/example_modules/weather_service.py +0 -0
  113. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/ext/__init__.py +0 -0
  114. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/ext/test_langchain.py +0 -0
  115. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/graph/__init__.py +0 -0
  116. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/graph/test_file_persistence.py +0 -0
  117. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/graph/test_graph.py +0 -0
  118. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/graph/test_mermaid.py +0 -0
  119. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/graph/test_persistence.py +0 -0
  120. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/graph/test_state.py +0 -0
  121. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/graph/test_utils.py +0 -0
  122. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/import_examples.py +0 -0
  123. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/json_body_serializer.py +0 -0
  124. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/mcp_server.py +0 -0
  125. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/__init__.py +0 -0
  126. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_anthropic_tool_with_thinking.yaml +0 -0
  127. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_empty_system_prompt.yaml +0 -0
  128. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model.yaml +0 -0
  129. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_anthropic_model_without_tools.yaml +0 -0
  130. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_guardrail_config.yaml +0 -0
  131. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_instructions.yaml +0 -0
  132. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_iter_stream.yaml +0 -0
  133. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_max_tokens.yaml +0 -0
  134. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_other_parameters.yaml +0 -0
  135. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_performance_config.yaml +0 -0
  136. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_retry.yaml +0 -0
  137. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_stream.yaml +0 -0
  138. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_structured_output.yaml +0 -0
  139. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_thinking_part.yaml +0 -0
  140. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_thinking_part_stream.yaml +0 -0
  141. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_model_top_p.yaml +0 -0
  142. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_bedrock_multiple_documents_in_history.yaml +0 -0
  143. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_document_url_input.yaml +0 -0
  144. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_image_as_binary_content_input.yaml +0 -0
  145. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_image_url_input.yaml +0 -0
  146. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_text_as_binary_content_input.yaml +0 -0
  147. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_text_document_url_input.yaml +0 -0
  148. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_video_as_binary_content_input.yaml +0 -0
  149. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_bedrock/test_video_url_input.yaml +0 -0
  150. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_cohere/test_cohere_model_instructions.yaml +0 -0
  151. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_cohere/test_cohere_model_thinking_part.yaml +0 -0
  152. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_cohere/test_request_simple_success_with_vcr.yaml +0 -0
  153. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_deepseek/test_deepseek_model_thinking_part.yaml +0 -0
  154. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_deepseek/test_deepseek_model_thinking_stream.yaml +0 -0
  155. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_download_item/test_download_item_application_octet_stream.yaml +0 -0
  156. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_download_item/test_download_item_audio_mpeg.yaml +0 -0
  157. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_download_item/test_download_item_no_content_type.yaml +0 -0
  158. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_document_url_input.yaml +0 -0
  159. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_additional_properties_is_false.yaml +0 -0
  160. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_additional_properties_is_true.yaml +0 -0
  161. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_drop_exclusive_maximum.yaml +0 -0
  162. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_exclusive_minimum_and_maximum.yaml +0 -0
  163. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_model_instructions.yaml +0 -0
  164. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_model_thinking_part.yaml +0 -0
  165. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_native_output.yaml +0 -0
  166. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_native_output_multiple.yaml +0 -0
  167. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_prompted_output.yaml +0 -0
  168. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_prompted_output_multiple.yaml +0 -0
  169. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_prompted_output_with_tools.yaml +0 -0
  170. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_text_output_function.yaml +0 -0
  171. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_tool_config_any_with_tool_without_args.yaml +0 -0
  172. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_tool_output.yaml +0 -0
  173. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_gemini_youtube_video_url_input.yaml +0 -0
  174. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_image_as_binary_content_input.yaml +0 -0
  175. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_image_as_binary_content_tool_response.yaml +0 -0
  176. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_image_url_input.yaml +0 -0
  177. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_labels_are_ignored_with_gla_provider.yaml +0 -0
  178. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_video_as_binary_content_input.yaml +0 -0
  179. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini/test_video_url_input.yaml +0 -0
  180. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini_vertex/test_labels.yaml +0 -0
  181. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini_vertex/test_url_input[AudioUrl (gs)].yaml +0 -0
  182. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini_vertex/test_url_input[AudioUrl].yaml +0 -0
  183. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini_vertex/test_url_input[DocumentUrl (gs)].yaml +0 -0
  184. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini_vertex/test_url_input[DocumentUrl].yaml +0 -0
  185. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini_vertex/test_url_input[ImageUrl (gs)].yaml +0 -0
  186. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini_vertex/test_url_input[ImageUrl].yaml +0 -0
  187. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini_vertex/test_url_input[VideoUrl (YouTube)].yaml +0 -0
  188. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini_vertex/test_url_input[VideoUrl (gs)].yaml +0 -0
  189. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini_vertex/test_url_input[VideoUrl].yaml +0 -0
  190. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_gemini_vertex/test_url_input_force_download.yaml +0 -0
  191. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model.yaml +0 -0
  192. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_code_execution_tool.yaml +0 -0
  193. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_document_url_input.yaml +0 -0
  194. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_empty_assistant_response.yaml +0 -0
  195. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_empty_user_prompt.yaml +0 -0
  196. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_image_as_binary_content_input.yaml +0 -0
  197. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_image_url_input.yaml +0 -0
  198. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_instructions.yaml +0 -0
  199. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_iter_stream.yaml +0 -0
  200. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_max_tokens.yaml +0 -0
  201. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_multiple_documents_in_history.yaml +0 -0
  202. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_receive_web_search_history_from_another_provider.yaml +0 -0
  203. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_retry.yaml +0 -0
  204. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_safety_settings.yaml +0 -0
  205. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_server_tool_receive_history_from_another_provider.yaml +0 -0
  206. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_stream.yaml +0 -0
  207. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_structured_output.yaml +0 -0
  208. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_text_as_binary_content_input.yaml +0 -0
  209. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_text_document_url_input.yaml +0 -0
  210. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_thinking_config.yaml +0 -0
  211. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_thinking_part.yaml +0 -0
  212. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_thinking_part_iter.yaml +0 -0
  213. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_top_p.yaml +0 -0
  214. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_usage_limit_exceeded.yaml +0 -0
  215. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_usage_limit_not_exceeded.yaml +0 -0
  216. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_vertex_labels.yaml +0 -0
  217. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_vertex_provider.yaml +0 -0
  218. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_video_as_binary_content_input.yaml +0 -0
  219. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_video_as_binary_content_input_with_vendor_metadata.yaml +0 -0
  220. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_video_url_input.yaml +0 -0
  221. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_web_search_tool.yaml +0 -0
  222. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_model_youtube_video_url_input_with_vendor_metadata.yaml +0 -0
  223. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_native_output.yaml +0 -0
  224. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_native_output_multiple.yaml +0 -0
  225. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_prompted_output.yaml +0 -0
  226. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_prompted_output_multiple.yaml +0 -0
  227. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_prompted_output_with_tools.yaml +0 -0
  228. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_text_output_function.yaml +0 -0
  229. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_timeout.yaml +0 -0
  230. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_tool_config_any_with_tool_without_args.yaml +0 -0
  231. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_tool_output.yaml +0 -0
  232. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_url_input[AudioUrl (gs)].yaml +0 -0
  233. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_url_input[AudioUrl].yaml +0 -0
  234. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_url_input[DocumentUrl (gs)].yaml +0 -0
  235. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_url_input[DocumentUrl].yaml +0 -0
  236. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_url_input[ImageUrl (gs)].yaml +0 -0
  237. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_url_input[ImageUrl].yaml +0 -0
  238. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_url_input[VideoUrl (YouTube)].yaml +0 -0
  239. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_url_input[VideoUrl (gs)].yaml +0 -0
  240. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_url_input[VideoUrl].yaml +0 -0
  241. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_url_input_force_download.yaml +0 -0
  242. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_google/test_google_vertexai_model_usage_limit_exceeded.yaml +0 -0
  243. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_groq/test_extra_headers.yaml +0 -0
  244. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_groq/test_groq_model_instructions.yaml +0 -0
  245. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_groq/test_groq_model_thinking_part.yaml +0 -0
  246. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_groq/test_groq_model_thinking_part_iter.yaml +0 -0
  247. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_groq/test_groq_model_web_search_tool.yaml +0 -0
  248. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_groq/test_image_as_binary_content_input.yaml +0 -0
  249. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_groq/test_image_as_binary_content_tool_response.yaml +0 -0
  250. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_groq/test_image_url_input.yaml +0 -0
  251. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_hf_model_instructions.yaml +0 -0
  252. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_hf_model_thinking_part.yaml +0 -0
  253. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_hf_model_thinking_part_iter.yaml +0 -0
  254. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_image_as_binary_content_input.yaml +0 -0
  255. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_image_url_input.yaml +0 -0
  256. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_max_completion_tokens[Qwen-Qwen2.5-72B-Instruct].yaml +0 -0
  257. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_max_completion_tokens[deepseek-ai-DeepSeek-R1-0528].yaml +0 -0
  258. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_max_completion_tokens[meta-llama-Llama-3.3-70B-Instruct].yaml +0 -0
  259. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_request_simple_success_with_vcr.yaml +0 -0
  260. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_request_simple_usage.yaml +0 -0
  261. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_simple_completion.yaml +0 -0
  262. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_huggingface/test_stream_completion.yaml +0 -0
  263. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_mistral/test_image_as_binary_content_tool_response.yaml +0 -0
  264. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_mistral/test_mistral_model_instructions.yaml +0 -0
  265. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_mistral/test_mistral_model_thinking_part.yaml +0 -0
  266. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_model_names/test_known_model_names.yaml +0 -0
  267. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_audio_as_binary_content_input.yaml +0 -0
  268. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_compatible_api_with_tool_calls_without_id.yaml +0 -0
  269. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_document_as_binary_content_input.yaml +0 -0
  270. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_document_url_input.yaml +0 -0
  271. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_extra_headers.yaml +0 -0
  272. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_image_as_binary_content_input.yaml +0 -0
  273. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_image_as_binary_content_tool_response.yaml +0 -0
  274. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_image_url_tool_response.yaml +0 -0
  275. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_invalid_response.yaml +0 -0
  276. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_max_completion_tokens[gpt-4.5-preview].yaml +0 -0
  277. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_max_completion_tokens[gpt-4o-mini].yaml +0 -0
  278. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_max_completion_tokens[o3-mini].yaml +0 -0
  279. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_multiple_agent_tool_calls.yaml +0 -0
  280. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_audio_url_input.yaml +0 -0
  281. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_instructions.yaml +0 -0
  282. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_instructions_with_tool_calls_keep_instructions.yaml +0 -0
  283. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_model_settings_temperature_ignored_on_gpt_5.yaml +0 -0
  284. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_model_thinking_part.yaml +0 -0
  285. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_model_thinking_part_iter.yaml +0 -0
  286. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_model_without_system_prompt.yaml +0 -0
  287. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_native_output.yaml +0 -0
  288. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_native_output_multiple.yaml +0 -0
  289. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_o1_mini_system_role[developer].yaml +0 -0
  290. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_o1_mini_system_role[system].yaml +0 -0
  291. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_prompted_output.yaml +0 -0
  292. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_prompted_output_multiple.yaml +0 -0
  293. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_responses_model_thinking_part.yaml +0 -0
  294. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_text_output_function.yaml +0 -0
  295. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_tool_output.yaml +0 -0
  296. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_web_search_tool.yaml +0 -0
  297. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_web_search_tool_model_not_supported.yaml +0 -0
  298. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_openai_web_search_tool_with_user_location.yaml +0 -0
  299. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_reasoning_model_with_temperature.yaml +0 -0
  300. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_text_response.yaml +0 -0
  301. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_user_id.yaml +0 -0
  302. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai/test_valid_response.yaml +0 -0
  303. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_audio_as_binary_content_input.yaml +0 -0
  304. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_image_as_binary_content_input.yaml +0 -0
  305. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_image_as_binary_content_tool_response.yaml +0 -0
  306. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_native_output.yaml +0 -0
  307. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_native_output_multiple.yaml +0 -0
  308. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_code_execution_tool.yaml +0 -0
  309. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_code_execution_tool_stream.yaml +0 -0
  310. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_document_as_binary_content_input.yaml +0 -0
  311. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_document_url_input.yaml +0 -0
  312. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_image_url_input.yaml +0 -0
  313. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_builtin_tools.yaml +0 -0
  314. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_http_error.yaml +0 -0
  315. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_instructions.yaml +0 -0
  316. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_retry.yaml +0 -0
  317. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_simple_response.yaml +0 -0
  318. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_simple_response_with_tool_call.yaml +0 -0
  319. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool.yaml +0 -0
  320. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool_stream.yaml +0 -0
  321. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool_with_invalid_region.yaml +0 -0
  322. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_model_web_search_tool_with_user_location.yaml +0 -0
  323. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_output_type.yaml +0 -0
  324. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_reasoning_effort.yaml +0 -0
  325. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_reasoning_generate_summary.yaml +0 -0
  326. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_stream.yaml +0 -0
  327. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_system_prompt.yaml +0 -0
  328. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_text_document_url_input.yaml +0 -0
  329. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_openai_responses_verbosity.yaml +0 -0
  330. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_prompted_output.yaml +0 -0
  331. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_prompted_output_multiple.yaml +0 -0
  332. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_reasoning_model_with_temperature.yaml +0 -0
  333. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_text_output_function.yaml +0 -0
  334. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/cassettes/test_openai_responses/test_tool_output.yaml +0 -0
  335. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/mock_async_stream.py +0 -0
  336. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_cohere.py +0 -0
  337. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_download_item.py +0 -0
  338. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_fallback.py +0 -0
  339. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_gemini.py +0 -0
  340. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_gemini_vertex.py +0 -0
  341. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_google.py +0 -0
  342. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_groq.py +0 -0
  343. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_instrumented.py +0 -0
  344. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_mcp_sampling.py +0 -0
  345. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_mistral.py +0 -0
  346. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_model.py +0 -0
  347. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_model_function.py +0 -0
  348. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_model_names.py +0 -0
  349. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_model_request_parameters.py +0 -0
  350. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_model_settings.py +0 -0
  351. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_model_test.py +0 -0
  352. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/models/test_openai_responses.py +0 -0
  353. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/parts_from_messages.py +0 -0
  354. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/__init__.py +0 -0
  355. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/cassettes/test_azure/test_azure_provider_call.yaml +0 -0
  356. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/cassettes/test_google_vertex/test_vertexai_provider.yaml +0 -0
  357. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/cassettes/test_heroku/test_heroku_model_provider_claude_3_7_sonnet.yaml +0 -0
  358. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/cassettes/test_openrouter/test_openrouter_with_google_model.yaml +0 -0
  359. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_anthropic.py +0 -0
  360. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_azure.py +0 -0
  361. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_cohere.py +0 -0
  362. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_deepseek.py +0 -0
  363. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_fireworks.py +0 -0
  364. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_github.py +0 -0
  365. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_google_gla.py +0 -0
  366. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_google_vertex.py +0 -0
  367. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_grok.py +0 -0
  368. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_heroku.py +0 -0
  369. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_mistral.py +0 -0
  370. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_moonshotai.py +0 -0
  371. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_openai.py +0 -0
  372. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_together.py +0 -0
  373. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/providers/test_vercel.py +0 -0
  374. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_a2a.py +0 -0
  375. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_builtin_tools.py +0 -0
  376. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_cli.py +0 -0
  377. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_deps.py +0 -0
  378. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_direct.py +0 -0
  379. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_examples.py +0 -0
  380. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_format_as_xml.py +0 -0
  381. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_history_processor.py +0 -0
  382. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_json_body_serializer.py +0 -0
  383. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_live.py +0 -0
  384. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_logfire.py +0 -0
  385. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_mcp.py +0 -0
  386. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_messages.py +0 -0
  387. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_parts_manager.py +0 -0
  388. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_settings.py +0 -0
  389. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_streaming.py +0 -0
  390. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_tenacity.py +0 -0
  391. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_thinking_part.py +0 -0
  392. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_usage_limits.py +0 -0
  393. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/test_utils.py +0 -0
  394. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/typed_agent.py +0 -0
  395. {pydantic_ai-0.7.1 → pydantic_ai-0.7.2}/tests/typed_graph.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pydantic-ai
3
- Version: 0.7.1
3
+ Version: 0.7.2
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
@@ -28,11 +28,11 @@ Classifier: Topic :: Internet
28
28
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
29
29
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
30
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.7.1
31
+ Requires-Dist: pydantic-ai-slim[ag-ui,anthropic,bedrock,cli,cohere,evals,google,groq,huggingface,mcp,mistral,openai,retries,temporal,vertexai]==0.7.2
32
32
  Provides-Extra: a2a
33
33
  Requires-Dist: fasta2a>=0.4.1; extra == 'a2a'
34
34
  Provides-Extra: examples
35
- Requires-Dist: pydantic-ai-examples==0.7.1; extra == 'examples'
35
+ Requires-Dist: pydantic-ai-examples==0.7.2; extra == 'examples'
36
36
  Provides-Extra: logfire
37
37
  Requires-Dist: logfire>=3.14.1; extra == 'logfire'
38
38
  Description-Content-Type: text/markdown
@@ -24,6 +24,7 @@ from typing_extensions import TypeAlias
24
24
  from vcr import VCR, request as vcr_request
25
25
 
26
26
  import pydantic_ai.models
27
+ from pydantic_ai import Agent
27
28
  from pydantic_ai.messages import BinaryContent
28
29
  from pydantic_ai.models import Model, cached_async_http_client
29
30
 
@@ -230,6 +231,24 @@ def event_loop() -> Iterator[None]:
230
231
  new_loop.close()
231
232
 
232
233
 
234
+ @pytest.fixture(autouse=True)
235
+ def no_instrumentation_by_default():
236
+ Agent.instrument_all(False)
237
+
238
+
239
+ try:
240
+ import logfire
241
+
242
+ logfire.DEFAULT_LOGFIRE_INSTANCE.config.ignore_no_config = True
243
+
244
+ @pytest.fixture(autouse=True)
245
+ def fresh_logfire():
246
+ logfire.shutdown(flush=False)
247
+
248
+ except ImportError:
249
+ pass
250
+
251
+
233
252
  def raise_if_exception(e: Any) -> None:
234
253
  if isinstance(e, Exception):
235
254
  raise e
@@ -336,9 +336,6 @@ async def test_span_node_repr(span_tree: SpanTree):
336
336
 
337
337
  async def test_span_tree_ancestors_methods():
338
338
  """Test the ancestor traversal methods in SpanNode."""
339
- # Configure logfire
340
- logfire.configure()
341
-
342
339
  # Create spans with a deep structure for testing ancestor methods
343
340
  with context_subtree() as tree:
344
341
  with logfire.span('root', depth=0):
@@ -398,9 +395,6 @@ async def test_span_tree_ancestors_methods():
398
395
 
399
396
  async def test_span_tree_descendants_methods():
400
397
  """Test the descendant traversal methods in SpanNode."""
401
- # Configure logfire
402
- logfire.configure()
403
-
404
398
  # Create spans with a deep structure for testing descendant methods
405
399
  with context_subtree() as tree:
406
400
  with logfire.span('root', depth=0):
@@ -488,9 +482,6 @@ async def test_span_tree_descendants_methods():
488
482
 
489
483
  async def test_log_levels_and_exceptions():
490
484
  """Test recording different log levels and exceptions in spans."""
491
- # Configure logfire
492
- logfire.configure()
493
-
494
485
  with context_subtree() as tree:
495
486
  # Test different log levels
496
487
  with logfire.span('parent_span'):
@@ -891,7 +882,6 @@ async def test_context_subtree_not_configured(mocker: MockerFixture):
891
882
  """Test that context_subtree correctly records spans in independent async contexts."""
892
883
  from opentelemetry.trace import ProxyTracerProvider
893
884
 
894
- # from opentelemetry.sdk.trace import TracerProvider
895
885
  mocker.patch(
896
886
  'pydantic_evals.otel._context_in_memory_span_exporter.get_tracer_provider', return_value=ProxyTracerProvider()
897
887
  )
@@ -15,7 +15,7 @@ interactions:
15
15
  - api.anthropic.com
16
16
  method: POST
17
17
  parsed_body:
18
- max_tokens: 1024
18
+ max_tokens: 4096
19
19
  messages:
20
20
  - content:
21
21
  - text: How much is 3 * 12390?
@@ -34,7 +34,7 @@ interactions:
34
34
  connection:
35
35
  - keep-alive
36
36
  content-length:
37
- - '927'
37
+ - '994'
38
38
  content-type:
39
39
  - application/json
40
40
  strict-transport-security:
@@ -43,12 +43,12 @@ interactions:
43
43
  - chunked
44
44
  parsed_body:
45
45
  container:
46
- expires_at: '2025-05-26T13:30:45.703429+00:00'
47
- id: container_011CPW9LpfbF8dmXMvVNCiQJ
46
+ expires_at: '2025-08-14T12:35:01.802902Z'
47
+ id: container_011CS7XodG8mEYj1PnST46H5
48
48
  content:
49
49
  - text: I'll calculate 3 * 12390 for you.
50
50
  type: text
51
- - id: srvtoolu_01CPfaeVC7ju4VsdzxjSLDrY
51
+ - id: srvtoolu_01PZTDQyDyxVNeVikBoNo2fb
52
52
  input:
53
53
  code: |-
54
54
  result = 3 * 12390
@@ -62,21 +62,24 @@ interactions:
62
62
  stdout: |
63
63
  3 * 12390 = 37170
64
64
  type: code_execution_result
65
- tool_use_id: srvtoolu_01CPfaeVC7ju4VsdzxjSLDrY
65
+ tool_use_id: srvtoolu_01PZTDQyDyxVNeVikBoNo2fb
66
66
  type: code_execution_tool_result
67
- - text: The answer is **37,170**.
67
+ - text: 3 * 12390 = 37,170
68
68
  type: text
69
- id: msg_015H6Emn2T8vZhE52mU2jF1U
69
+ id: msg_01RJnbK7VMxvS2SyvtyJAQVU
70
70
  model: claude-sonnet-4-20250514
71
71
  role: assistant
72
72
  stop_reason: end_turn
73
73
  stop_sequence: null
74
74
  type: message
75
75
  usage:
76
+ cache_creation:
77
+ ephemeral_1h_input_tokens: 0
78
+ ephemeral_5m_input_tokens: 0
76
79
  cache_creation_input_tokens: 0
77
80
  cache_read_input_tokens: 0
78
81
  input_tokens: 1630
79
- output_tokens: 105
82
+ output_tokens: 109
80
83
  server_tool_use:
81
84
  web_search_requests: 0
82
85
  service_tier: standard
@@ -15,7 +15,7 @@ interactions:
15
15
  - api.anthropic.com
16
16
  method: POST
17
17
  parsed_body:
18
- max_tokens: 1024
18
+ max_tokens: 4096
19
19
  messages:
20
20
  - content:
21
21
  - text: Hello, how can I help you?
@@ -36,7 +36,7 @@ interactions:
36
36
  connection:
37
37
  - keep-alive
38
38
  content-length:
39
- - '671'
39
+ - '777'
40
40
  content-type:
41
41
  - application/json
42
42
  strict-transport-security:
@@ -46,26 +46,29 @@ interactions:
46
46
  parsed_body:
47
47
  content:
48
48
  - text: |-
49
- I can't physically give you a potato since I'm a computer program. However, I can:
49
+ I can't physically give you a potato since I'm a digital assistant. However, I can:
50
50
 
51
51
  1. Help you find recipes that use potatoes
52
- 2. Give you tips on how to select, store, or cook potatoes
53
- 3. Share information about different potato varieties
54
- 4. Provide guidance on growing potatoes
52
+ 2. Give you tips on how to select, store, or prepare potatoes
53
+ 3. Share information about different types of potatoes
54
+ 4. Suggest where you might buy potatoes locally
55
55
 
56
- What specifically would you like to know about potatoes?
56
+ What specific information about potatoes would be most helpful to you?
57
57
  type: text
58
- id: msg_01UjnDmX3B57Drosu49sMteT
58
+ id: msg_01PAZFa5ciacA9ptgEDMbkZM
59
59
  model: claude-3-5-sonnet-20241022
60
60
  role: assistant
61
61
  stop_reason: end_turn
62
62
  stop_sequence: null
63
63
  type: message
64
64
  usage:
65
+ cache_creation:
66
+ ephemeral_1h_input_tokens: 0
67
+ ephemeral_5m_input_tokens: 0
65
68
  cache_creation_input_tokens: 0
66
69
  cache_read_input_tokens: 0
67
70
  input_tokens: 41
68
- output_tokens: 82
71
+ output_tokens: 88
69
72
  service_tier: standard
70
73
  status:
71
74
  code: 200
@@ -15,7 +15,7 @@ interactions:
15
15
  - api.anthropic.com
16
16
  method: POST
17
17
  parsed_body:
18
- max_tokens: 1024
18
+ max_tokens: 4096
19
19
  messages:
20
20
  - content:
21
21
  - text: What is the capital of France?
@@ -32,7 +32,7 @@ interactions:
32
32
  connection:
33
33
  - keep-alive
34
34
  content-length:
35
- - '354'
35
+ - '433'
36
36
  content-type:
37
37
  - application/json
38
38
  strict-transport-security:
@@ -43,13 +43,16 @@ interactions:
43
43
  content:
44
44
  - text: The capital of France is Paris.
45
45
  type: text
46
- id: msg_01BznVNBje2zyfpCfNQCD5en
46
+ id: msg_01Fg1JVgvCYUHWsxrj9GkpEv
47
47
  model: claude-3-opus-20240229
48
48
  role: assistant
49
49
  stop_reason: end_turn
50
50
  stop_sequence: null
51
51
  type: message
52
52
  usage:
53
+ cache_creation:
54
+ ephemeral_1h_input_tokens: 0
55
+ ephemeral_5m_input_tokens: 0
53
56
  cache_creation_input_tokens: 0
54
57
  cache_read_input_tokens: 0
55
58
  input_tokens: 20
@@ -0,0 +1,255 @@
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
+ - '213'
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: How do I cross the street?
22
+ type: text
23
+ role: user
24
+ model: claude-3-7-sonnet-latest
25
+ stream: false
26
+ thinking:
27
+ budget_tokens: 1024
28
+ type: enabled
29
+ uri: https://api.anthropic.com/v1/messages?beta=true
30
+ response:
31
+ headers:
32
+ connection:
33
+ - keep-alive
34
+ content-length:
35
+ - '2197'
36
+ content-type:
37
+ - application/json
38
+ strict-transport-security:
39
+ - max-age=31536000; includeSubDomains; preload
40
+ transfer-encoding:
41
+ - chunked
42
+ parsed_body:
43
+ content:
44
+ - signature: ErUBCkYIBhgCIkB9AyHADyBknnHL4dh+Yj3rg3javltU/bz1MLHKCQTEVZwvjis+DKTOFSYqZU0F2xasSofECVAmYmgtRf87AL52EgyXRs8lh+1HtZ0V+wAaDBo0eAabII+t1pdHzyIweFpD2l4j1eeUwN8UQOW+bxcN3mwu144OdOoUxmEKeOcU97wv+VF2pCsm07qcvucSKh1P/rZzWuYm7vxdnD4EVFHdBeewghoO0Ngc1MTNsxgC
45
+ thinking: |-
46
+ This is a straightforward question about a common everyday task - crossing the street safely. I should provide clear, helpful instructions that emphasize safety.
47
+
48
+ The basic steps for crossing a street safely include:
49
+ 1. Find a designated crossing area if possible (crosswalk, pedestrian crossing)
50
+ 2. Look both ways before crossing
51
+ 3. Make eye contact with drivers if possible
52
+ 4. Follow traffic signals if present
53
+ 5. Cross quickly but don't run
54
+ 6. Continue to be aware of traffic while crossing
55
+
56
+ I'll provide this information in a clear, helpful way, emphasizing safety without being condescending.
57
+ type: thinking
58
+ - text: |-
59
+ # How to Cross the Street Safely
60
+
61
+ 1. **Find the right spot**
62
+ - Use crosswalks, pedestrian crossings, or intersections when available
63
+ - If there's a traffic light, cross at the corner
64
+
65
+ 2. **Wait for the right time**
66
+ - At traffic lights, wait for the "WALK" signal or green light
67
+ - At crosswalks without signals, wait for a gap in traffic
68
+
69
+ 3. **Look carefully**
70
+ - Look left, then right, then left again (reverse in countries with left-side driving)
71
+ - Make eye contact with drivers to ensure they see you
72
+
73
+ 4. **Cross with caution**
74
+ - Walk at a steady pace - don't run
75
+ - Continue watching for traffic as you cross
76
+ - Stay within the crosswalk if there is one
77
+
78
+ 5. **Stay alert**
79
+ - Put away distractions like phones
80
+ - Remove headphones or keep volume low to hear traffic
81
+
82
+ Would you like me to explain any of these steps in more detail?
83
+ type: text
84
+ id: msg_01BnZvs3naGorn93wjjCDwbd
85
+ model: claude-3-7-sonnet-20250219
86
+ role: assistant
87
+ stop_reason: end_turn
88
+ stop_sequence: null
89
+ type: message
90
+ usage:
91
+ cache_creation:
92
+ ephemeral_1h_input_tokens: 0
93
+ ephemeral_5m_input_tokens: 0
94
+ cache_creation_input_tokens: 0
95
+ cache_read_input_tokens: 0
96
+ input_tokens: 42
97
+ output_tokens: 363
98
+ service_tier: standard
99
+ status:
100
+ code: 200
101
+ message: OK
102
+ - request:
103
+ headers:
104
+ accept:
105
+ - application/json
106
+ accept-encoding:
107
+ - gzip, deflate
108
+ connection:
109
+ - keep-alive
110
+ content-length:
111
+ - '2195'
112
+ content-type:
113
+ - application/json
114
+ host:
115
+ - api.anthropic.com
116
+ method: POST
117
+ parsed_body:
118
+ max_tokens: 4096
119
+ messages:
120
+ - content:
121
+ - text: How do I cross the street?
122
+ type: text
123
+ role: user
124
+ - content:
125
+ - signature: ErUBCkYIBhgCIkB9AyHADyBknnHL4dh+Yj3rg3javltU/bz1MLHKCQTEVZwvjis+DKTOFSYqZU0F2xasSofECVAmYmgtRf87AL52EgyXRs8lh+1HtZ0V+wAaDBo0eAabII+t1pdHzyIweFpD2l4j1eeUwN8UQOW+bxcN3mwu144OdOoUxmEKeOcU97wv+VF2pCsm07qcvucSKh1P/rZzWuYm7vxdnD4EVFHdBeewghoO0Ngc1MTNsxgC
126
+ thinking: |-
127
+ This is a straightforward question about a common everyday task - crossing the street safely. I should provide clear, helpful instructions that emphasize safety.
128
+
129
+ The basic steps for crossing a street safely include:
130
+ 1. Find a designated crossing area if possible (crosswalk, pedestrian crossing)
131
+ 2. Look both ways before crossing
132
+ 3. Make eye contact with drivers if possible
133
+ 4. Follow traffic signals if present
134
+ 5. Cross quickly but don't run
135
+ 6. Continue to be aware of traffic while crossing
136
+
137
+ I'll provide this information in a clear, helpful way, emphasizing safety without being condescending.
138
+ type: thinking
139
+ - text: |-
140
+ # How to Cross the Street Safely
141
+
142
+ 1. **Find the right spot**
143
+ - Use crosswalks, pedestrian crossings, or intersections when available
144
+ - If there's a traffic light, cross at the corner
145
+
146
+ 2. **Wait for the right time**
147
+ - At traffic lights, wait for the "WALK" signal or green light
148
+ - At crosswalks without signals, wait for a gap in traffic
149
+
150
+ 3. **Look carefully**
151
+ - Look left, then right, then left again (reverse in countries with left-side driving)
152
+ - Make eye contact with drivers to ensure they see you
153
+
154
+ 4. **Cross with caution**
155
+ - Walk at a steady pace - don't run
156
+ - Continue watching for traffic as you cross
157
+ - Stay within the crosswalk if there is one
158
+
159
+ 5. **Stay alert**
160
+ - Put away distractions like phones
161
+ - Remove headphones or keep volume low to hear traffic
162
+
163
+ Would you like me to explain any of these steps in more detail?
164
+ type: text
165
+ role: assistant
166
+ - content:
167
+ - text: Considering the way to cross the street, analogously, how do I cross the river?
168
+ type: text
169
+ role: user
170
+ model: claude-3-7-sonnet-latest
171
+ stream: false
172
+ thinking:
173
+ budget_tokens: 1024
174
+ type: enabled
175
+ uri: https://api.anthropic.com/v1/messages?beta=true
176
+ response:
177
+ headers:
178
+ connection:
179
+ - keep-alive
180
+ content-length:
181
+ - '2676'
182
+ content-type:
183
+ - application/json
184
+ strict-transport-security:
185
+ - max-age=31536000; includeSubDomains; preload
186
+ transfer-encoding:
187
+ - chunked
188
+ parsed_body:
189
+ content:
190
+ - signature: ErUBCkYIBhgCIkDvSvKCs5ePyYmR6zFw5i+jF7KEmortSIleqDa4gfa3pbuBclQt0TPdacouhdXFHdVSqR4qOAAAOpN7RQEUz2o6Egy9MPee6H8U4SW/G2QaDP/9ysoEvk+yNyVYZSIw+/+5wuRyc3oajwV3w0EdL9CIAXXd5thQH7DwAe3HTFvoJuF4oZ4fU+Kh6LRqxnEaKh3SSRqAH4UH/sD86duzg0jox4J/NH4C9iILVesEERgC
191
+ thinking: |-
192
+ The person is asking me to draw an analogy between crossing a street and crossing a river. I'll structure my response similarly to my street-crossing guidelines, but adapt it for river crossing, which has different safety considerations and methods.
193
+
194
+ For crossing a river, I should include:
195
+ 1. Finding the right spot (bridges, shallow areas, ferry points)
196
+ 2. Assessing safety (current speed, depth, obstacles)
197
+ 3. Choosing the appropriate method (walking across shallow areas, using bridges, boats, etc.)
198
+ 4. Safety precautions (life vests, ropes, etc.)
199
+ 5. The actual crossing technique
200
+ 6. What to do in emergencies
201
+
202
+ I'll keep the format similar to my street-crossing response for consistency.
203
+ type: thinking
204
+ - text: |-
205
+ # How to Cross a River Safely
206
+
207
+ 1. **Find the right spot**
208
+ - Use bridges, ferries, or designated crossing points when available
209
+ - Look for narrow or shallow sections if no infrastructure exists
210
+ - Avoid areas with fast currents, whitewater, or dangerous debris
211
+
212
+ 2. **Assess the conditions**
213
+ - Check water depth and speed of current
214
+ - Look for hazards like submerged objects or slippery rocks
215
+ - Consider weather conditions that might affect water levels
216
+
217
+ 3. **Choose the appropriate method**
218
+ - Bridge or ferry: The safest options
219
+ - Wade across: Only in shallow, calm water with stable footing
220
+ - Swim: Only if you're a strong swimmer and conditions are safe
221
+ - Boat/raft: For wider or deeper crossings
222
+
223
+ 4. **Prepare properly**
224
+ - Wear appropriate footwear for wading
225
+ - Use life jackets/flotation devices when swimming or boating
226
+ - Secure belongings in waterproof containers
227
+ - Consider using a walking stick for balance when wading
228
+
229
+ 5. **Cross with caution**
230
+ - Face upstream when wading to brace against current
231
+ - Move diagonally downstream if swimming
232
+ - Stay alert for changing conditions
233
+ - Use the buddy system when possible
234
+
235
+ Is there a specific river crossing scenario you're curious about?
236
+ type: text
237
+ id: msg_019Z9a1qnqUCxd7Fj6PuuetE
238
+ model: claude-3-7-sonnet-20250219
239
+ role: assistant
240
+ stop_reason: end_turn
241
+ stop_sequence: null
242
+ type: message
243
+ usage:
244
+ cache_creation:
245
+ ephemeral_1h_input_tokens: 0
246
+ ephemeral_5m_input_tokens: 0
247
+ cache_creation_input_tokens: 0
248
+ cache_read_input_tokens: 0
249
+ input_tokens: 291
250
+ output_tokens: 471
251
+ service_tier: standard
252
+ status:
253
+ code: 200
254
+ message: OK
255
+ version: 1