Events
- class pipecat.services.gemini_multimodal_live.events.MediaChunk(*, mimeType, data)[source]
Bases:
BaseModel
- Parameters:
mimeType (str)
data (str)
- mimeType: str
- data: str
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.ContentPart(*, text=None, inlineData=None)[source]
Bases:
BaseModel
- Parameters:
text (str | None)
inlineData (MediaChunk | None)
- text: str | None
- inlineData: MediaChunk | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.Turn(*, role='user', parts)[source]
Bases:
BaseModel
- Parameters:
role (Literal['user', 'model'])
parts (List[ContentPart])
- role: Literal['user', 'model']
- parts: List[ContentPart]
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.StartSensitivity(*values)[source]
Bases:
str
,Enum
Determines how start of speech is detected.
- UNSPECIFIED = 'START_SENSITIVITY_UNSPECIFIED'
- HIGH = 'START_SENSITIVITY_HIGH'
- LOW = 'START_SENSITIVITY_LOW'
- class pipecat.services.gemini_multimodal_live.events.EndSensitivity(*values)[source]
Bases:
str
,Enum
Determines how end of speech is detected.
- UNSPECIFIED = 'END_SENSITIVITY_UNSPECIFIED'
- HIGH = 'END_SENSITIVITY_HIGH'
- LOW = 'END_SENSITIVITY_LOW'
- class pipecat.services.gemini_multimodal_live.events.AutomaticActivityDetection(*, disabled=None, start_of_speech_sensitivity=None, prefix_padding_ms=None, end_of_speech_sensitivity=None, silence_duration_ms=None)[source]
Bases:
BaseModel
Configures automatic detection of activity.
- Parameters:
disabled (bool | None)
start_of_speech_sensitivity (StartSensitivity | None)
prefix_padding_ms (int | None)
end_of_speech_sensitivity (EndSensitivity | None)
silence_duration_ms (int | None)
- disabled: bool | None
- start_of_speech_sensitivity: StartSensitivity | None
- prefix_padding_ms: int | None
- end_of_speech_sensitivity: EndSensitivity | None
- silence_duration_ms: int | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.RealtimeInputConfig(*, automatic_activity_detection=None)[source]
Bases:
BaseModel
Configures the realtime input behavior.
- Parameters:
automatic_activity_detection (AutomaticActivityDetection | None)
- automatic_activity_detection: AutomaticActivityDetection | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.RealtimeInput(*, mediaChunks)[source]
Bases:
BaseModel
- Parameters:
mediaChunks (List[MediaChunk])
- mediaChunks: List[MediaChunk]
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.ClientContent(*, turns=None, turnComplete=False)[source]
Bases:
BaseModel
- Parameters:
turns (List[Turn] | None)
turnComplete (bool)
- turns: List[Turn] | None
- turnComplete: bool
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.AudioInputMessage(*, realtimeInput)[source]
Bases:
BaseModel
- Parameters:
realtimeInput (RealtimeInput)
- realtimeInput: RealtimeInput
- classmethod from_raw_audio(raw_audio, sample_rate)[source]
- Parameters:
raw_audio (bytes)
sample_rate (int)
- Return type:
AudioInputMessage
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.VideoInputMessage(*, realtimeInput)[source]
Bases:
BaseModel
- Parameters:
realtimeInput (RealtimeInput)
- realtimeInput: RealtimeInput
- classmethod from_image_frame(frame)[source]
- Parameters:
frame (ImageRawFrame)
- Return type:
VideoInputMessage
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.ClientContentMessage(*, clientContent)[source]
Bases:
BaseModel
- Parameters:
clientContent (ClientContent)
- clientContent: ClientContent
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.SystemInstruction(*, parts)[source]
Bases:
BaseModel
- Parameters:
parts (List[ContentPart])
- parts: List[ContentPart]
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.AudioTranscriptionConfig[source]
Bases:
BaseModel
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.Setup(*, model, system_instruction=None, tools=None, generation_config=None, input_audio_transcription=None, output_audio_transcription=None, realtime_input_config=None)[source]
Bases:
BaseModel
- Parameters:
model (str)
system_instruction (SystemInstruction | None)
tools (List[dict] | None)
generation_config (dict | None)
input_audio_transcription (AudioTranscriptionConfig | None)
output_audio_transcription (AudioTranscriptionConfig | None)
realtime_input_config (RealtimeInputConfig | None)
- model: str
- system_instruction: SystemInstruction | None
- tools: List[dict] | None
- generation_config: dict | None
- input_audio_transcription: AudioTranscriptionConfig | None
- output_audio_transcription: AudioTranscriptionConfig | None
- realtime_input_config: RealtimeInputConfig | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.Config(*, setup)[source]
Bases:
BaseModel
- Parameters:
setup (Setup)
- setup: Setup
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.SetupComplete[source]
Bases:
BaseModel
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.InlineData(*, mimeType, data)[source]
Bases:
BaseModel
- Parameters:
mimeType (str)
data (str)
- mimeType: str
- data: str
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.Part(*, inlineData=None, text=None)[source]
Bases:
BaseModel
- Parameters:
inlineData (InlineData | None)
text (str | None)
- inlineData: InlineData | None
- text: str | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.ModelTurn(*, parts)[source]
Bases:
BaseModel
- Parameters:
parts (List[Part])
- parts: List[Part]
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.ServerContentInterrupted(*, interrupted)[source]
Bases:
BaseModel
- Parameters:
interrupted (bool)
- interrupted: bool
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.ServerContentTurnComplete(*, turnComplete)[source]
Bases:
BaseModel
- Parameters:
turnComplete (bool)
- turnComplete: bool
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.BidiGenerateContentTranscription(*, text)[source]
Bases:
BaseModel
- Parameters:
text (str)
- text: str
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.ServerContent(*, modelTurn=None, interrupted=None, turnComplete=None, inputTranscription=None, outputTranscription=None)[source]
Bases:
BaseModel
- Parameters:
modelTurn (ModelTurn | None)
interrupted (bool | None)
turnComplete (bool | None)
inputTranscription (BidiGenerateContentTranscription | None)
outputTranscription (BidiGenerateContentTranscription | None)
- modelTurn: ModelTurn | None
- interrupted: bool | None
- turnComplete: bool | None
- inputTranscription: BidiGenerateContentTranscription | None
- outputTranscription: BidiGenerateContentTranscription | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.FunctionCall(*, id, name, args)[source]
Bases:
BaseModel
- Parameters:
id (str)
name (str)
args (dict)
- id: str
- name: str
- args: dict
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.ToolCall(*, functionCalls)[source]
Bases:
BaseModel
- Parameters:
functionCalls (List[FunctionCall])
- functionCalls: List[FunctionCall]
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.Modality(*values)[source]
Bases:
str
,Enum
Modality types in token counts.
- UNSPECIFIED = 'MODALITY_UNSPECIFIED'
- TEXT = 'TEXT'
- IMAGE = 'IMAGE'
- AUDIO = 'AUDIO'
- VIDEO = 'VIDEO'
- class pipecat.services.gemini_multimodal_live.events.ModalityTokenCount(*, modality, tokenCount)[source]
Bases:
BaseModel
Token count for a specific modality.
- Parameters:
modality (Modality)
tokenCount (int)
- modality: Modality
- tokenCount: int
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.UsageMetadata(*, promptTokenCount=None, cachedContentTokenCount=None, responseTokenCount=None, toolUsePromptTokenCount=None, thoughtsTokenCount=None, totalTokenCount=None, promptTokensDetails=None, cacheTokensDetails=None, responseTokensDetails=None, toolUsePromptTokensDetails=None)[source]
Bases:
BaseModel
Usage metadata about the response.
- Parameters:
promptTokenCount (int | None)
cachedContentTokenCount (int | None)
responseTokenCount (int | None)
toolUsePromptTokenCount (int | None)
thoughtsTokenCount (int | None)
totalTokenCount (int | None)
promptTokensDetails (List[ModalityTokenCount] | None)
cacheTokensDetails (List[ModalityTokenCount] | None)
responseTokensDetails (List[ModalityTokenCount] | None)
toolUsePromptTokensDetails (List[ModalityTokenCount] | None)
- promptTokenCount: int | None
- cachedContentTokenCount: int | None
- responseTokenCount: int | None
- toolUsePromptTokenCount: int | None
- thoughtsTokenCount: int | None
- totalTokenCount: int | None
- promptTokensDetails: List[ModalityTokenCount] | None
- cacheTokensDetails: List[ModalityTokenCount] | None
- responseTokensDetails: List[ModalityTokenCount] | None
- toolUsePromptTokensDetails: List[ModalityTokenCount] | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class pipecat.services.gemini_multimodal_live.events.ServerEvent(*, setupComplete=None, serverContent=None, toolCall=None, usageMetadata=None)[source]
Bases:
BaseModel
- Parameters:
setupComplete (SetupComplete | None)
serverContent (ServerContent | None)
toolCall (ToolCall | None)
usageMetadata (UsageMetadata | None)
- setupComplete: SetupComplete | None
- serverContent: ServerContent | None
- toolCall: ToolCall | None
- usageMetadata: UsageMetadata | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- pipecat.services.gemini_multimodal_live.events.parse_server_event(str)[source]
- class pipecat.services.gemini_multimodal_live.events.ContextWindowCompressionConfig(*, sliding_window=True, trigger_tokens=None)[source]
Bases:
BaseModel
Configuration for context window compression.
- Parameters:
sliding_window (bool | None)
trigger_tokens (int | None)
- sliding_window: bool | None
- trigger_tokens: int | None
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].