api update

This commit is contained in:
Xi Yan 2025-02-20 09:52:37 -08:00
parent fbec826883
commit 5d97ee645c

View file

@ -194,6 +194,7 @@ class AgentTurnResponseEventType(Enum):
turn_start = "turn_start" turn_start = "turn_start"
turn_complete = "turn_complete" turn_complete = "turn_complete"
turn_pending = "turn_pending"
@json_schema_type @json_schema_type
@ -235,6 +236,12 @@ class AgentTurnResponseTurnCompletePayload(BaseModel):
turn: Turn turn: Turn
@json_schema_type
class AgentTurnResponseTurnPendingPayload(BaseModel):
event_type: Literal[AgentTurnResponseEventType.turn_pending.value] = AgentTurnResponseEventType.turn_pending.value
turn: Turn
AgentTurnResponseEventPayload = register_schema( AgentTurnResponseEventPayload = register_schema(
Annotated[ Annotated[
Union[ Union[
@ -243,6 +250,7 @@ AgentTurnResponseEventPayload = register_schema(
AgentTurnResponseStepCompletePayload, AgentTurnResponseStepCompletePayload,
AgentTurnResponseTurnStartPayload, AgentTurnResponseTurnStartPayload,
AgentTurnResponseTurnCompletePayload, AgentTurnResponseTurnCompletePayload,
AgentTurnResponseTurnPendingPayload,
], ],
Field(discriminator="event_type"), Field(discriminator="event_type"),
], ],
@ -335,6 +343,18 @@ class Agents(Protocol):
tool_config: Optional[ToolConfig] = None, tool_config: Optional[ToolConfig] = None,
) -> Union[Turn, AsyncIterator[AgentTurnResponseStreamChunk]]: ... ) -> Union[Turn, AsyncIterator[AgentTurnResponseStreamChunk]]: ...
@webmethod(
route="/agents/{agent_id}/session/{session_id}/turn/{turn_id}/update",
method="POST",
)
async def update_agent_turn_with_tool_responses(
self,
agent_id: str,
session_id: str,
turn_id: str,
tool_messages: List[ToolResponseMessage],
) -> Union[Turn, AsyncIterator[AgentTurnResponseStreamChunk]]: ...
@webmethod( @webmethod(
route="/agents/{agent_id}/session/{session_id}/turn/{turn_id}", route="/agents/{agent_id}/session/{session_id}/turn/{turn_id}",
method="GET", method="GET",