|
4 | 4 | from datetime import timedelta |
5 | 5 |
|
6 | 6 | from temporalio.client import Client |
7 | | -from temporalio.contrib.openai_agents import ( |
8 | | - ModelActivity, |
9 | | - ModelActivityParameters, |
10 | | - OpenAIAgentsTracingInterceptor, |
11 | | - set_open_ai_agent_temporal_overrides, |
12 | | -) |
13 | | -from temporalio.contrib.pydantic import pydantic_data_converter |
| 7 | +from temporalio.contrib.openai_agents import ModelActivityParameters, OpenAIAgentsPlugin |
14 | 8 | from temporalio.worker import Worker |
15 | 9 |
|
16 | 10 | from openai_agents.workflows.agents_as_tools_workflow import AgentsAsToolsWorkflow |
|
22 | 16 |
|
23 | 17 |
|
24 | 18 | async def main(): |
25 | | - with set_open_ai_agent_temporal_overrides( |
26 | | - model_params=ModelActivityParameters( |
27 | | - start_to_close_timeout=timedelta(seconds=60), |
28 | | - ), |
29 | | - ): |
30 | | - # Create client connected to server at the given address |
31 | | - client = await Client.connect( |
32 | | - "localhost:7233", |
33 | | - data_converter=pydantic_data_converter, |
34 | | - ) |
35 | | - |
36 | | - worker = Worker( |
37 | | - client, |
38 | | - task_queue="openai-agents-task-queue", |
39 | | - workflows=[ |
40 | | - HelloWorldAgent, |
41 | | - ToolsWorkflow, |
42 | | - ResearchWorkflow, |
43 | | - CustomerServiceWorkflow, |
44 | | - AgentsAsToolsWorkflow, |
45 | | - ], |
46 | | - activities=[ |
47 | | - ModelActivity().invoke_model_activity, |
48 | | - get_weather, |
49 | | - ], |
50 | | - interceptors=[OpenAIAgentsTracingInterceptor()], |
51 | | - ) |
52 | | - await worker.run() |
| 19 | + # Create client connected to server at the given address |
| 20 | + client = await Client.connect( |
| 21 | + "localhost:7233", |
| 22 | + plugins=[ |
| 23 | + OpenAIAgentsPlugin( |
| 24 | + model_params=ModelActivityParameters( |
| 25 | + start_to_close_timeout=timedelta(seconds=120) |
| 26 | + ) |
| 27 | + ), |
| 28 | + ], |
| 29 | + ) |
| 30 | + |
| 31 | + worker = Worker( |
| 32 | + client, |
| 33 | + task_queue="openai-agents-task-queue", |
| 34 | + workflows=[ |
| 35 | + HelloWorldAgent, |
| 36 | + ToolsWorkflow, |
| 37 | + ResearchWorkflow, |
| 38 | + CustomerServiceWorkflow, |
| 39 | + AgentsAsToolsWorkflow, |
| 40 | + ], |
| 41 | + activities=[ |
| 42 | + get_weather, |
| 43 | + ], |
| 44 | + ) |
| 45 | + await worker.run() |
53 | 46 |
|
54 | 47 |
|
55 | 48 | if __name__ == "__main__": |
|
0 commit comments