Skip to content

Commit 0208f2a

Browse files
fix: fix stream event model reference
1 parent 04caaad commit 0208f2a

File tree

5 files changed

+191
-17
lines changed

5 files changed

+191
-17
lines changed

.stats.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 109
22
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/llamastack%2Fllama-stack-client-4337a6181c2db17737133e944b4b660a5e00ea10dce6be3252918e39451e9b5f.yml
33
openapi_spec_hash: a0bc8f4b5f45bc5741fed8eaa61171c3
4-
config_hash: 03aab396899c7d9aa3fba867ce54824b
4+
config_hash: 47ef2eb62d188340f22eb6dea3693f15

src/llama_stack_client/resources/alpha/agents/turn.py

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
from ....types.alpha.agents import turn_create_params, turn_resume_params
2323
from ....types.alpha.agents.turn import Turn
2424
from ....types.alpha.tool_response_param import ToolResponseParam
25+
from ....types.alpha.agents.agent_turn_response_stream_chunk import AgentTurnResponseStreamChunk
2526

2627
__all__ = ["TurnResource", "AsyncTurnResource"]
2728

@@ -108,7 +109,7 @@ def create(
108109
extra_query: Query | None = None,
109110
extra_body: Body | None = None,
110111
timeout: float | httpx.Timeout | None | NotGiven = not_given,
111-
) -> Stream[object]:
112+
) -> Stream[AgentTurnResponseStreamChunk]:
112113
"""
113114
Create a new turn for an agent.
114115
@@ -153,7 +154,7 @@ def create(
153154
extra_query: Query | None = None,
154155
extra_body: Body | None = None,
155156
timeout: float | httpx.Timeout | None | NotGiven = not_given,
156-
) -> Turn | Stream[object]:
157+
) -> Turn | Stream[AgentTurnResponseStreamChunk]:
157158
"""
158159
Create a new turn for an agent.
159160
@@ -198,7 +199,7 @@ def create(
198199
extra_query: Query | None = None,
199200
extra_body: Body | None = None,
200201
timeout: float | httpx.Timeout | None | NotGiven = not_given,
201-
) -> Turn | Stream[object]:
202+
) -> Turn | Stream[AgentTurnResponseStreamChunk]:
202203
if not agent_id:
203204
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
204205
if not session_id:
@@ -222,7 +223,7 @@ def create(
222223
),
223224
cast_to=Turn,
224225
stream=stream or False,
225-
stream_cls=Stream[object],
226+
stream_cls=Stream[AgentTurnResponseStreamChunk],
226227
)
227228

228229
def retrieve(
@@ -317,7 +318,7 @@ def resume(
317318
extra_query: Query | None = None,
318319
extra_body: Body | None = None,
319320
timeout: float | httpx.Timeout | None | NotGiven = not_given,
320-
) -> Stream[object]:
321+
) -> Stream[AgentTurnResponseStreamChunk]:
321322
"""Resume an agent turn with executed tool call responses.
322323
323324
When a Turn has the
@@ -355,7 +356,7 @@ def resume(
355356
extra_query: Query | None = None,
356357
extra_body: Body | None = None,
357358
timeout: float | httpx.Timeout | None | NotGiven = not_given,
358-
) -> Turn | Stream[object]:
359+
) -> Turn | Stream[AgentTurnResponseStreamChunk]:
359360
"""Resume an agent turn with executed tool call responses.
360361
361362
When a Turn has the
@@ -393,7 +394,7 @@ def resume(
393394
extra_query: Query | None = None,
394395
extra_body: Body | None = None,
395396
timeout: float | httpx.Timeout | None | NotGiven = not_given,
396-
) -> Turn | Stream[object]:
397+
) -> Turn | Stream[AgentTurnResponseStreamChunk]:
397398
if not agent_id:
398399
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
399400
if not session_id:
@@ -416,7 +417,7 @@ def resume(
416417
),
417418
cast_to=Turn,
418419
stream=stream or False,
419-
stream_cls=Stream[object],
420+
stream_cls=Stream[AgentTurnResponseStreamChunk],
420421
)
421422

422423

@@ -502,7 +503,7 @@ async def create(
502503
extra_query: Query | None = None,
503504
extra_body: Body | None = None,
504505
timeout: float | httpx.Timeout | None | NotGiven = not_given,
505-
) -> AsyncStream[object]:
506+
) -> AsyncStream[AgentTurnResponseStreamChunk]:
506507
"""
507508
Create a new turn for an agent.
508509
@@ -547,7 +548,7 @@ async def create(
547548
extra_query: Query | None = None,
548549
extra_body: Body | None = None,
549550
timeout: float | httpx.Timeout | None | NotGiven = not_given,
550-
) -> Turn | AsyncStream[object]:
551+
) -> Turn | AsyncStream[AgentTurnResponseStreamChunk]:
551552
"""
552553
Create a new turn for an agent.
553554
@@ -592,7 +593,7 @@ async def create(
592593
extra_query: Query | None = None,
593594
extra_body: Body | None = None,
594595
timeout: float | httpx.Timeout | None | NotGiven = not_given,
595-
) -> Turn | AsyncStream[object]:
596+
) -> Turn | AsyncStream[AgentTurnResponseStreamChunk]:
596597
if not agent_id:
597598
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
598599
if not session_id:
@@ -616,7 +617,7 @@ async def create(
616617
),
617618
cast_to=Turn,
618619
stream=stream or False,
619-
stream_cls=AsyncStream[object],
620+
stream_cls=AsyncStream[AgentTurnResponseStreamChunk],
620621
)
621622

622623
async def retrieve(
@@ -711,7 +712,7 @@ async def resume(
711712
extra_query: Query | None = None,
712713
extra_body: Body | None = None,
713714
timeout: float | httpx.Timeout | None | NotGiven = not_given,
714-
) -> AsyncStream[object]:
715+
) -> AsyncStream[AgentTurnResponseStreamChunk]:
715716
"""Resume an agent turn with executed tool call responses.
716717
717718
When a Turn has the
@@ -749,7 +750,7 @@ async def resume(
749750
extra_query: Query | None = None,
750751
extra_body: Body | None = None,
751752
timeout: float | httpx.Timeout | None | NotGiven = not_given,
752-
) -> Turn | AsyncStream[object]:
753+
) -> Turn | AsyncStream[AgentTurnResponseStreamChunk]:
753754
"""Resume an agent turn with executed tool call responses.
754755
755756
When a Turn has the
@@ -787,7 +788,7 @@ async def resume(
787788
extra_query: Query | None = None,
788789
extra_body: Body | None = None,
789790
timeout: float | httpx.Timeout | None | NotGiven = not_given,
790-
) -> Turn | AsyncStream[object]:
791+
) -> Turn | AsyncStream[AgentTurnResponseStreamChunk]:
791792
if not agent_id:
792793
raise ValueError(f"Expected a non-empty value for `agent_id` but received {agent_id!r}")
793794
if not session_id:
@@ -810,7 +811,7 @@ async def resume(
810811
),
811812
cast_to=Turn,
812813
stream=stream or False,
813-
stream_cls=AsyncStream[object],
814+
stream_cls=AsyncStream[AgentTurnResponseStreamChunk],
814815
)
815816

816817

src/llama_stack_client/types/alpha/agents/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,10 @@
77
from .turn_create_params import TurnCreateParams as TurnCreateParams
88
from .turn_resume_params import TurnResumeParams as TurnResumeParams
99
from .session_list_params import SessionListParams as SessionListParams
10+
from .turn_response_event import TurnResponseEvent as TurnResponseEvent
1011
from .session_create_params import SessionCreateParams as SessionCreateParams
1112
from .session_list_response import SessionListResponse as SessionListResponse
1213
from .step_retrieve_response import StepRetrieveResponse as StepRetrieveResponse
1314
from .session_create_response import SessionCreateResponse as SessionCreateResponse
1415
from .session_retrieve_params import SessionRetrieveParams as SessionRetrieveParams
16+
from .agent_turn_response_stream_chunk import AgentTurnResponseStreamChunk as AgentTurnResponseStreamChunk
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2+
3+
from ...._models import BaseModel
4+
from .turn_response_event import TurnResponseEvent
5+
6+
__all__ = ["AgentTurnResponseStreamChunk"]
7+
8+
9+
class AgentTurnResponseStreamChunk(BaseModel):
10+
event: TurnResponseEvent
11+
"""Individual event in the agent turn response stream"""
Lines changed: 160 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,160 @@
1+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2+
3+
from typing import Dict, List, Union, Optional
4+
from typing_extensions import Literal, Annotated, TypeAlias
5+
6+
from .turn import Turn
7+
from ...._utils import PropertyInfo
8+
from ...._models import BaseModel
9+
from ..inference_step import InferenceStep
10+
from ..shield_call_step import ShieldCallStep
11+
from ...shared.tool_call import ToolCall
12+
from ..tool_execution_step import ToolExecutionStep
13+
from ..memory_retrieval_step import MemoryRetrievalStep
14+
15+
__all__ = [
16+
"TurnResponseEvent",
17+
"Payload",
18+
"PayloadAgentTurnResponseStepStartPayload",
19+
"PayloadAgentTurnResponseStepProgressPayload",
20+
"PayloadAgentTurnResponseStepProgressPayloadDelta",
21+
"PayloadAgentTurnResponseStepProgressPayloadDeltaTextDelta",
22+
"PayloadAgentTurnResponseStepProgressPayloadDeltaImageDelta",
23+
"PayloadAgentTurnResponseStepProgressPayloadDeltaToolCallDelta",
24+
"PayloadAgentTurnResponseStepProgressPayloadDeltaToolCallDeltaToolCall",
25+
"PayloadAgentTurnResponseStepCompletePayload",
26+
"PayloadAgentTurnResponseStepCompletePayloadStepDetails",
27+
"PayloadAgentTurnResponseTurnStartPayload",
28+
"PayloadAgentTurnResponseTurnCompletePayload",
29+
"PayloadAgentTurnResponseTurnAwaitingInputPayload",
30+
]
31+
32+
33+
class PayloadAgentTurnResponseStepStartPayload(BaseModel):
34+
event_type: Literal["step_start"]
35+
"""Type of event being reported"""
36+
37+
step_id: str
38+
"""Unique identifier for the step within a turn"""
39+
40+
step_type: Literal["inference", "tool_execution", "shield_call", "memory_retrieval"]
41+
"""Type of step being executed"""
42+
43+
metadata: Optional[Dict[str, Union[bool, float, str, List[object], object, None]]] = None
44+
"""(Optional) Additional metadata for the step"""
45+
46+
47+
class PayloadAgentTurnResponseStepProgressPayloadDeltaTextDelta(BaseModel):
48+
text: str
49+
"""The incremental text content"""
50+
51+
type: Literal["text"]
52+
"""Discriminator type of the delta. Always "text" """
53+
54+
55+
class PayloadAgentTurnResponseStepProgressPayloadDeltaImageDelta(BaseModel):
56+
image: str
57+
"""The incremental image data as bytes"""
58+
59+
type: Literal["image"]
60+
"""Discriminator type of the delta. Always "image" """
61+
62+
63+
PayloadAgentTurnResponseStepProgressPayloadDeltaToolCallDeltaToolCall: TypeAlias = Union[str, ToolCall]
64+
65+
66+
class PayloadAgentTurnResponseStepProgressPayloadDeltaToolCallDelta(BaseModel):
67+
parse_status: Literal["started", "in_progress", "failed", "succeeded"]
68+
"""Current parsing status of the tool call"""
69+
70+
tool_call: PayloadAgentTurnResponseStepProgressPayloadDeltaToolCallDeltaToolCall
71+
"""Either an in-progress tool call string or the final parsed tool call"""
72+
73+
type: Literal["tool_call"]
74+
"""Discriminator type of the delta. Always "tool_call" """
75+
76+
77+
PayloadAgentTurnResponseStepProgressPayloadDelta: TypeAlias = Annotated[
78+
Union[
79+
PayloadAgentTurnResponseStepProgressPayloadDeltaTextDelta,
80+
PayloadAgentTurnResponseStepProgressPayloadDeltaImageDelta,
81+
PayloadAgentTurnResponseStepProgressPayloadDeltaToolCallDelta,
82+
],
83+
PropertyInfo(discriminator="type"),
84+
]
85+
86+
87+
class PayloadAgentTurnResponseStepProgressPayload(BaseModel):
88+
delta: PayloadAgentTurnResponseStepProgressPayloadDelta
89+
"""Incremental content changes during step execution"""
90+
91+
event_type: Literal["step_progress"]
92+
"""Type of event being reported"""
93+
94+
step_id: str
95+
"""Unique identifier for the step within a turn"""
96+
97+
step_type: Literal["inference", "tool_execution", "shield_call", "memory_retrieval"]
98+
"""Type of step being executed"""
99+
100+
101+
PayloadAgentTurnResponseStepCompletePayloadStepDetails: TypeAlias = Annotated[
102+
Union[InferenceStep, ToolExecutionStep, ShieldCallStep, MemoryRetrievalStep],
103+
PropertyInfo(discriminator="step_type"),
104+
]
105+
106+
107+
class PayloadAgentTurnResponseStepCompletePayload(BaseModel):
108+
event_type: Literal["step_complete"]
109+
"""Type of event being reported"""
110+
111+
step_details: PayloadAgentTurnResponseStepCompletePayloadStepDetails
112+
"""Complete details of the executed step"""
113+
114+
step_id: str
115+
"""Unique identifier for the step within a turn"""
116+
117+
step_type: Literal["inference", "tool_execution", "shield_call", "memory_retrieval"]
118+
"""Type of step being executed"""
119+
120+
121+
class PayloadAgentTurnResponseTurnStartPayload(BaseModel):
122+
event_type: Literal["turn_start"]
123+
"""Type of event being reported"""
124+
125+
turn_id: str
126+
"""Unique identifier for the turn within a session"""
127+
128+
129+
class PayloadAgentTurnResponseTurnCompletePayload(BaseModel):
130+
event_type: Literal["turn_complete"]
131+
"""Type of event being reported"""
132+
133+
turn: Turn
134+
"""Complete turn data including all steps and results"""
135+
136+
137+
class PayloadAgentTurnResponseTurnAwaitingInputPayload(BaseModel):
138+
event_type: Literal["turn_awaiting_input"]
139+
"""Type of event being reported"""
140+
141+
turn: Turn
142+
"""Turn data when waiting for external tool responses"""
143+
144+
145+
Payload: TypeAlias = Annotated[
146+
Union[
147+
PayloadAgentTurnResponseStepStartPayload,
148+
PayloadAgentTurnResponseStepProgressPayload,
149+
PayloadAgentTurnResponseStepCompletePayload,
150+
PayloadAgentTurnResponseTurnStartPayload,
151+
PayloadAgentTurnResponseTurnCompletePayload,
152+
PayloadAgentTurnResponseTurnAwaitingInputPayload,
153+
],
154+
PropertyInfo(discriminator="event_type"),
155+
]
156+
157+
158+
class TurnResponseEvent(BaseModel):
159+
payload: Payload
160+
"""Event-specific payload containing event data"""

0 commit comments

Comments
 (0)