diff --git a/api/services/pipecat/run_pipeline.py b/api/services/pipecat/run_pipeline.py index 32ec2fa0..496f7503 100644 --- a/api/services/pipecat/run_pipeline.py +++ b/api/services/pipecat/run_pipeline.py @@ -80,7 +80,7 @@ from pipecat.turns.user_mute import ( ) from pipecat.turns.user_start import ( ExternalUserTurnStartStrategy, - TranscriptionUserTurnStartStrategy, + ProvisionalVADUserTurnStartStrategy, ) from pipecat.turns.user_start.vad_user_turn_start_strategy import ( VADUserTurnStartStrategy, @@ -646,8 +646,7 @@ async def _run_pipeline( smart_turn_params = SmartTurnParams(stop_secs=smart_turn_stop_secs) user_turn_strategies = UserTurnStrategies( start=[ - VADUserTurnStartStrategy(), - TranscriptionUserTurnStartStrategy(), + ProvisionalVADUserTurnStartStrategy(), ], stop=[ TurnAnalyzerUserTurnStopStrategy( @@ -659,8 +658,7 @@ async def _run_pipeline( # Transcription-based (default): best for short 1-2 word responses user_turn_strategies = UserTurnStrategies( start=[ - VADUserTurnStartStrategy(), - TranscriptionUserTurnStartStrategy(), + ProvisionalVADUserTurnStartStrategy(), ], stop=[SpeechTimeoutUserTurnStopStrategy()], ) diff --git a/api/services/pipecat/service_factory.py b/api/services/pipecat/service_factory.py index 1dc27318..8f149157 100644 --- a/api/services/pipecat/service_factory.py +++ b/api/services/pipecat/service_factory.py @@ -194,6 +194,7 @@ def create_stt_service( return OpenAISTTService( api_key=user_config.stt.api_key, settings=OpenAISTTSettings(model=user_config.stt.model), + should_interrupt=False, # Let UserAggregator own interruption confirmation. **kwargs, ) elif user_config.stt.provider == ServiceProviders.GOOGLE.value: diff --git a/pipecat b/pipecat index afe5b6b6..d0ed1ca7 160000 --- a/pipecat +++ b/pipecat @@ -1 +1 @@ -Subproject commit afe5b6b6c90ad04557ad93b69f7f6ba662c2072e +Subproject commit d0ed1ca7ead5935cf3622e668f3d424f273bf086