Add Settings class attribute alias to all service classes

Add a `Settings` class-level alias on every STT, LLM, TTS, image,
vision, and video service class pointing to its settings dataclass.
This lets developers discover the right settings class via the service
class itself (e.g. `GoogleSTTService.Settings(...)`) without needing
to know or import the separate settings class name.
This commit is contained in:
Mark Backman
2026-03-07 08:17:40 -05:00
parent fdf9fb6f02
commit 26631a9c31
84 changed files with 117 additions and 2 deletions

View File

@@ -159,6 +159,7 @@ class AnthropicLLMService(LLMService):
Can use custom clients like AsyncAnthropicBedrock and AsyncAnthropicVertex.
"""
Settings = AnthropicLLMSettings
_settings: AnthropicLLMSettings
# Overriding the default adapter to use the Anthropic one.

View File

@@ -128,6 +128,7 @@ class AssemblyAISTTService(WebsocketSTTService):
for audio processing and connection management.
"""
Settings = AssemblyAISTTSettings
_settings: AssemblyAISTTSettings
def __init__(

View File

@@ -85,6 +85,7 @@ class AsyncAITTSService(WebsocketTTSService):
Provides text-to-speech using Async's streaming WebSocket API.
"""
Settings = AsyncAITTSSettings
_settings: AsyncAITTSSettings
class InputParams(BaseModel):
@@ -485,6 +486,7 @@ class AsyncAIHttpTTSService(TTSService):
connection is not required or desired.
"""
Settings = AsyncAITTSSettings
_settings: AsyncAITTSSettings
class InputParams(BaseModel):

View File

@@ -746,6 +746,7 @@ class AWSBedrockLLMService(LLMService):
vision capabilities.
"""
Settings = AWSBedrockLLMSettings
_settings: AWSBedrockLLMSettings
# Overriding the default adapter to use the Anthropic one.

View File

@@ -246,6 +246,7 @@ class AWSNovaSonicLLMService(LLMService):
and function calling capabilities using AWS Nova Sonic model.
"""
Settings = AWSNovaSonicLLMSettings
_settings: AWSNovaSonicLLMSettings
# Override the default adapter to use the AWSNovaSonicLLMAdapter one

View File

@@ -60,6 +60,7 @@ class AWSTranscribeSTTService(WebsocketSTTService):
final transcription results.
"""
Settings = AWSTranscribeSTTSettings
_settings: AWSTranscribeSTTSettings
def __init__(

View File

@@ -148,6 +148,7 @@ class AWSPollyTTSService(TTSService):
options including prosody controls.
"""
Settings = AWSPollyTTSSettings
_settings: AWSPollyTTSSettings
class InputParams(BaseModel):
@@ -382,6 +383,8 @@ class PollyTTSService(AWSPollyTTSService):
"""
Settings = AWSPollyTTSSettings
def __init__(self, **kwargs):
"""Initialize the deprecated PollyTTSService.

View File

@@ -43,6 +43,7 @@ class AzureImageGenServiceREST(ImageGenService):
and automatic image download and processing.
"""
Settings = AzureImageGenSettings
_settings: AzureImageGenSettings
def __init__(

View File

@@ -31,6 +31,8 @@ class AzureLLMService(OpenAILLMService):
maintaining full compatibility with OpenAI's interface and functionality.
"""
Settings = AzureLLMSettings
def __init__(
self,
*,

View File

@@ -35,6 +35,7 @@ class AzureRealtimeLLMService(OpenAIRealtimeLLMService):
real-time audio and text communication capabilities as the base OpenAI service.
"""
Settings = AzureRealtimeLLMSettings
_settings: AzureRealtimeLLMSettings
def __init__(

View File

@@ -66,6 +66,7 @@ class AzureSTTService(STTService):
provides real-time transcription results with timing information.
"""
Settings = AzureSTTSettings
_settings: AzureSTTSettings
def __init__(

View File

@@ -246,6 +246,8 @@ class AzureTTSService(TTSService, AzureBaseTTSService):
available for lower latency playback and accurate word-level synchronization.
"""
Settings = AzureTTSSettings
def __init__(
self,
*,
@@ -749,6 +751,8 @@ class AzureHttpTTSService(TTSService, AzureBaseTTSService):
required and simpler integration is preferred.
"""
Settings = AzureTTSSettings
def __init__(
self,
*,

View File

@@ -168,6 +168,7 @@ class CambTTSService(TTSService):
)
"""
Settings = CambTTSSettings
_settings: CambTTSSettings
class InputParams(BaseModel):

View File

@@ -146,6 +146,7 @@ class CartesiaSTTService(WebsocketSTTService):
See: https://docs.cartesia.ai/api-reference/stt/stt
"""
Settings = CartesiaSTTSettings
_settings: CartesiaSTTSettings
def __init__(

View File

@@ -210,6 +210,7 @@ class CartesiaTTSService(WebsocketTTSService):
customization options including generation configuration.
"""
Settings = CartesiaTTSSettings
_settings: CartesiaTTSSettings
class InputParams(BaseModel):
@@ -681,6 +682,7 @@ class CartesiaHttpTTSService(TTSService):
integration is preferred.
"""
Settings = CartesiaTTSSettings
_settings: CartesiaTTSSettings
class InputParams(BaseModel):

View File

@@ -31,6 +31,7 @@ class CerebrasLLMService(OpenAILLMService):
maintaining full compatibility with OpenAI's interface and functionality.
"""
Settings = CerebrasLLMSettings
_settings: CerebrasLLMSettings
def __init__(

View File

@@ -113,6 +113,7 @@ class DeepgramFluxSTTService(WebsocketSTTService):
...
"""
Settings = DeepgramFluxSTTSettings
_settings: DeepgramFluxSTTSettings
class InputParams(BaseModel):

View File

@@ -78,6 +78,7 @@ class DeepgramSageMakerSTTService(STTService):
)
"""
Settings = DeepgramSageMakerSTTSettings
_settings: DeepgramSageMakerSTTSettings
def __init__(

View File

@@ -67,6 +67,7 @@ class DeepgramSageMakerTTSService(TTSService):
)
"""
Settings = DeepgramSageMakerTTSSettings
_settings: DeepgramSageMakerTTSSettings
def __init__(

View File

@@ -266,6 +266,7 @@ class DeepgramSTTService(STTService):
...
"""
Settings = DeepgramSTTSettings
_settings: DeepgramSTTSettings
def __init__(

View File

@@ -58,6 +58,7 @@ class DeepgramTTSService(WebsocketTTSService):
message for conversational AI use cases.
"""
Settings = DeepgramTTSSettings
_settings: DeepgramTTSSettings
SUPPORTED_ENCODINGS = ("linear16", "mulaw", "alaw")
@@ -381,6 +382,7 @@ class DeepgramHttpTTSService(TTSService):
configurable sample rates and quality settings.
"""
Settings = DeepgramTTSSettings
_settings: DeepgramTTSSettings
def __init__(

View File

@@ -31,6 +31,7 @@ class DeepSeekLLMService(OpenAILLMService):
maintaining full compatibility with OpenAI's interface and functionality.
"""
Settings = DeepSeekLLMSettings
_settings: DeepSeekLLMSettings
def __init__(

View File

@@ -216,6 +216,7 @@ class ElevenLabsSTTService(SegmentedSTTService):
The service uploads audio files to ElevenLabs and receives transcription results directly.
"""
Settings = ElevenLabsSTTSettings
_settings: ElevenLabsSTTSettings
class InputParams(BaseModel):
@@ -448,6 +449,7 @@ class ElevenLabsRealtimeSTTService(WebsocketSTTService):
commit transcript segments, providing consistency with other STT services.
"""
Settings = ElevenLabsRealtimeSTTSettings
_settings: ElevenLabsRealtimeSTTSettings
class InputParams(BaseModel):

View File

@@ -316,6 +316,7 @@ class ElevenLabsTTSService(WebsocketTTSService):
customization options including stability, similarity boost, and speed controls.
"""
Settings = ElevenLabsTTSSettings
_settings: ElevenLabsTTSSettings
class InputParams(BaseModel):
@@ -904,6 +905,7 @@ class ElevenLabsHttpTTSService(TTSService):
connection is not required or desired.
"""
Settings = ElevenLabsHttpTTSSettings
_settings: ElevenLabsHttpTTSSettings
class InputParams(BaseModel):

View File

@@ -70,6 +70,9 @@ class FalImageGenService(ImageGenService):
parameters for image quality, safety, and format options.
"""
Settings = FalImageGenSettings
_settings: FalImageGenSettings
class InputParams(BaseModel):
"""Input parameters for Fal.ai image generation.

View File

@@ -155,6 +155,7 @@ class FalSTTService(SegmentedSTTService):
segments. It inherits from SegmentedSTTService to handle audio buffering and speech detection.
"""
Settings = FalSTTSettings
_settings: FalSTTSettings
class InputParams(BaseModel):

View File

@@ -31,6 +31,7 @@ class FireworksLLMService(OpenAILLMService):
maintaining full compatibility with OpenAI's interface and functionality.
"""
Settings = FireworksLLMSettings
_settings: FireworksLLMSettings
def __init__(

View File

@@ -84,6 +84,7 @@ class FishAudioTTSService(InterruptibleTTSService):
audio generation with interruption handling.
"""
Settings = FishAudioTTSSettings
_settings: FishAudioTTSSettings
class InputParams(BaseModel):

View File

@@ -230,6 +230,7 @@ class GladiaSTTService(WebsocketSTTService):
Use :class:`~pipecat.services.gladia.config.GladiaInputParams` directly instead.
"""
Settings = GladiaSTTSettings
_settings: GladiaSTTSettings
# Maintain backward compatibility

View File

@@ -642,6 +642,7 @@ class GeminiLiveLLMService(LLMService):
responses, and tool usage.
"""
Settings = GeminiLiveLLMSettings
_settings: GeminiLiveLLMSettings
# Overriding the default adapter to use the Gemini one.

View File

@@ -57,6 +57,7 @@ class GeminiLiveVertexLLMService(GeminiLiveLLMService):
responses, and tool usage.
"""
Settings = GeminiLiveVertexLLMSettings
_settings: GeminiLiveVertexLLMSettings
def __init__(

View File

@@ -59,6 +59,9 @@ class GoogleImageGenService(ImageGenService):
prompting for enhanced control over generated content.
"""
Settings = GoogleImageGenSettings
_settings: GoogleImageGenSettings
class InputParams(BaseModel):
"""Configuration parameters for Google image generation.
@@ -75,8 +78,6 @@ class GoogleImageGenService(ImageGenService):
model: str = Field(default="imagen-3.0-generate-002")
negative_prompt: Optional[str] = Field(default=None)
_settings: GoogleImageGenSettings
def __init__(
self,
*,

View File

@@ -743,6 +743,7 @@ class GoogleLLMService(LLMService):
expected by the Google AI model.
"""
Settings = GoogleLLMSettings
_settings: GoogleLLMSettings
# Overriding the default adapter to use the Gemini one.

View File

@@ -58,6 +58,7 @@ class GoogleLLMOpenAIBetaService(OpenAILLMService):
https://ai.google.dev/gemini-api/docs/openai
"""
Settings = GoogleOpenAILLMSettings
_settings: GoogleOpenAILLMSettings
def __init__(

View File

@@ -59,6 +59,7 @@ class GoogleVertexLLMService(GoogleLLMService):
https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/inference
"""
Settings = GoogleVertexLLMSettings
_settings: GoogleVertexLLMSettings
class InputParams(GoogleLLMService.InputParams):

View File

@@ -414,6 +414,7 @@ class GoogleSTTService(STTService):
ValueError: If project ID is not found in credentials.
"""
Settings = GoogleSTTSettings
_settings: GoogleSTTSettings
# Google Cloud's STT service has a connection time limit of 5 minutes per stream.

View File

@@ -558,6 +558,7 @@ class GoogleHttpTTSService(TTSService):
Chirp and Journey voices don't support SSML and will use plain text input.
"""
Settings = GoogleHttpTTSSettings
_settings: GoogleHttpTTSSettings
class InputParams(BaseModel):
@@ -1020,6 +1021,7 @@ class GoogleTTSService(GoogleBaseTTSService):
)
"""
Settings = GoogleTTSSettings
_settings: GoogleTTSSettings
class InputParams(BaseModel):
@@ -1198,6 +1200,7 @@ class GeminiTTSService(GoogleBaseTTSService):
)
"""
Settings = GeminiTTSSettings
_settings: GeminiTTSSettings
GOOGLE_SAMPLE_RATE = 24000 # Google TTS always outputs at 24kHz

View File

@@ -88,6 +88,7 @@ class GradiumSTTService(WebsocketSTTService):
for audio processing and connection management.
"""
Settings = GradiumSTTSettings
_settings: GradiumSTTSettings
class InputParams(BaseModel):

View File

@@ -47,6 +47,7 @@ class GradiumTTSSettings(TTSSettings):
class GradiumTTSService(WebsocketTTSService):
"""Text-to-Speech service using Gradium's websocket API."""
Settings = GradiumTTSSettings
_settings: GradiumTTSSettings
class InputParams(BaseModel):

View File

@@ -86,6 +86,7 @@ class GrokLLMService(OpenAILLMService):
processing and reports final totals.
"""
Settings = GrokLLMSettings
_settings: GrokLLMSettings
def __init__(

View File

@@ -202,6 +202,7 @@ class GrokRealtimeLLMService(LLMService):
- Server-side VAD (Voice Activity Detection)
"""
Settings = GrokRealtimeLLMSettings
_settings: GrokRealtimeLLMSettings
# Use the Grok-specific adapter

View File

@@ -30,6 +30,7 @@ class GroqLLMService(OpenAILLMService):
maintaining full compatibility with OpenAI's interface and functionality.
"""
Settings = GroqLLMSettings
_settings: GroqLLMSettings
def __init__(

View File

@@ -37,6 +37,7 @@ class GroqSTTService(BaseWhisperSTTService):
set via the api_key parameter or GROQ_API_KEY environment variable.
"""
Settings = GroqSTTSettings
_settings: GroqSTTSettings
def __init__(

View File

@@ -51,6 +51,7 @@ class GroqTTSService(TTSService):
and output formats.
"""
Settings = GroqTTSSettings
_settings: GroqTTSSettings
class InputParams(BaseModel):

View File

@@ -82,6 +82,9 @@ class HeyGenVideoService(AIService):
Defaults to using the "Shawn_Therapist_public" avatar with "v2" version.
"""
Settings = HeyGenVideoSettings
_settings: HeyGenVideoSettings
def __init__(
self,
*,

View File

@@ -78,6 +78,7 @@ class HumeTTSService(TTSService):
- Provides metrics for Time To First Byte (TTFB) and TTS usage.
"""
Settings = HumeTTSSettings
_settings: HumeTTSSettings
class InputParams(BaseModel):

View File

@@ -100,6 +100,7 @@ class InworldHttpTTSService(TTSService):
Outputs LINEAR16 audio at configurable sample rates with word-level timestamps.
"""
Settings = InworldTTSSettings
_settings: InworldTTSSettings
class InputParams(BaseModel):
@@ -487,6 +488,7 @@ class InworldTTSService(WebsocketTTSService):
with word-level timestamps.
"""
Settings = InworldTTSSettings
_settings: InworldTTSSettings
class InputParams(BaseModel):

View File

@@ -101,6 +101,7 @@ class KokoroTTSService(TTSService):
Automatically downloads model files on first use.
"""
Settings = KokoroTTSSettings
_settings: KokoroTTSSettings
class InputParams(BaseModel):

View File

@@ -88,6 +88,7 @@ class LmntTTSService(InterruptibleTTSService):
language settings.
"""
Settings = LmntTTSSettings
_settings: LmntTTSSettings
def __init__(

View File

@@ -140,6 +140,7 @@ class MiniMaxHttpTTSService(TTSService):
https://www.minimax.io/platform/document/T2A%20V2?key=66719005a427f0c8a5701643
"""
Settings = MiniMaxTTSSettings
_settings: MiniMaxTTSSettings
class InputParams(BaseModel):

View File

@@ -33,6 +33,7 @@ class MistralLLMService(OpenAILLMService):
maintaining full compatibility with OpenAI's interface and functionality.
"""
Settings = MistralLLMSettings
_settings: MistralLLMSettings
def __init__(

View File

@@ -79,6 +79,9 @@ class MoondreamService(VisionService):
including CUDA, MPS, and Intel XPU.
"""
Settings = MoondreamSettings
_settings: MoondreamSettings
def __init__(
self,
*,

View File

@@ -91,6 +91,7 @@ class NeuphonicTTSService(InterruptibleTTSService):
parameters for high-quality speech generation.
"""
Settings = NeuphonicTTSSettings
_settings: NeuphonicTTSSettings
class InputParams(BaseModel):
@@ -430,6 +431,7 @@ class NeuphonicHttpTTSService(TTSService):
HTTP-based communication over WebSocket connections.
"""
Settings = NeuphonicTTSSettings
_settings: NeuphonicTTSSettings
class InputParams(BaseModel):

View File

@@ -36,6 +36,7 @@ class NvidiaLLMService(OpenAILLMService):
in token usage reporting between NIM (incremental) and OpenAI (final summary).
"""
Settings = NvidiaLLMSettings
_settings: NvidiaLLMSettings
def __init__(

View File

@@ -125,6 +125,7 @@ class NvidiaSTTService(STTService):
processing for low-latency applications.
"""
Settings = NvidiaSTTSettings
_settings: NvidiaSTTSettings
class InputParams(BaseModel):
@@ -439,6 +440,7 @@ class NvidiaSegmentedSTTService(SegmentedSTTService):
audio buffering and speech detection.
"""
Settings = NvidiaSegmentedSTTSettings
_settings: NvidiaSegmentedSTTSettings
class InputParams(BaseModel):

View File

@@ -61,6 +61,7 @@ class NvidiaTTSService(TTSService):
configurable quality settings.
"""
Settings = NvidiaTTSSettings
_settings: NvidiaTTSSettings
class InputParams(BaseModel):

View File

@@ -30,6 +30,7 @@ class OLLamaLLMService(OpenAILLMService):
providing a compatible interface for running large language models locally.
"""
Settings = OllamaLLMSettings
_settings: OllamaLLMSettings
def __init__(

View File

@@ -68,6 +68,7 @@ class BaseOpenAILLMService(LLMService):
configurations.
"""
Settings = OpenAILLMSettings
_settings: OpenAILLMSettings
class InputParams(BaseModel):

View File

@@ -48,6 +48,7 @@ class OpenAIImageGenService(ImageGenService):
with configurable quality and style parameters.
"""
Settings = OpenAIImageGenSettings
_settings: OpenAIImageGenSettings
def __init__(

View File

@@ -211,6 +211,7 @@ class OpenAIRealtimeLLMService(LLMService):
management, and real-time transcription.
"""
Settings = OpenAIRealtimeLLMSettings
_settings: OpenAIRealtimeLLMSettings
# Overriding the default adapter to use the OpenAIRealtimeLLMAdapter one.

View File

@@ -69,6 +69,7 @@ class OpenAISTTService(BaseWhisperSTTService):
set via the api_key parameter or OPENAI_API_KEY environment variable.
"""
Settings = OpenAISTTSettings
_settings: OpenAISTTSettings
def __init__(
@@ -224,6 +225,7 @@ class OpenAIRealtimeSTTService(WebsocketSTTService):
)
"""
Settings = OpenAIRealtimeSTTSettings
_settings: OpenAIRealtimeSTTSettings
def __init__(

View File

@@ -81,6 +81,7 @@ class OpenAITTSService(TTSService):
speech synthesis with streaming audio output.
"""
Settings = OpenAITTSSettings
_settings: OpenAITTSSettings
OPENAI_SAMPLE_RATE = 24000 # OpenAI TTS always outputs at 24kHz

View File

@@ -42,6 +42,7 @@ class AzureRealtimeBetaLLMService(OpenAIRealtimeBetaLLMService):
real-time audio and text communication capabilities as the base OpenAI service.
"""
Settings = AzureRealtimeBetaLLMSettings
_settings: AzureRealtimeBetaLLMSettings
def __init__(

View File

@@ -111,6 +111,7 @@ class OpenAIRealtimeBetaLLMService(LLMService):
management, and real-time transcription.
"""
Settings = OpenAIRealtimeBetaLLMSettings
_settings: OpenAIRealtimeBetaLLMSettings
# Overriding the default adapter to use the OpenAIRealtimeLLMAdapter one.

View File

@@ -43,6 +43,7 @@ class OpenPipeLLMService(OpenAILLMService):
for model training and evaluation.
"""
Settings = OpenPipeLLMSettings
_settings: OpenPipeLLMSettings
def __init__(

View File

@@ -34,6 +34,7 @@ class OpenRouterLLMService(OpenAILLMService):
maintaining full compatibility with OpenAI's interface and functionality.
"""
Settings = OpenRouterLLMSettings
_settings: OpenRouterLLMSettings
def __init__(

View File

@@ -38,6 +38,7 @@ class PerplexityLLMService(OpenAILLMService):
in token usage reporting between Perplexity (incremental) and OpenAI (final summary).
"""
Settings = PerplexityLLMSettings
_settings: PerplexityLLMSettings
def __init__(

View File

@@ -46,6 +46,7 @@ class PiperTTSService(TTSService):
match the configured sample rate.
"""
Settings = PiperTTSSettings
_settings: PiperTTSSettings
def __init__(
@@ -199,6 +200,7 @@ class PiperHttpTTSService(TTSService):
rates and automatic WAV header removal.
"""
Settings = PiperHttpTTSSettings
_settings: PiperHttpTTSSettings
def __init__(

View File

@@ -30,6 +30,7 @@ class QwenLLMService(OpenAILLMService):
maintaining full compatibility with OpenAI's interface and functionality.
"""
Settings = QwenLLMSettings
_settings: QwenLLMSettings
def __init__(

View File

@@ -51,6 +51,7 @@ class ResembleAITTSService(WebsocketTTSService):
multiple simultaneous synthesis requests with proper interruption support.
"""
Settings = ResembleAITTSSettings
_settings: ResembleAITTSSettings
def __init__(

View File

@@ -131,6 +131,7 @@ class RimeTTSService(WebsocketTTSService):
within a turn.
"""
Settings = RimeTTSSettings
_settings: RimeTTSSettings
class InputParams(BaseModel):
@@ -661,6 +662,7 @@ class RimeHttpTTSService(TTSService):
Suitable for use cases where streaming is not required.
"""
Settings = RimeTTSSettings
_settings: RimeTTSSettings
class InputParams(BaseModel):
@@ -885,6 +887,7 @@ class RimeNonJsonTTSService(InterruptibleTTSService):
accepts and returns non-JSON messages.
"""
Settings = RimeNonJsonTTSSettings
_settings: RimeNonJsonTTSSettings
class InputParams(BaseModel):

View File

@@ -42,6 +42,7 @@ class SambaNovaLLMService(OpenAILLMService): # type: ignore
maintaining full compatibility with OpenAI's interface and functionality.
"""
Settings = SambaNovaLLMSettings
_settings: SambaNovaLLMSettings
def __init__(

View File

@@ -35,6 +35,8 @@ class SambaNovaSTTService(BaseWhisperSTTService): # type: ignore
Requires a SambaNova API key set via the api_key parameter or SAMBANOVA_API_KEY environment variable.
"""
Settings = SambaNovaSTTSettings
def __init__(
self,
*,

View File

@@ -171,6 +171,7 @@ class SarvamSTTService(STTService):
...
"""
Settings = SarvamSTTSettings
_settings: SarvamSTTSettings
class InputParams(BaseModel):

View File

@@ -351,6 +351,7 @@ class SarvamHttpTTSService(TTSService):
)
"""
Settings = SarvamHttpTTSSettings
_settings: SarvamHttpTTSSettings
class InputParams(BaseModel):
@@ -717,6 +718,7 @@ class SarvamTTSService(InterruptibleTTSService):
See https://docs.sarvam.ai/api-reference-docs/text-to-speech/stream for API details.
"""
Settings = SarvamTTSSettings
_settings: SarvamTTSSettings
class InputParams(BaseModel):

View File

@@ -174,6 +174,7 @@ class SonioxSTTService(WebsocketSTTService):
For complete API documentation, see: https://soniox.com/docs/speech-to-text/api-reference/websocket-api
"""
Settings = SonioxSTTSettings
_settings: SonioxSTTSettings
def __init__(

View File

@@ -175,6 +175,7 @@ class SpeechmaticsSTTService(STTService):
...
"""
Settings = SpeechmaticsSTTSettings
_settings: SpeechmaticsSTTSettings
# Export related classes as class attributes

View File

@@ -53,6 +53,7 @@ class SpeechmaticsTTSService(TTSService):
It converts text to speech and returns raw PCM audio data for real-time playback.
"""
Settings = SpeechmaticsTTSSettings
_settings: SpeechmaticsTTSSettings
SPEECHMATICS_SAMPLE_RATE = 16000

View File

@@ -59,6 +59,9 @@ class TavusVideoService(AIService):
- User room: Contains the Pipecat Bot and the user
"""
Settings = TavusVideoSettings
_settings: TavusVideoSettings
def __init__(
self,
*,

View File

@@ -30,6 +30,7 @@ class TogetherLLMService(OpenAILLMService):
maintaining full compatibility with OpenAI's interface and functionality.
"""
Settings = TogetherLLMSettings
_settings: TogetherLLMSettings
def __init__(

View File

@@ -166,6 +166,7 @@ class UltravoxRealtimeLLMService(LLMService):
by the model and may not always align with its understanding of user input.
"""
Settings = UltravoxRealtimeLLMSettings
_settings: UltravoxRealtimeLLMSettings
def __init__(

View File

@@ -122,6 +122,7 @@ class BaseWhisperSTTService(SegmentedSTTService):
including metrics generation and error handling.
"""
Settings = BaseWhisperSTTSettings
_settings: BaseWhisperSTTSettings
def __init__(

View File

@@ -207,6 +207,7 @@ class WhisperSTTService(SegmentedSTTService):
segments. It supports multiple languages and various model sizes.
"""
Settings = WhisperSTTSettings
_settings: WhisperSTTSettings
def __init__(
@@ -380,6 +381,7 @@ class WhisperSTTServiceMLX(WhisperSTTService):
segments. It's optimized for Apple Silicon and supports multiple languages and quantizations.
"""
Settings = WhisperMLXSTTSettings
_settings: WhisperMLXSTTSettings
def __init__(

View File

@@ -83,6 +83,7 @@ class XTTSService(TTSService):
studio speakers configuration.
"""
Settings = XTTSTTSSettings
_settings: XTTSTTSSettings
def __init__(