Realtime Configuration
Run Configuration
Bases:TypedDict
Configuration for running a realtime agent session.
Source code insrc/agents/realtime/config.py
model_settingsinstance-attribute
model_settings:NotRequired[RealtimeSessionModelSettings]Settings for the realtime model session.
output_guardrailsinstance-attribute
output_guardrails:NotRequired[list[OutputGuardrail[Any]]]List of output guardrails to run on the agent's responses.
guardrails_settingsinstance-attribute
guardrails_settings:NotRequired[RealtimeGuardrailsSettings]Settings for guardrail execution.
tracing_disabledinstance-attribute
Whether tracing is disabled for this run.
Model Settings
Bases:TypedDict
Model settings for a realtime model session.
Source code insrc/agents/realtime/config.py
model_nameinstance-attribute
model_name:NotRequired[RealtimeModelName]The name of the realtime model to use.
modalitiesinstance-attribute
The modalities the model should support.
input_audio_formatinstance-attribute
input_audio_format:NotRequired[RealtimeAudioFormat|RealtimeAudioFormats]The format for input audio streams.
output_audio_formatinstance-attribute
output_audio_format:NotRequired[RealtimeAudioFormat|RealtimeAudioFormats]The format for output audio streams.
input_audio_transcriptioninstance-attribute
input_audio_transcription:NotRequired[RealtimeInputAudioTranscriptionConfig]Configuration for transcribing input audio.
input_audio_noise_reductioninstance-attribute
input_audio_noise_reduction:NotRequired[RealtimeInputAudioNoiseReductionConfig|None]Noise reduction configuration for input audio.
turn_detectioninstance-attribute
turn_detection:NotRequired[RealtimeTurnDetectionConfig]Configuration for detecting conversation turns.
tool_choiceinstance-attribute
How the model should choose which tools to call.
tracinginstance-attribute
tracing:NotRequired[RealtimeModelTracingConfig|None]Configuration for request tracing.
Audio Configuration
Bases:TypedDict
Configuration for audio transcription in realtime sessions.
Source code insrc/agents/realtime/config.py
modelinstance-attribute
The transcription model to use.
Bases:TypedDict
Noise reduction configuration for input audio.
Source code insrc/agents/realtime/config.py
Bases:TypedDict
Turn detection config. Allows extra vendor keys if needed.
Source code insrc/agents/realtime/config.py
typeinstance-attribute
The type of voice activity detection to use.
create_responseinstance-attribute
Whether to create a response when a turn is detected.
eagernessinstance-attribute
How eagerly to detect turn boundaries.
interrupt_responseinstance-attribute
Whether to allow interrupting the assistant's response.
prefix_padding_msinstance-attribute
Padding time in milliseconds before turn detection.
silence_duration_msinstance-attribute
Duration of silence in milliseconds to trigger turn detection.
Guardrails Settings
Bases:TypedDict
Settings for output guardrails in realtime sessions.
Source code insrc/agents/realtime/config.py
Model Configuration
Bases:TypedDict
Options for connecting to a realtime model.
Source code insrc/agents/realtime/model.py
api_keyinstance-attribute
The API key (or function that returns a key) to use when connecting. If unset, the model willtry to use a sane default. For example, the OpenAI Realtime model will try to use theOPENAI_API_KEY environment variable.
urlinstance-attribute
The URL to use when connecting. If unset, the model will use a sane default. For example,the OpenAI Realtime model will use the default OpenAI WebSocket URL.
headersinstance-attribute
The headers to use when connecting. If unset, the model will use a sane default.Note that, when you set this, authorization header won't be set under the hood.e.g., {"api-key": "your api key here"} for Azure OpenAI Realtime WebSocket connections.
initial_model_settingsinstance-attribute
initial_model_settings:NotRequired[RealtimeSessionModelSettings]The initial model settings to use when connecting.
playback_trackerinstance-attribute
playback_tracker:NotRequired[RealtimePlaybackTracker]The playback tracker to use when tracking audio playback progress. If not set, the model willuse a default implementation that assumes audio is played immediately, at realtime speed.
A playback tracker is useful for interruptions. The model generates audio much faster thanrealtime playback speed. So if there's an interruption, its useful for the model to know howmuch of the audio has been played by the user. In low-latency scenarios, it's fine to assumethat audio is played back immediately at realtime speed. But in scenarios like phone calls orother remote interactions, you can set a playback tracker that lets the model know when audiois played to the user.
call_idinstance-attribute
Attach to an existing realtime call instead of creating a new session.
When provided, the transport connects using thecall_id query string parameter rather than amodel name. This is used for SIP-originated calls that are accepted via the Realtime Calls API.
Tracing Configuration
Bases:TypedDict
Configuration for tracing in realtime model sessions.
Source code insrc/agents/realtime/config.py
group_idinstance-attribute
A group identifier to use for tracing, to link multiple traces together.
User Input Types
Bases:TypedDict
A message input from the user.
Source code insrc/agents/realtime/config.py
contentinstance-attribute
content:list[RealtimeUserInputText|RealtimeUserInputImage]List of content items (text and image) in the message.