openai-agents 0.0.13__tar.gz → 0.0.14__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 openai-agents might be problematic. Click here for more details.
- {openai_agents-0.0.13 → openai_agents-0.0.14}/PKG-INFO +2 -2
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/tracing.md +1 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/pyproject.toml +2 -2
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/result.py +7 -9
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/run.py +3 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/__init__.py +2 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/model.py +3 -4
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/fake_model.py +16 -3
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_result_cast.py +2 -1
- {openai_agents-0.0.13 → openai_agents-0.0.14}/uv.lock +4 -7
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.github/ISSUE_TEMPLATE/model_provider.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.github/ISSUE_TEMPLATE/question.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.github/workflows/docs.yml +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.github/workflows/issues.yml +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.github/workflows/publish.yml +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.github/workflows/tests.yml +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.gitignore +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.prettierrc +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/.vscode/settings.json +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/LICENSE +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/Makefile +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/README.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/agents.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/assets/images/favicon-platform.svg +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/assets/images/graph.png +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/assets/images/mcp-tracing.jpg +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/assets/images/orchestration.png +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/assets/logo.svg +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/config.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/context.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/examples.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/guardrails.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/handoffs.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/index.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/agents.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/config.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/context.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/examples.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/guardrails.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/handoffs.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/index.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/mcp.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/models/index.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/models/litellm.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/models.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/multi_agent.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/quickstart.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/results.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/running_agents.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/streaming.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/tools.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/tracing.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/visualization.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/voice/pipeline.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/voice/quickstart.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ja/voice/tracing.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/mcp.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/models/index.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/models/litellm.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/multi_agent.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/quickstart.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/agent.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/agent_output.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/exceptions.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/extensions/handoff_filters.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/extensions/handoff_prompt.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/extensions/litellm.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/function_schema.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/guardrail.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/handoffs.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/index.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/items.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/lifecycle.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/mcp/server.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/mcp/util.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/model_settings.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/models/interface.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/models/openai_chatcompletions.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/models/openai_responses.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/result.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/run.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/run_context.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/stream_events.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/tool.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/tracing/create.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/tracing/index.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/tracing/processor_interface.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/tracing/processors.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/tracing/scope.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/tracing/setup.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/tracing/span_data.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/tracing/spans.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/tracing/traces.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/tracing/util.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/usage.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/events.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/exceptions.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/input.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/model.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/models/openai_provider.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/models/openai_stt.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/models/openai_tts.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/pipeline.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/pipeline_config.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/result.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/utils.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/ref/voice/workflow.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/results.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/running_agents.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/scripts/translate_docs.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/streaming.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/stylesheets/extra.css +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/tools.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/visualization.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/voice/pipeline.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/voice/quickstart.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/docs/voice/tracing.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/agent_patterns/README.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/agent_patterns/agents_as_tools.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/agent_patterns/deterministic.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/agent_patterns/forcing_tool_use.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/agent_patterns/input_guardrails.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/agent_patterns/llm_as_a_judge.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/agent_patterns/output_guardrails.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/agent_patterns/parallelization.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/agent_patterns/routing.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/agent_patterns/streaming_guardrails.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/agent_lifecycle_example.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/dynamic_system_prompt.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/hello_world.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/hello_world_jupyter.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/lifecycle_example.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/local_image.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/media/image_bison.jpg +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/non_strict_output_type.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/previous_response_id.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/remote_image.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/stream_items.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/stream_text.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/basic/tools.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/customer_service/main.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/README.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/agents/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/agents/financials_agent.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/agents/planner_agent.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/agents/risk_agent.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/agents/search_agent.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/agents/verifier_agent.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/agents/writer_agent.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/main.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/manager.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/financial_research_agent/printer.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/handoffs/message_filter.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/handoffs/message_filter_streaming.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/mcp/filesystem_example/README.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/mcp/filesystem_example/main.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/mcp/filesystem_example/sample_files/favorite_books.txt +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/mcp/filesystem_example/sample_files/favorite_cities.txt +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/mcp/filesystem_example/sample_files/favorite_songs.txt +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/mcp/git_example/README.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/mcp/git_example/main.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/mcp/sse_example/README.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/mcp/sse_example/main.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/mcp/sse_example/server.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/model_providers/README.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/model_providers/custom_example_agent.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/model_providers/custom_example_global.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/model_providers/custom_example_provider.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/model_providers/litellm_auto.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/model_providers/litellm_provider.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/README.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/agents/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/agents/planner_agent.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/agents/search_agent.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/agents/writer_agent.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/main.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/manager.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/printer.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/sample_outputs/product_recs.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/sample_outputs/product_recs.txt +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/sample_outputs/vacation.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/research_bot/sample_outputs/vacation.txt +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/tools/computer_use.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/tools/file_search.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/tools/web_search.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/voice/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/voice/static/README.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/voice/static/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/voice/static/main.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/voice/static/util.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/voice/streamed/README.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/voice/streamed/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/voice/streamed/main.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/examples/voice/streamed/my_workflow.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/mkdocs.yml +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/_config.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/_debug.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/_run_impl.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/agent.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/agent_output.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/computer.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/exceptions.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/extensions/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/extensions/handoff_filters.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/extensions/handoff_prompt.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/extensions/models/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/extensions/models/litellm_model.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/extensions/models/litellm_provider.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/extensions/visualization.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/function_schema.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/guardrail.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/handoffs.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/items.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/lifecycle.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/logger.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/mcp/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/mcp/server.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/mcp/util.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/model_settings.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/models/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/models/_openai_shared.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/models/chatcmpl_converter.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/models/chatcmpl_helpers.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/models/chatcmpl_stream_handler.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/models/fake_id.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/models/interface.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/models/multi_provider.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/models/openai_chatcompletions.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/models/openai_provider.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/models/openai_responses.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/py.typed +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/run_context.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/stream_events.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/strict_schema.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tool.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tracing/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tracing/create.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tracing/logger.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tracing/processor_interface.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tracing/processors.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tracing/scope.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tracing/setup.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tracing/span_data.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tracing/spans.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tracing/traces.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/tracing/util.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/usage.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/util/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/util/_coro.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/util/_error_tracing.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/util/_json.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/util/_pretty_print.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/util/_transforms.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/util/_types.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/version.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/events.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/exceptions.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/imports.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/input.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/models/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/models/openai_model_provider.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/models/openai_stt.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/models/openai_tts.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/pipeline.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/pipeline_config.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/result.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/utils.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/src/agents/voice/workflow.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/README.md +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/conftest.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/fastapi/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/fastapi/streaming_app.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/fastapi/test_streaming_context.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/mcp/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/mcp/conftest.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/mcp/helpers.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/mcp/test_caching.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/mcp/test_connect_disconnect.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/mcp/test_mcp_tracing.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/mcp/test_mcp_util.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/mcp/test_runner_calls_mcp.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/mcp/test_server_errors.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/model_settings/test_serialization.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/models/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/models/conftest.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/models/test_litellm_chatcompletions_stream.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/models/test_map.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_agent_config.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_agent_hooks.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_agent_runner.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_agent_runner_streamed.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_agent_tracing.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_cancel_streaming.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_computer_action.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_config.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_doc_parsing.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_extension_filters.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_extra_headers.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_function_schema.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_function_tool.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_function_tool_decorator.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_global_hooks.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_guardrails.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_handoff_tool.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_items_helpers.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_max_turns.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_openai_chatcompletions.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_openai_chatcompletions_converter.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_openai_chatcompletions_stream.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_openai_responses_converter.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_output_tool.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_pretty_print.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_responses.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_responses_tracing.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_run_config.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_run_step_execution.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_run_step_processing.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_strict_schema.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_tool_choice_reset.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_tool_converter.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_tool_use_behavior.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_trace_processor.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_tracing.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_tracing_errors.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_tracing_errors_streamed.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/test_visualization.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/testing_processor.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/tracing/test_processor_api_key.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/voice/__init__.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/voice/conftest.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/voice/fake_models.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/voice/helpers.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/voice/test_input.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/voice/test_openai_stt.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/voice/test_openai_tts.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/voice/test_pipeline.py +0 -0
- {openai_agents-0.0.13 → openai_agents-0.0.14}/tests/voice/test_workflow.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: openai-agents
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.14
|
|
4
4
|
Summary: OpenAI Agents SDK
|
|
5
5
|
Project-URL: Homepage, https://github.com/openai/openai-agents-python
|
|
6
6
|
Project-URL: Repository, https://github.com/openai/openai-agents-python
|
|
@@ -26,7 +26,7 @@ Requires-Dist: requests<3,>=2.0
|
|
|
26
26
|
Requires-Dist: types-requests<3,>=2.0
|
|
27
27
|
Requires-Dist: typing-extensions<5,>=4.12.2
|
|
28
28
|
Provides-Extra: litellm
|
|
29
|
-
Requires-Dist: litellm<2,>=1.
|
|
29
|
+
Requires-Dist: litellm<2,>=1.67.4.post1; extra == 'litellm'
|
|
30
30
|
Provides-Extra: viz
|
|
31
31
|
Requires-Dist: graphviz>=0.17; extra == 'viz'
|
|
32
32
|
Provides-Extra: voice
|
|
@@ -101,6 +101,7 @@ To customize this default setup, to send traces to alternative or additional bac
|
|
|
101
101
|
|
|
102
102
|
- [Weights & Biases](https://weave-docs.wandb.ai/guides/integrations/openai_agents)
|
|
103
103
|
- [Arize-Phoenix](https://docs.arize.com/phoenix/tracing/integrations-tracing/openai-agents-sdk)
|
|
104
|
+
- [Future AGI](https://docs.futureagi.com/future-agi/products/observability/auto-instrumentation/openai_agents)
|
|
104
105
|
- [MLflow (self-hosted/OSS](https://mlflow.org/docs/latest/tracing/integrations/openai-agent)
|
|
105
106
|
- [MLflow (Databricks hosted](https://docs.databricks.com/aws/en/mlflow/mlflow-tracing#-automatic-tracing)
|
|
106
107
|
- [Braintrust](https://braintrust.dev/docs/guides/traces/integrations#openai-agents-sdk)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "openai-agents"
|
|
3
|
-
version = "0.0.
|
|
3
|
+
version = "0.0.14"
|
|
4
4
|
description = "OpenAI Agents SDK"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.9"
|
|
@@ -36,7 +36,7 @@ Repository = "https://github.com/openai/openai-agents-python"
|
|
|
36
36
|
[project.optional-dependencies]
|
|
37
37
|
voice = ["numpy>=2.2.0, <3; python_version>='3.10'", "websockets>=15.0, <16"]
|
|
38
38
|
viz = ["graphviz>=0.17"]
|
|
39
|
-
litellm = ["litellm>=1.
|
|
39
|
+
litellm = ["litellm>=1.67.4.post1, <2"]
|
|
40
40
|
|
|
41
41
|
[dependency-groups]
|
|
42
42
|
dev = [
|
|
@@ -15,6 +15,7 @@ from .exceptions import InputGuardrailTripwireTriggered, MaxTurnsExceeded
|
|
|
15
15
|
from .guardrail import InputGuardrailResult, OutputGuardrailResult
|
|
16
16
|
from .items import ItemHelpers, ModelResponse, RunItem, TResponseInputItem
|
|
17
17
|
from .logger import logger
|
|
18
|
+
from .run_context import RunContextWrapper
|
|
18
19
|
from .stream_events import StreamEvent
|
|
19
20
|
from .tracing import Trace
|
|
20
21
|
from .util._pretty_print import pretty_print_result, pretty_print_run_result_streaming
|
|
@@ -50,6 +51,9 @@ class RunResultBase(abc.ABC):
|
|
|
50
51
|
output_guardrail_results: list[OutputGuardrailResult]
|
|
51
52
|
"""Guardrail results for the final output of the agent."""
|
|
52
53
|
|
|
54
|
+
context_wrapper: RunContextWrapper[Any]
|
|
55
|
+
"""The context wrapper for the agent run."""
|
|
56
|
+
|
|
53
57
|
@property
|
|
54
58
|
@abc.abstractmethod
|
|
55
59
|
def last_agent(self) -> Agent[Any]:
|
|
@@ -75,9 +79,7 @@ class RunResultBase(abc.ABC):
|
|
|
75
79
|
|
|
76
80
|
def to_input_list(self) -> list[TResponseInputItem]:
|
|
77
81
|
"""Creates a new input list, merging the original input with all the new items generated."""
|
|
78
|
-
original_items: list[TResponseInputItem] = ItemHelpers.input_to_new_input_list(
|
|
79
|
-
self.input
|
|
80
|
-
)
|
|
82
|
+
original_items: list[TResponseInputItem] = ItemHelpers.input_to_new_input_list(self.input)
|
|
81
83
|
new_items = [item.to_input_item() for item in self.new_items]
|
|
82
84
|
|
|
83
85
|
return original_items + new_items
|
|
@@ -206,17 +208,13 @@ class RunResultStreaming(RunResultBase):
|
|
|
206
208
|
|
|
207
209
|
def _check_errors(self):
|
|
208
210
|
if self.current_turn > self.max_turns:
|
|
209
|
-
self._stored_exception = MaxTurnsExceeded(
|
|
210
|
-
f"Max turns ({self.max_turns}) exceeded"
|
|
211
|
-
)
|
|
211
|
+
self._stored_exception = MaxTurnsExceeded(f"Max turns ({self.max_turns}) exceeded")
|
|
212
212
|
|
|
213
213
|
# Fetch all the completed guardrail results from the queue and raise if needed
|
|
214
214
|
while not self._input_guardrail_queue.empty():
|
|
215
215
|
guardrail_result = self._input_guardrail_queue.get_nowait()
|
|
216
216
|
if guardrail_result.output.tripwire_triggered:
|
|
217
|
-
self._stored_exception = InputGuardrailTripwireTriggered(
|
|
218
|
-
guardrail_result
|
|
219
|
-
)
|
|
217
|
+
self._stored_exception = InputGuardrailTripwireTriggered(guardrail_result)
|
|
220
218
|
|
|
221
219
|
# Check the tasks for any exceptions
|
|
222
220
|
if self._run_impl_task and self._run_impl_task.done():
|
|
@@ -270,6 +270,7 @@ class Runner:
|
|
|
270
270
|
_last_agent=current_agent,
|
|
271
271
|
input_guardrail_results=input_guardrail_results,
|
|
272
272
|
output_guardrail_results=output_guardrail_results,
|
|
273
|
+
context_wrapper=context_wrapper,
|
|
273
274
|
)
|
|
274
275
|
elif isinstance(turn_result.next_step, NextStepHandoff):
|
|
275
276
|
current_agent = cast(Agent[TContext], turn_result.next_step.new_agent)
|
|
@@ -423,6 +424,7 @@ class Runner:
|
|
|
423
424
|
output_guardrail_results=[],
|
|
424
425
|
_current_agent_output_schema=output_schema,
|
|
425
426
|
trace=new_trace,
|
|
427
|
+
context_wrapper=context_wrapper,
|
|
426
428
|
)
|
|
427
429
|
|
|
428
430
|
# Kick off the actual agent loop in the background and return the streamed result object.
|
|
@@ -696,6 +698,7 @@ class Runner:
|
|
|
696
698
|
usage=usage,
|
|
697
699
|
response_id=event.response.id,
|
|
698
700
|
)
|
|
701
|
+
context_wrapper.usage.add(usage)
|
|
699
702
|
|
|
700
703
|
streamed_result._event_queue.put_nowait(RawResponsesStreamEvent(data=event))
|
|
701
704
|
|
|
@@ -7,6 +7,7 @@ from .model import (
|
|
|
7
7
|
STTModelSettings,
|
|
8
8
|
TTSModel,
|
|
9
9
|
TTSModelSettings,
|
|
10
|
+
TTSVoice,
|
|
10
11
|
VoiceModelProvider,
|
|
11
12
|
)
|
|
12
13
|
from .models.openai_model_provider import OpenAIVoiceModelProvider
|
|
@@ -30,6 +31,7 @@ __all__ = [
|
|
|
30
31
|
"STTModelSettings",
|
|
31
32
|
"TTSModel",
|
|
32
33
|
"TTSModelSettings",
|
|
34
|
+
"TTSVoice",
|
|
33
35
|
"VoiceModelProvider",
|
|
34
36
|
"StreamedAudioResult",
|
|
35
37
|
"SingleAgentVoiceWorkflow",
|
|
@@ -14,14 +14,13 @@ DEFAULT_TTS_INSTRUCTIONS = (
|
|
|
14
14
|
)
|
|
15
15
|
DEFAULT_TTS_BUFFER_SIZE = 120
|
|
16
16
|
|
|
17
|
+
TTSVoice = Literal["alloy", "ash", "coral", "echo", "fable", "onyx", "nova", "sage", "shimmer"]
|
|
18
|
+
"""Exportable type for the TTSModelSettings voice enum"""
|
|
17
19
|
|
|
18
20
|
@dataclass
|
|
19
21
|
class TTSModelSettings:
|
|
20
22
|
"""Settings for a TTS model."""
|
|
21
|
-
|
|
22
|
-
voice: (
|
|
23
|
-
Literal["alloy", "ash", "coral", "echo", "fable", "onyx", "nova", "sage", "shimmer"] | None
|
|
24
|
-
) = None
|
|
23
|
+
voice: TTSVoice | None = None
|
|
25
24
|
"""
|
|
26
25
|
The voice to use for the TTS model. If not provided, the default voice for the respective model
|
|
27
26
|
will be used.
|
|
@@ -3,7 +3,8 @@ from __future__ import annotations
|
|
|
3
3
|
from collections.abc import AsyncIterator
|
|
4
4
|
from typing import Any
|
|
5
5
|
|
|
6
|
-
from openai.types.responses import Response, ResponseCompletedEvent
|
|
6
|
+
from openai.types.responses import Response, ResponseCompletedEvent, ResponseUsage
|
|
7
|
+
from openai.types.responses.response_usage import InputTokensDetails, OutputTokensDetails
|
|
7
8
|
|
|
8
9
|
from agents.agent_output import AgentOutputSchemaBase
|
|
9
10
|
from agents.handoffs import Handoff
|
|
@@ -33,6 +34,10 @@ class FakeModel(Model):
|
|
|
33
34
|
)
|
|
34
35
|
self.tracing_enabled = tracing_enabled
|
|
35
36
|
self.last_turn_args: dict[str, Any] = {}
|
|
37
|
+
self.hardcoded_usage: Usage | None = None
|
|
38
|
+
|
|
39
|
+
def set_hardcoded_usage(self, usage: Usage):
|
|
40
|
+
self.hardcoded_usage = usage
|
|
36
41
|
|
|
37
42
|
def set_next_output(self, output: list[TResponseOutputItem] | Exception):
|
|
38
43
|
self.turn_outputs.append(output)
|
|
@@ -83,7 +88,7 @@ class FakeModel(Model):
|
|
|
83
88
|
|
|
84
89
|
return ModelResponse(
|
|
85
90
|
output=output,
|
|
86
|
-
usage=Usage(),
|
|
91
|
+
usage=self.hardcoded_usage or Usage(),
|
|
87
92
|
response_id=None,
|
|
88
93
|
)
|
|
89
94
|
|
|
@@ -123,13 +128,14 @@ class FakeModel(Model):
|
|
|
123
128
|
|
|
124
129
|
yield ResponseCompletedEvent(
|
|
125
130
|
type="response.completed",
|
|
126
|
-
response=get_response_obj(output),
|
|
131
|
+
response=get_response_obj(output, usage=self.hardcoded_usage),
|
|
127
132
|
)
|
|
128
133
|
|
|
129
134
|
|
|
130
135
|
def get_response_obj(
|
|
131
136
|
output: list[TResponseOutputItem],
|
|
132
137
|
response_id: str | None = None,
|
|
138
|
+
usage: Usage | None = None,
|
|
133
139
|
) -> Response:
|
|
134
140
|
return Response(
|
|
135
141
|
id=response_id or "123",
|
|
@@ -141,4 +147,11 @@ def get_response_obj(
|
|
|
141
147
|
tools=[],
|
|
142
148
|
top_p=None,
|
|
143
149
|
parallel_tool_calls=False,
|
|
150
|
+
usage=ResponseUsage(
|
|
151
|
+
input_tokens=usage.input_tokens if usage else 0,
|
|
152
|
+
output_tokens=usage.output_tokens if usage else 0,
|
|
153
|
+
total_tokens=usage.total_tokens if usage else 0,
|
|
154
|
+
input_tokens_details=InputTokensDetails(cached_tokens=0),
|
|
155
|
+
output_tokens_details=OutputTokensDetails(reasoning_tokens=0),
|
|
156
|
+
),
|
|
144
157
|
)
|
|
@@ -3,7 +3,7 @@ from typing import Any
|
|
|
3
3
|
import pytest
|
|
4
4
|
from pydantic import BaseModel
|
|
5
5
|
|
|
6
|
-
from agents import Agent, RunResult
|
|
6
|
+
from agents import Agent, RunContextWrapper, RunResult
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
def create_run_result(final_output: Any) -> RunResult:
|
|
@@ -15,6 +15,7 @@ def create_run_result(final_output: Any) -> RunResult:
|
|
|
15
15
|
input_guardrail_results=[],
|
|
16
16
|
output_guardrail_results=[],
|
|
17
17
|
_last_agent=Agent(name="test"),
|
|
18
|
+
context_wrapper=RunContextWrapper(context=None),
|
|
18
19
|
)
|
|
19
20
|
|
|
20
21
|
|
|
@@ -928,7 +928,7 @@ wheels = [
|
|
|
928
928
|
|
|
929
929
|
[[package]]
|
|
930
930
|
name = "litellm"
|
|
931
|
-
version = "1.
|
|
931
|
+
version = "1.67.4.post1"
|
|
932
932
|
source = { registry = "https://pypi.org/simple" }
|
|
933
933
|
dependencies = [
|
|
934
934
|
{ name = "aiohttp" },
|
|
@@ -943,10 +943,7 @@ dependencies = [
|
|
|
943
943
|
{ name = "tiktoken" },
|
|
944
944
|
{ name = "tokenizers" },
|
|
945
945
|
]
|
|
946
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
947
|
-
wheels = [
|
|
948
|
-
{ url = "https://files.pythonhosted.org/packages/e9/33/fdc4615ca621940406e3b0b303e900bc2868cfcd8c62c4a6f5e7d2f6a56c/litellm-1.66.1-py3-none-any.whl", hash = "sha256:1f601fea3f086c1d2d91be60b9db115082a2f3a697e4e0def72f8b9c777c7232", size = 7559553 },
|
|
949
|
-
]
|
|
946
|
+
sdist = { url = "https://files.pythonhosted.org/packages/4d/89/bacf75633dd43d6c5536380fb652c4af25046c29f5c6e5fdb4e8fe5af505/litellm-1.67.4.post1.tar.gz", hash = "sha256:057f2505f82d8c3f83d705c375b0d1931de998b13e239a6b06e16ee351fda648", size = 7243930 }
|
|
950
947
|
|
|
951
948
|
[[package]]
|
|
952
949
|
name = "markdown"
|
|
@@ -1482,7 +1479,7 @@ wheels = [
|
|
|
1482
1479
|
|
|
1483
1480
|
[[package]]
|
|
1484
1481
|
name = "openai-agents"
|
|
1485
|
-
version = "0.0.
|
|
1482
|
+
version = "0.0.14"
|
|
1486
1483
|
source = { editable = "." }
|
|
1487
1484
|
dependencies = [
|
|
1488
1485
|
{ name = "griffe" },
|
|
@@ -1535,7 +1532,7 @@ dev = [
|
|
|
1535
1532
|
requires-dist = [
|
|
1536
1533
|
{ name = "graphviz", marker = "extra == 'viz'", specifier = ">=0.17" },
|
|
1537
1534
|
{ name = "griffe", specifier = ">=1.5.6,<2" },
|
|
1538
|
-
{ name = "litellm", marker = "extra == 'litellm'", specifier = ">=1.
|
|
1535
|
+
{ name = "litellm", marker = "extra == 'litellm'", specifier = ">=1.67.4.post1,<2" },
|
|
1539
1536
|
{ name = "mcp", marker = "python_full_version >= '3.10'", specifier = ">=1.6.0,<2" },
|
|
1540
1537
|
{ name = "numpy", marker = "python_full_version >= '3.10' and extra == 'voice'", specifier = ">=2.2.0,<3" },
|
|
1541
1538
|
{ name = "openai", specifier = ">=1.76.0" },
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openai_agents-0.0.13 → openai_agents-0.0.14}/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openai_agents-0.0.13 → openai_agents-0.0.14}/examples/agent_patterns/streaming_guardrails.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|