diff --git a/CHANGELOG.md b/CHANGELOG.md index 46a968fde..16c6075d7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +### Added + +- Added `endpoint_id` parameter to `AzureSTTService`. ([Custom EndpointId](https://docs.azure.cn/en-us/ai-services/speech-service/how-to-recognize-speech?pivots=programming-language-python#use-a-custom-endpoint)) + ### Changed - Updated `pyproject.toml` to once again pin `numba` to `>=0.61.2` in order to diff --git a/src/pipecat/services/azure/stt.py b/src/pipecat/services/azure/stt.py index 6965ba188..cd49c98d8 100644 --- a/src/pipecat/services/azure/stt.py +++ b/src/pipecat/services/azure/stt.py @@ -60,6 +60,7 @@ class AzureSTTService(STTService): region: str, language: Language = Language.EN_US, sample_rate: Optional[int] = None, + endpoint_id: Optional[str] = None, **kwargs, ): """Initialize the Azure STT service. @@ -69,6 +70,7 @@ class AzureSTTService(STTService): region: Azure region for the Speech service (e.g., 'eastus'). language: Language for speech recognition. Defaults to English (US). sample_rate: Audio sample rate in Hz. If None, uses service default. + endpoint_id: Custom model endpoint id. **kwargs: Additional arguments passed to parent STTService. """ super().__init__(sample_rate=sample_rate, **kwargs) @@ -79,6 +81,9 @@ class AzureSTTService(STTService): speech_recognition_language=language_to_azure_language(language), ) + if endpoint_id: + self._speech_config.endpoint_id = endpoint_id + self._audio_stream = None self._speech_recognizer = None self._settings = {