Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion livekit-agents/livekit/agents/llm/realtime.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,17 @@ class RealtimeModelError(BaseModel):
@dataclass
class RealtimeCapabilities:
message_truncation: bool
"""Whether generated assistant messages can be truncated after interruption"""
turn_detection: bool
"""Whether the model emits server-side speech start and stop events for turn taking"""
user_transcription: bool
"""Whether the model emits user audio transcription events"""
auto_tool_reply_generation: bool
"""Whether the model automatically generates a reply after receiving tool results"""
audio_output: bool
"""Whether the model can produce audio output directly"""
manual_function_calls: bool
"""Whether function call items already in the chat context can be resumed"""
mutable_chat_context: bool = False
"""Whether the chat context can be updated mid-session"""
mutable_instructions: bool = False
Expand All @@ -73,7 +79,11 @@ class RealtimeCapabilities:
per_response_tool_choice: bool = False
"""Whether the tool and tool choice can be specified per response"""
supports_say: bool = False
"""Whether the model supports session.say()"""
"""Whether session.say() can use the realtime session directly, without TTS.

When used through a RealtimeModel, add_to_chat_ctx=False is ignored and the
message is still added to the chat context.
"""


class RealtimeError(Exception):
Expand Down