File tree Expand file tree Collapse file tree 4 files changed +14
-14
lines changed Expand file tree Collapse file tree 4 files changed +14
-14
lines changed Original file line number Diff line number Diff line change 2
2
from azure .durable_functions .models .DurableOrchestrationContext import DurableOrchestrationContext
3
3
from yield_exception import YieldException
4
4
5
- class ActivityCallTracker :
5
+ class DurableAIAgentContext :
6
6
def __init__ (self , context : DurableOrchestrationContext ):
7
7
self .context = context
8
8
self .activities_called = 0
Original file line number Diff line number Diff line change 2
2
from agents .run import set_default_agent_runner
3
3
from durable_openai_runner import DurableOpenAIRunner
4
4
from yield_exception import YieldException
5
- from activity_call_tracker import ActivityCallTracker
5
+ from durable_ai_agent_context import DurableAIAgentContext
6
6
import event_loop
7
7
8
8
9
9
def durable_openai_agent_orchestrator (func ):
10
10
@wraps (func )
11
11
def wrapper (context ):
12
12
event_loop .ensure_event_loop ()
13
- activity_call_tracker = ActivityCallTracker (context )
14
- durable_openai_runner = DurableOpenAIRunner (activity_call_tracker = activity_call_tracker )
13
+ context = DurableAIAgentContext (context )
14
+ durable_openai_runner = DurableOpenAIRunner (context = context )
15
15
set_default_agent_runner (durable_openai_runner )
16
16
17
17
try :
18
18
result = func (context )
19
19
return result
20
20
except YieldException as e :
21
- yield from activity_call_tracker .yield_and_clear_tasks ()
21
+ yield from context .yield_and_clear_tasks ()
22
22
yield e .task
23
23
finally :
24
- yield from activity_call_tracker .yield_and_clear_tasks ()
24
+ yield from context .yield_and_clear_tasks ()
25
25
26
26
return wrapper
Original file line number Diff line number Diff line change 8
8
HandoffInput ,
9
9
AgentOutputSchemaInput
10
10
)
11
- from activity_call_tracker import ActivityCallTracker
11
+ from durable_ai_agent_context import DurableAIAgentContext
12
12
import azure .durable_functions as df
13
13
14
14
import json
@@ -44,10 +44,10 @@ class _DurableModelStub(Model):
44
44
def __init__ (
45
45
self ,
46
46
model_name : Optional [str ],
47
- activity_call_tracker : ActivityCallTracker ,
47
+ context : DurableAIAgentContext ,
48
48
) -> None :
49
49
self .model_name = model_name
50
- self .activity_call_tracker = activity_call_tracker
50
+ self .context = context
51
51
52
52
async def get_response (
53
53
self ,
@@ -131,7 +131,7 @@ def make_tool_info(tool: Tool) -> ToolInput:
131
131
132
132
activity_input_json = activity_input .to_json ()
133
133
134
- response = self .activity_call_tracker .call_activity ("invoke_model_activity" , activity_input_json )
134
+ response = self .context .call_activity ("invoke_model_activity" , activity_input_json )
135
135
json_response = json .loads (response )
136
136
model_response = ModelResponse (** json_response )
137
137
return model_response
Original file line number Diff line number Diff line change 1
1
import logging
2
2
from typing import Any
3
- from activity_call_tracker import ActivityCallTracker
3
+ from durable_ai_agent_context import DurableAIAgentContext
4
4
5
5
import json
6
6
from dataclasses import replace
22
22
logger = logging .getLogger (__name__ )
23
23
24
24
class DurableOpenAIRunner :
25
- def __init__ (self , activity_call_tracker : ActivityCallTracker ) -> None :
25
+ def __init__ (self , context : DurableAIAgentContext ) -> None :
26
26
self ._runner = DEFAULT_AGENT_RUNNER or AgentRunner ()
27
- self .activity_call_tracker = activity_call_tracker
27
+ self .context = context
28
28
29
29
def run_sync (
30
30
self ,
@@ -57,7 +57,7 @@ def run_sync(
57
57
run_config ,
58
58
model = _DurableModelStub (
59
59
model_name = model_name ,
60
- activity_call_tracker = self .activity_call_tracker ,
60
+ context = self .context ,
61
61
),
62
62
)
63
63
You can’t perform that action at this time.
0 commit comments