openai-agents 0.2.2__py3-none-any.whl → 0.2.4__py3-none-any.whl

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.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: openai-agents
3
- Version: 0.2.2
3
+ Version: 0.2.4
4
4
  Summary: OpenAI Agents SDK
5
5
  Project-URL: Homepage, https://openai.github.io/openai-agents-python/
6
6
  Project-URL: Repository, https://github.com/openai/openai-agents-python
@@ -21,7 +21,7 @@ Classifier: Typing :: Typed
21
21
  Requires-Python: >=3.9
22
22
  Requires-Dist: griffe<2,>=1.5.6
23
23
  Requires-Dist: mcp<2,>=1.11.0; python_version >= '3.10'
24
- Requires-Dist: openai<2,>=1.96.1
24
+ Requires-Dist: openai<2,>=1.97.1
25
25
  Requires-Dist: pydantic<3,>=2.10
26
26
  Requires-Dist: requests<3,>=2.0
27
27
  Requires-Dist: types-requests<3,>=2.0
@@ -56,125 +56,19 @@ The OpenAI Agents SDK is a lightweight yet powerful framework for building multi
56
56
 
57
57
  Explore the [examples](examples) directory to see the SDK in action, and read our [documentation](https://openai.github.io/openai-agents-python/) for more details.
58
58
 
59
- ## Sessions
60
-
61
- The Agents SDK provides built-in session memory to automatically maintain conversation history across multiple agent runs, eliminating the need to manually handle `.to_input_list()` between turns.
62
-
63
- ### Quick start
64
-
65
- ```python
66
- from agents import Agent, Runner, SQLiteSession
67
-
68
- # Create agent
69
- agent = Agent(
70
- name="Assistant",
71
- instructions="Reply very concisely.",
72
- )
73
-
74
- # Create a session instance
75
- session = SQLiteSession("conversation_123")
76
-
77
- # First turn
78
- result = await Runner.run(
79
- agent,
80
- "What city is the Golden Gate Bridge in?",
81
- session=session
82
- )
83
- print(result.final_output) # "San Francisco"
84
-
85
- # Second turn - agent automatically remembers previous context
86
- result = await Runner.run(
87
- agent,
88
- "What state is it in?",
89
- session=session
90
- )
91
- print(result.final_output) # "California"
92
-
93
- # Also works with synchronous runner
94
- result = Runner.run_sync(
95
- agent,
96
- "What's the population?",
97
- session=session
98
- )
99
- print(result.final_output) # "Approximately 39 million"
100
- ```
101
-
102
- ### Session options
103
-
104
- - **No memory** (default): No session memory when session parameter is omitted
105
- - **`session: Session = DatabaseSession(...)`**: Use a Session instance to manage conversation history
106
-
107
- ```python
108
- from agents import Agent, Runner, SQLiteSession
109
-
110
- # Custom SQLite database file
111
- session = SQLiteSession("user_123", "conversations.db")
112
- agent = Agent(name="Assistant")
113
-
114
- # Different session IDs maintain separate conversation histories
115
- result1 = await Runner.run(
116
- agent,
117
- "Hello",
118
- session=session
119
- )
120
- result2 = await Runner.run(
121
- agent,
122
- "Hello",
123
- session=SQLiteSession("user_456", "conversations.db")
124
- )
125
- ```
126
-
127
- ### Custom session implementations
128
-
129
- You can implement your own session memory by creating a class that follows the `Session` protocol:
130
-
131
- ```python
132
- from agents.memory import Session
133
- from typing import List
134
-
135
- class MyCustomSession:
136
- """Custom session implementation following the Session protocol."""
137
-
138
- def __init__(self, session_id: str):
139
- self.session_id = session_id
140
- # Your initialization here
141
-
142
- async def get_items(self, limit: int | None = None) -> List[dict]:
143
- # Retrieve conversation history for the session
144
- pass
145
-
146
- async def add_items(self, items: List[dict]) -> None:
147
- # Store new items for the session
148
- pass
149
-
150
- async def pop_item(self) -> dict | None:
151
- # Remove and return the most recent item from the session
152
- pass
153
-
154
- async def clear_session(self) -> None:
155
- # Clear all items for the session
156
- pass
157
-
158
- # Use your custom session
159
- agent = Agent(name="Assistant")
160
- result = await Runner.run(
161
- agent,
162
- "Hello",
163
- session=MyCustomSession("my_session")
164
- )
165
- ```
166
-
167
59
  ## Get started
168
60
 
169
61
  1. Set up your Python environment
170
62
 
171
- - Option A: Using venv (traditional method)
63
+ - Option A: Using venv (traditional method)
64
+
172
65
  ```bash
173
66
  python -m venv env
174
67
  source env/bin/activate # On Windows: env\Scripts\activate
175
68
  ```
176
69
 
177
- - Option B: Using uv (recommended)
70
+ - Option B: Using uv (recommended)
71
+
178
72
  ```bash
179
73
  uv venv
180
74
  source .venv/bin/activate # On Windows: .venv\Scripts\activate
@@ -302,6 +196,114 @@ The Agents SDK is designed to be highly flexible, allowing you to model a wide r
302
196
 
303
197
  The Agents SDK automatically traces your agent runs, making it easy to track and debug the behavior of your agents. Tracing is extensible by design, supporting custom spans and a wide variety of external destinations, including [Logfire](https://logfire.pydantic.dev/docs/integrations/llms/openai/#openai-agents), [AgentOps](https://docs.agentops.ai/v1/integrations/agentssdk), [Braintrust](https://braintrust.dev/docs/guides/traces/integrations#openai-agents-sdk), [Scorecard](https://docs.scorecard.io/docs/documentation/features/tracing#openai-agents-sdk-integration), and [Keywords AI](https://docs.keywordsai.co/integration/development-frameworks/openai-agent). For more details about how to customize or disable tracing, see [Tracing](http://openai.github.io/openai-agents-python/tracing), which also includes a larger list of [external tracing processors](http://openai.github.io/openai-agents-python/tracing/#external-tracing-processors-list).
304
198
 
199
+ ## Sessions
200
+
201
+ The Agents SDK provides built-in session memory to automatically maintain conversation history across multiple agent runs, eliminating the need to manually handle `.to_input_list()` between turns.
202
+
203
+ ### Quick start
204
+
205
+ ```python
206
+ from agents import Agent, Runner, SQLiteSession
207
+
208
+ # Create agent
209
+ agent = Agent(
210
+ name="Assistant",
211
+ instructions="Reply very concisely.",
212
+ )
213
+
214
+ # Create a session instance
215
+ session = SQLiteSession("conversation_123")
216
+
217
+ # First turn
218
+ result = await Runner.run(
219
+ agent,
220
+ "What city is the Golden Gate Bridge in?",
221
+ session=session
222
+ )
223
+ print(result.final_output) # "San Francisco"
224
+
225
+ # Second turn - agent automatically remembers previous context
226
+ result = await Runner.run(
227
+ agent,
228
+ "What state is it in?",
229
+ session=session
230
+ )
231
+ print(result.final_output) # "California"
232
+
233
+ # Also works with synchronous runner
234
+ result = Runner.run_sync(
235
+ agent,
236
+ "What's the population?",
237
+ session=session
238
+ )
239
+ print(result.final_output) # "Approximately 39 million"
240
+ ```
241
+
242
+ ### Session options
243
+
244
+ - **No memory** (default): No session memory when session parameter is omitted
245
+ - **`session: Session = DatabaseSession(...)`**: Use a Session instance to manage conversation history
246
+
247
+ ```python
248
+ from agents import Agent, Runner, SQLiteSession
249
+
250
+ # Custom SQLite database file
251
+ session = SQLiteSession("user_123", "conversations.db")
252
+ agent = Agent(name="Assistant")
253
+
254
+ # Different session IDs maintain separate conversation histories
255
+ result1 = await Runner.run(
256
+ agent,
257
+ "Hello",
258
+ session=session
259
+ )
260
+ result2 = await Runner.run(
261
+ agent,
262
+ "Hello",
263
+ session=SQLiteSession("user_456", "conversations.db")
264
+ )
265
+ ```
266
+
267
+ ### Custom session implementations
268
+
269
+ You can implement your own session memory by creating a class that follows the `Session` protocol:
270
+
271
+ ```python
272
+ from agents.memory import Session
273
+ from typing import List
274
+
275
+ class MyCustomSession:
276
+ """Custom session implementation following the Session protocol."""
277
+
278
+ def __init__(self, session_id: str):
279
+ self.session_id = session_id
280
+ # Your initialization here
281
+
282
+ async def get_items(self, limit: int | None = None) -> List[dict]:
283
+ # Retrieve conversation history for the session
284
+ pass
285
+
286
+ async def add_items(self, items: List[dict]) -> None:
287
+ # Store new items for the session
288
+ pass
289
+
290
+ async def pop_item(self) -> dict | None:
291
+ # Remove and return the most recent item from the session
292
+ pass
293
+
294
+ async def clear_session(self) -> None:
295
+ # Clear all items for the session
296
+ pass
297
+
298
+ # Use your custom session
299
+ agent = Agent(name="Assistant")
300
+ result = await Runner.run(
301
+ agent,
302
+ "Hello",
303
+ session=MyCustomSession("my_session")
304
+ )
305
+ ```
306
+
305
307
  ## Development (only needed if you need to edit the SDK/examples)
306
308
 
307
309
  0. Ensure you have [`uv`](https://docs.astral.sh/uv/) installed.
@@ -323,6 +325,7 @@ make check # run tests linter and typechecker
323
325
  ```
324
326
 
325
327
  Or to run them individually:
328
+
326
329
  ```
327
330
  make tests # run tests
328
331
  make mypy # run typechecker
@@ -335,6 +338,7 @@ make format-check # run style checker
335
338
  We'd like to acknowledge the excellent work of the open-source community, especially:
336
339
 
337
340
  - [Pydantic](https://docs.pydantic.dev/latest/) (data validation) and [PydanticAI](https://ai.pydantic.dev/) (advanced agent framework)
341
+ - [LiteLLM](https://github.com/BerriAI/litellm) (unified interface for 100+ LLMs)
338
342
  - [MkDocs](https://github.com/squidfunk/mkdocs-material)
339
343
  - [Griffe](https://github.com/mkdocstrings/griffe)
340
344
  - [uv](https://github.com/astral-sh/uv) and [ruff](https://github.com/astral-sh/ruff)
@@ -2,17 +2,17 @@ agents/__init__.py,sha256=KO_SBzwwg7cXPvMNDD1_lRhFIVR6E2RmyU624sAEEVo,7781
2
2
  agents/_config.py,sha256=ANrM7GP2VSQehDkMc9qocxkUlPwqU-i5sieMJyEwxpM,796
3
3
  agents/_debug.py,sha256=7OKys2lDjeCtGggTkM53m_8vw0WIr3yt-_JPBDAnsw0,608
4
4
  agents/_run_impl.py,sha256=LlUM0YqZWmqz4WoWu0YK1Du6k09TX-ot94sikM16Y4U,44507
5
- agents/agent.py,sha256=eWtYqVJHz3ol3SoLZm132_sJ46dF5DEKQ8aV8KgDv2E,13381
6
- agents/agent_output.py,sha256=bHItis02dw-issbxjB4VnjUFdSByM9OR26rzxsFOSnQ,7154
5
+ agents/agent.py,sha256=Hn6O16BQ4jWG_qBx2PiIBvBr0BlwEf4AivK76fe61Gw,12184
6
+ agents/agent_output.py,sha256=teTFK8unUN3esXhmEBO0bQGYQm1Axd5rYleDt9TFDgw,7153
7
7
  agents/computer.py,sha256=XD44UgiUWSfniv-xKwwDP6wFKVwBiZkpaL1hO-0-7ZA,2516
8
8
  agents/exceptions.py,sha256=NHMdHE0cZ6AdA6UgUylTzVHAX05Ol1CkO814a0FdZcs,2862
9
- agents/function_schema.py,sha256=JvMh356N60_c3hj7BXySuM7eqVwP00jealR7rdPnl60,13590
10
- agents/guardrail.py,sha256=1kzhx_bAyq4rtYbqGLlQp2sTk9g4A29NOJZq4LSOIOk,9430
9
+ agents/function_schema.py,sha256=yZ3PEOmfy836Me_W4QlItMeFq2j4BtpuI2FmQswbIcQ,13590
10
+ agents/guardrail.py,sha256=7P-kd9rKPhgB8rtI31MCV5ho4ZrEaNCQxHvE8IK3EOk,9582
11
11
  agents/handoffs.py,sha256=L-b2eMNKyi-uF5Isz7UfpKc2Amvqies3i5tVjDnM3M4,10793
12
- agents/items.py,sha256=lXFc_gKLEqwXIcyMKk4Q-6Rjry0MWD93xlvk4Y1W970,9695
12
+ agents/items.py,sha256=ZKc4aOBearYF4ItT9qtmehUUt9aS-3D0kVA3reoV1mU,9732
13
13
  agents/lifecycle.py,sha256=C1LSoCa_0zf0nt7yI3SKL5bAAG4Cso6--Gmk8S8zpJg,3111
14
14
  agents/logger.py,sha256=p_ef7vWKpBev5FFybPJjhrCCQizK08Yy1A2EDO1SNNg,60
15
- agents/model_settings.py,sha256=98MlYQ35AVJM0OkTe0HHETKCRbh7hDdVbtYkIQibc3I,6043
15
+ agents/model_settings.py,sha256=uWYuQJDzQmXTBxt79fsIhgfxvf2rEiY09m9dDgk-yBk,6075
16
16
  agents/prompts.py,sha256=Ss5y_7s2HFcRAOAKu4WTxQszs5ybI8TfbxgEYdnj9sg,2231
17
17
  agents/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
18
18
  agents/repl.py,sha256=FKZlkGfw6QxItTkjFkCAQwXuV_pn69DIamGd3PiKQFk,2361
@@ -21,16 +21,16 @@ agents/run.py,sha256=GNVMvEs0cw5oU6OISrN5YYEVYVF-KduMt3nfpgBynLs,50792
21
21
  agents/run_context.py,sha256=vuSUQM8O4CLensQY27-22fOqECnw7yvwL9U3WO8b_bk,851
22
22
  agents/stream_events.py,sha256=VFyTu-DT3ZMnHLtMbg-X_lxec0doQxNfx-hVxLB0BpI,1700
23
23
  agents/strict_schema.py,sha256=_KuEJkglmq-Fj3HSeYP4WqTvqrxbSKu6gezfz5Brhh0,5775
24
- agents/tool.py,sha256=m0NHppRFBNTb4mYrlLjGSY-dBOu5KgnIvVpShPBuhps,16542
24
+ agents/tool.py,sha256=CWjwssw4TSnvvQaxo42mUkA2Y5sZzM_h3QTq8zJwIRs,16750
25
25
  agents/tool_context.py,sha256=lbnctijZeanXAThddkklF7vDrXK1Ie2_wx6JZPCOihI,1434
26
- agents/usage.py,sha256=GB83eElU-DVkdutGObGDSX5vJNy8ssu3Xbpp5LlHfwU,1643
26
+ agents/usage.py,sha256=Tb5udGd3DPgD0JBdRD8fDctTE4M-zKML5uRn8ZG1yBc,1675
27
27
  agents/version.py,sha256=_1knUwzSK-HUeZTpRUkk6Z-CIcurqXuEplbV5TLJ08E,230
28
28
  agents/extensions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
29
  agents/extensions/handoff_filters.py,sha256=2cXxu1JROez96CpTiGuT9PIuaIrIE8ksP01fX83krKM,1977
30
30
  agents/extensions/handoff_prompt.py,sha256=oGWN0uNh3Z1L7E-Ev2up8W084fFrDNOsLDy7P6bcmic,1006
31
31
  agents/extensions/visualization.py,sha256=g2eEwW22qe3A4WtH37LwaHhK3QZE9FYHVw9IcOVpwbk,4699
32
32
  agents/extensions/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
- agents/extensions/models/litellm_model.py,sha256=Gmk7M4KGZ-Mfk2LUCzHL-FMm5C6_n41QzwSMVxYcfE8,15014
33
+ agents/extensions/models/litellm_model.py,sha256=TWd57pzGJGpyvrBstqiFsPHlUFnExw1muchGGBA2jJc,15437
34
34
  agents/extensions/models/litellm_provider.py,sha256=wTm00Anq8YoNb9AnyT0JOunDG-HCDm_98ORNy7aNJdw,928
35
35
  agents/mcp/__init__.py,sha256=yHmmYlrmEHzUas1inRLKL2iPqbb_-107G3gKe_tyg4I,750
36
36
  agents/mcp/server.py,sha256=mTXQL4om5oA2fYevk63SUlwDri-RcUleUH_4hFrA0QM,24266
@@ -39,9 +39,9 @@ agents/memory/__init__.py,sha256=bo2Rb3PqwSCo9PhBVVJOjvjMM1TfytuDPAFEDADYwwA,84
39
39
  agents/memory/session.py,sha256=9RQ1I7qGh_9DzsyUd9srSPrxRBlw7jks-67NxYqKvvs,13060
40
40
  agents/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
41
41
  agents/models/_openai_shared.py,sha256=4Ngwo2Fv2RXY61Pqck1cYPkSln2tDnb8Ai-ao4QG-iE,836
42
- agents/models/chatcmpl_converter.py,sha256=lHVmWOxULJd_Q9WnWdh_ZYYRq07-4UNfpl7KDZEGZdg,19420
42
+ agents/models/chatcmpl_converter.py,sha256=m05aOXzO9y23qO3u2-7pHWZ7rdIWQZfckI2KACdIOUY,19829
43
43
  agents/models/chatcmpl_helpers.py,sha256=eIWySobaH7I0AQijAz5i-_rtsXrSvmEHD567s_8Zw1o,1318
44
- agents/models/chatcmpl_stream_handler.py,sha256=59sdQ6MndKHxPKCd4-D5pziQ9dDFBIfjtr53KJmySvI,23984
44
+ agents/models/chatcmpl_stream_handler.py,sha256=XUoMnNEcSqK6IRMI6GPH8CwMCXi6NhbfHfpCY3SXJOM,24124
45
45
  agents/models/fake_id.py,sha256=lbXjUUSMeAQ8eFx4V5QLUnBClHE6adJlYYav55RlG5w,268
46
46
  agents/models/interface.py,sha256=TpY_GEk3LLMozCcYAEcC-Y_VRpI3pwE7A7ZM317mk7M,3839
47
47
  agents/models/multi_provider.py,sha256=aiDbls5G4YomPfN6qH1pGlj41WS5jlDp2T82zm6qcnM,5578
@@ -49,29 +49,31 @@ agents/models/openai_chatcompletions.py,sha256=Br7nWsibVvMr0jff6H6adpe_AjYTgLgoA
49
49
  agents/models/openai_provider.py,sha256=NMxTNaoTa329GrA7jj51LC02pb_e2eFh-PCvWADJrkY,3478
50
50
  agents/models/openai_responses.py,sha256=IaZ419gGkx8cWDZxi_2djvAor3RoUUiAdid782WOyv0,16720
51
51
  agents/realtime/README.md,sha256=5YCYXH5ULmlWoWo1PE9TlbHjeYgjnp-xY8ZssSFY2Vk,126
52
- agents/realtime/__init__.py,sha256=MPdn2EXsjP1WX-iGaQm94Yw_j8xNm-KcO-vdHhm0sCw,4807
52
+ agents/realtime/__init__.py,sha256=7qvzK8QJuHRnPHxDgDj21v8-lnSN4Uurg9znwJv_Tqg,4923
53
+ agents/realtime/_default_tracker.py,sha256=4OMxBvD1MnZmMn6JZYKL42uWhVzvK6NdDLDfPP54d78,1765
54
+ agents/realtime/_util.py,sha256=uawurhWKi3_twNFcZ5Yn1mVvv0RKl4IoyCSag8hGxrE,313
53
55
  agents/realtime/agent.py,sha256=xVQYVJjsbi4FpJZ8jwogfKUsguOzpWXWih6rqLZ8AgE,3745
54
56
  agents/realtime/config.py,sha256=O7EGQgHrv2p0gtvZfODwSb4g1RJXkJ2ySH1YdNLt_K8,5751
55
- agents/realtime/events.py,sha256=bOyO7Yv0g_6StXKqAzapNTOq8GdaOuQqj3BbtXNfHU4,5090
57
+ agents/realtime/events.py,sha256=YnyXmkc2rkIAcCDoW5yxylMYeXeaq_QTlyRR5u5VsaM,5534
56
58
  agents/realtime/handoffs.py,sha256=avLFix5kEutel57IRcddssGiVHzGptOzWL9OqPaLVh8,6702
57
59
  agents/realtime/items.py,sha256=psT6AH65qmngmPsgwk6CXacVo5tEDYq0Za3EitHFpTA,5052
58
- agents/realtime/model.py,sha256=YwMBwtj33Z6uADnz1AoYg4wSfmpfYdZNq7ZaK8hlekw,2188
59
- agents/realtime/model_events.py,sha256=JDh70uDctVuwex5EiYUdWhqQvBarN3ge7eREd1aUznU,3386
60
+ agents/realtime/model.py,sha256=RJBA8-Dkd2JTqGzbKacoX4dN_qTWn_p7npL73To3ymw,6143
61
+ agents/realtime/model_events.py,sha256=X7UrUU_g4u5gWaf2mUesJJ-Ik1Z1QE0Z-ZP7kDmX1t0,4034
60
62
  agents/realtime/model_inputs.py,sha256=OW2bn3wD5_pXLunDUf35jhG2q_bTKbC_D7Qu-83aOEA,2243
61
- agents/realtime/openai_realtime.py,sha256=YubVE1BbdnDpTbLxuh9WFy0eS2y1WzA8h0EdtIzfhC0,27190
63
+ agents/realtime/openai_realtime.py,sha256=wuZ4AFWpgpX76pCgxmt87-Oz738IgxbdF3wqMODaZUI,29817
62
64
  agents/realtime/runner.py,sha256=KfU7utmc9QFH2htIKN2IN9H-5EnB0qN9ezmvlRTnOm4,2511
63
- agents/realtime/session.py,sha256=IZ_b28faA975VC169rBbKHrdh1GFd-vHnotoJ9nv4y0,21407
65
+ agents/realtime/session.py,sha256=WokpD9EfYacdVpiufWGdtNTDxPUZJxtPjbDfmWlJ40M,22411
64
66
  agents/tracing/__init__.py,sha256=5HO_6na5S6EwICgwl50OMtxiIIosUrqalhvldlYvSVc,2991
65
- agents/tracing/create.py,sha256=Gm9N5O2DeBy6UU86tRN0wnmzWyXb-qAUBbTj9oxIHao,18106
67
+ agents/tracing/create.py,sha256=xpJ4ZRnGyUDPKoVVkA_8hmdhtwOKGhSkwRco2AQIhAo,18003
66
68
  agents/tracing/logger.py,sha256=J4KUDRSGa7x5UVfUwWe-gbKwoaq8AeETRqkPt3QvtGg,68
67
69
  agents/tracing/processor_interface.py,sha256=e1mWcIAoQFHID1BapcrAZ6MxZg98bPVYgbOPclVoCXc,1660
68
- agents/tracing/processors.py,sha256=lOdZHwo0rQAflVkKWOZinnWyLtS0stALyydiFOC0gss,11389
70
+ agents/tracing/processors.py,sha256=hgFMnN9QP03UcIx6rkeaWa7rfPeVQ0K1rvUc7m84NVY,11370
69
71
  agents/tracing/provider.py,sha256=hiMTAiVnmnZ2RW6HYvL1hckXE-GQEqTSRvZCVcBY7pI,9212
70
72
  agents/tracing/scope.py,sha256=u17_m8RPpGvbHrTkaO_kDi5ROBWhfOAIgBe7suiaRD4,1445
71
73
  agents/tracing/setup.py,sha256=2h9TH1GAKcXKM1U99dOKKR3XlHp8JKzh2JG3DQPKyhY,612
72
74
  agents/tracing/span_data.py,sha256=nI2Fbu1ORE8ybE6m6RuddTJF5E5xFmEj8Mq5bSFv4bE,9017
73
75
  agents/tracing/spans.py,sha256=6vVzocGMsdgIma1ksqkBZmhar91xj4RpgcpUC3iibqg,6606
74
- agents/tracing/traces.py,sha256=G5LlECSK-DBRFP-bjT8maZjBQulz6SaHILYauUVlfq8,4775
76
+ agents/tracing/traces.py,sha256=EU5KNlNOTC9GFBls5ONDA0FkaUdLrM6y-cLK5953kqE,4784
75
77
  agents/tracing/util.py,sha256=J7IZgVDmeW0aZDw8LBSjBKrlQbcOmaqZE7XQjolPwi8,490
76
78
  agents/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
77
79
  agents/util/_coro.py,sha256=S38XUYFC7bqTELSgMUBsAX1GoRlIrV7coupcUAWH__4,45
@@ -95,7 +97,7 @@ agents/voice/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
95
97
  agents/voice/models/openai_model_provider.py,sha256=Khn0uT-VhsEbe7_OhBMGFQzXNwL80gcWZyTHl3CaBII,3587
96
98
  agents/voice/models/openai_stt.py,sha256=LcVDS7f1pmbm--PWX-IaV9uLg9uv5_L3vSCbVnTJeGs,16864
97
99
  agents/voice/models/openai_tts.py,sha256=4KoLQuFDHKu5a1VTJlu9Nj3MHwMlrn9wfT_liJDJ2dw,1477
98
- openai_agents-0.2.2.dist-info/METADATA,sha256=xaLhodklHzACu9wxsG1fWtpr9KV7IL69N2CI_0cB4Hs,11560
99
- openai_agents-0.2.2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
100
- openai_agents-0.2.2.dist-info/licenses/LICENSE,sha256=E994EspT7Krhy0qGiES7WYNzBHrh1YDk3r--8d1baRU,1063
101
- openai_agents-0.2.2.dist-info/RECORD,,
100
+ openai_agents-0.2.4.dist-info/METADATA,sha256=EE1UoLLCNOh6Moihq8sUzWj0ACABNZiDOqYhdF8EcH4,11651
101
+ openai_agents-0.2.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
102
+ openai_agents-0.2.4.dist-info/licenses/LICENSE,sha256=E994EspT7Krhy0qGiES7WYNzBHrh1YDk3r--8d1baRU,1063
103
+ openai_agents-0.2.4.dist-info/RECORD,,