Commit graph

173 commits

Author SHA1 Message Date
Vincent Koc
e7c2c19564
Merge branch 'main' into patch-1 2025-03-20 02:57:34 +11:00
Rohan Mehta
48ff99bb73
fix reasoning order in guardrails.md (#234) 2025-03-18 23:27:33 -04:00
CCM
bc8369c76a
fix reasoning order in guardrails.md 2025-03-19 11:10:58 +08:00
Rohan Mehta
6f7e801da0
Update tests and docs for strict mode decorator (#205)
As titled. Test plan: unit tests/docs.
2025-03-18 21:35:00 -04:00
Rohan Mehta
ff65fb48dd
Add min 95% code coverage (#229)
Run the tests with `coverage`, and make sure the min coverage is 95%.
2025-03-18 16:50:00 -04:00
Rohan Mehta
74b197bc2c Add min 95% code coverage 2025-03-18 16:48:43 -04:00
Dmitry Pimenov
3b2afe118d
chore: adds Maxim AI to tracing processors (#210) 2025-03-18 09:10:52 -07:00
Rohan Mehta
97508557b9
[doc] add mlflow tracing integration (#171)
Hi team! Congrats on the new Agents SDK launch!

This PR adds MLflow to the tracing documentation, as it supports
automatic tracing for OpenAI Agents SDK. It has also been supporting
tracing for
[Swarm](https://mlflow.org/docs/latest/tracing/integrations/swarm) as
well, so it is fantastic that the new SDK offers built-in mechanism for
3P trace providers🙂


![image](https://github.com/user-attachments/assets/d36382da-dca1-4335-a915-ca94a994e26a)
2025-03-18 10:21:54 -04:00
B-Step62
e0eb4be145 [doc] add mlflow tracing integration
Signed-off-by: B-Step62 <yuki.watanabe@databricks.com>
2025-03-18 11:29:21 +09:00
Akshay Deo
e5befd0cba
chore: adds Maxim AI to tracing processors 2025-03-18 07:49:33 +05:30
Dmitry Pimenov
fe6bb8c8ab
Docs: update readme text to clarify handoffs (#208)
Clarifying that the handoff abstraction is implemented via Responses
tool calling
2025-03-17 15:15:13 -07:00
Dmitry Pimenov
a43cf1542b clarifying that handoffs are a type of tool call under the hood 2025-03-17 15:05:15 -07:00
Rohan Mehta
3a97b15b89
Stronger tracing tests with inline-snapshot (#25)
`assert len(spans) == 12` is a very weak assertion. This PR asserts the
exported traces and spans more precisely in a readable tree format. And
when the format of an exported trace/span changes (e.g. a new key is
added to every span), you can use `pytest --inline-snapshot=fix` to
update all relevant tests automatically. See
https://15r10nk.github.io/inline-snapshot/latest/ for more info.
2025-03-17 17:59:04 -04:00
Alex Hall
7eb2bcee15 mypy 2025-03-17 23:56:42 +02:00
Alex Hall
2d2e8f0e34 Merge branch 'main' of github.com:openai/openai-agents-python into alex/inline-snapshot 2025-03-17 23:55:56 +02:00
Rohan Mehta
d0a7b00086
Fix typo on Agent documentation (#151)
Argument name is not description but handoff_description
2025-03-17 16:51:47 -04:00
Carlos Souza
64150c8aea Fix lint 2025-03-17 16:14:28 -04:00
Rohan Mehta
2bff04719b
Fix handoffs example use cases (#156)
## Changes
- In this handoff example, we need to use `first_agent` with
`random_number_tool`, instead of `second_agent` without that tool, since
the user is asking to generate a random number.
- fixed typo in comments
2025-03-17 15:59:18 -04:00
Rohan Mehta
fad23f1a3d
fix typo in agent_lifecycle_example.py (#161) 2025-03-17 15:59:00 -04:00
Rohan Mehta
82136d7439
docs: add arize-phoenix to tracing documentation (#169) 2025-03-17 15:58:28 -04:00
Rohan Mehta
a612e6a090
docs: List LangSmith tracing integration (#197)
LangChain employee/maintainer, happy to make edits to our
docs/integrations if needed.
2025-03-17 15:58:20 -04:00
Rohan Mehta
83ec26d200
fix reasoning order in examples (#186)
I think we need to put reasoning-related outputs first to encourage CoT
reasoning.
2025-03-17 15:57:52 -04:00
Rohan Mehta
0989cd9184
Add TracingProcessor export to __init__.py (#192)
# Summary
This adds the missing TracingProcessor export to  __init__.py.

# Behavior
When trying to add a custom tracing processor, the TracingProcessor
importing fails with not found error when trying the example usage
proposed in issue #164

Specifically this line throws the error:
`add_trace_processor(MyTracingProcessor("output"))`

# Expected Behavior
Inspecting the init file, simply the import/export was missing. Adding
these made the example code work for me

# Test plan
Local dev of example code in #164

# Issue number
#164

# Checks
None
2025-03-17 15:39:04 -04:00
Rohan Mehta
47aed7d362 Update tests and docs for strict mode decorator 2025-03-17 15:06:57 -04:00
Dmitry Pimenov
a8390350ab
Update tracing docs (#204)
Update the README to point to the list of tracing processors. The docs
will contain all the external processors, so the readme doesn't get too
long.
2025-03-17 12:02:44 -07:00
Rohan Mehta
1368e7ffe6 Update tracing docs 2025-03-17 14:57:43 -04:00
Rohan Mehta
b09a5bfc43
Create a utils directory (#195)
Moves utils files into a separate directory so we don't end up with a
massive utils file

---
[//]: # (BEGIN SAPLING FOOTER)
* #196
* __->__ #195
2025-03-17 14:26:49 -04:00
Rohan Mehta
63aa5d10fd
Pretty print result classes (#196)
These classes print a really long, unreadable output by default. This
trims it to the main useful info (i.e. output, last agent, overview of
run).

---
[//]: # (BEGIN SAPLING FOOTER)
* __->__ #196
* #195
2025-03-17 14:26:43 -04:00
Rohan Mehta
dd651ce8e7
Add ZDR callout in tracing docs (#199)
Add callout for ZDR intracing
2025-03-17 14:26:34 -04:00
James Hills
370a748bcc
Update tracing.md
Add callout for ZDR intracing
2025-03-17 09:13:22 -07:00
Bagatur
4ebf0742f1 docs: List LangSmith tracing integration 2025-03-17 08:47:28 -07:00
Rohan Mehta
64e263b614 Pretty print result classes 2025-03-17 11:11:39 -04:00
Vincenzo Domina
1f58528f1c
Add TracingProcessor export to __init__.py 2025-03-17 10:37:43 +01:00
heartkilla
54a48a3967 fix reasoning order in examples 2025-03-17 14:56:43 +09:00
Rohan Mehta
09d70c074d utils directory 2025-03-16 18:48:45 -04:00
Rohan Mehta
951193bd21
feat: Add strict_mode option to function_schema and function_tool (#60)
This PR introduces a `strict_mode: bool = True` option to
`@function_tool`, allowing optional parameters when set to False. This
change enables more flexibility while maintaining strict JSON schema
validation by default.

resolves #43 

## Changes:

- Added `strict_mode` parameter to `@function_tool` and passed it to
`function_schema` and `FunctionTool`.
- Updated `function_schema.py` to respect `strict_mode` and allow
optional parameters when set to False.
- Added unit tests to verify optional parameters work correctly,
including multiple optional params with different types.

## Tests:

- Verified function calls with missing optional parameters behave as
expected.
- Added async tests to validate behavior under different configurations.
2025-03-16 17:43:46 -04:00
Alexander Song
f0ef7d71eb docs: add arize-phoenix to tracing documentation 2025-03-14 17:50:10 -07:00
Alex Hall
4d2fa9d91c Merge branch 'main' of github.com:openai/openai-agents-python into alex/inline-snapshot 2025-03-14 14:16:34 +02:00
CCM
8540b1e65b
fix typo in agent_lifecycle_example.py 2025-03-14 19:14:26 +08:00
Kento Yamanaka
792cdea464 fix: use first_agent instead of second_agent for a task to generate random number 2025-03-13 18:26:49 -07:00
Carlos Souza
26828e5e68
Fix typo on Agent documentation
Argument name is not description but handoff_description
2025-03-13 16:18:40 -04:00
Rohan Mehta
cdbf6b0514
Create model_provider.md 2025-03-13 14:43:14 -04:00
Rohan Mehta
7f68a7da2a
Consolidate to one logger (#149)
Results in double logging if we dont. Closes #141.
2025-03-13 11:38:18 -07:00
Vincent Koc
333858b518
Merge branch 'main' into patch-1 2025-03-14 05:33:08 +11:00
Rohan Mehta
697f647e4c
Update tracing docs to be correct (#146)
Incorrect docs. Closes #121
2025-03-13 10:55:57 -07:00
Rohan Mehta
17f0a425ba Consolidate to one logger 2025-03-13 13:55:15 -04:00
Rohan Mehta
e7c80ec208
Update model docs with common issues (#148)
These are common issues faced by devs, so adding docs to help.
2025-03-13 10:53:50 -07:00
Rohan Mehta
8a6967b6d4 Update model docs with common issues 2025-03-13 13:43:18 -04:00
Rohan Mehta
4db24bdb3c Update tracing docs to be correct 2025-03-13 13:20:27 -04:00
Rohan Mehta
e069279801
Update custom models to use tools (#144) 2025-03-13 10:12:28 -07:00