tts
Groq text-to-speech service implementation.
- class pipecat.services.groq.tts.GroqTTSSettings(model: str | None | _NotGiven = <factory>, extra: dict[str, Any]=<factory>, voice: str | None | _NotGiven = <factory>, language: Language | str | None | _NotGiven = <factory>, speed: float | None | _NotGiven = <factory>)[source]
Bases:
TTSSettingsSettings for GroqTTSService.
- Parameters:
speed – Speech speed multiplier. Defaults to 1.0.
- speed: float | None | _NotGiven
- class pipecat.services.groq.tts.GroqTTSService(*, api_key: str, output_format: str = 'wav', params: InputParams | None = None, model_name: str | None = None, voice_id: str | None = None, sample_rate: int | None = 48000, settings: GroqTTSSettings | None = None, **kwargs)[source]
Bases:
TTSServiceGroq text-to-speech service implementation.
Provides text-to-speech synthesis using Groq’s TTS API. The service operates at a fixed 48kHz sample rate and supports various voices and output formats.
- Settings
alias of
GroqTTSSettings
- class InputParams(*, language: Language | None = Language.EN, speed: float | None = 1.0)[source]
Bases:
BaseModelInput parameters for Groq TTS configuration.
Deprecated since version 0.0.105: Use
settings=GroqTTSService.Settings(...)instead.- Parameters:
language – Language for speech synthesis. Defaults to English.
speed – Speech speed multiplier. Defaults to 1.0.
- speed: float | None
- GROQ_SAMPLE_RATE = 48000
- __init__(*, api_key: str, output_format: str = 'wav', params: InputParams | None = None, model_name: str | None = None, voice_id: str | None = None, sample_rate: int | None = 48000, settings: GroqTTSSettings | None = None, **kwargs)[source]
Initialize Groq TTS service.
- Parameters:
api_key – Groq API key for authentication.
output_format – Audio output format. Defaults to “wav”.
params –
Additional input parameters for voice customization.
Deprecated since version 0.0.105: Use
settings=GroqTTSService.Settings(...)instead.model_name –
TTS model to use.
Deprecated since version 0.0.105: Use
settings=GroqTTSService.Settings(model=...)instead.voice_id –
Voice identifier to use.
Deprecated since version 0.0.105: Use
settings=GroqTTSService.Settings(voice=...)instead.sample_rate – Audio sample rate. Must be 48000 Hz for Groq TTS.
settings – Runtime-updatable settings. When provided alongside deprecated parameters,
settingsvalues take precedence.**kwargs – Additional arguments passed to parent TTSService class.
- can_generate_metrics() bool[source]
Check if this service can generate processing metrics.
- Returns:
True, as Groq TTS service supports metrics generation.
- async run_tts(text: str, context_id: str) AsyncGenerator[Frame, None][source]
Generate speech from text using Groq’s TTS API.
- Parameters:
text – The text to synthesize into speech.
context_id – The context ID for tracking audio frames.
- Yields:
Frame – Audio frames containing the synthesized speech data.