From cdb1074e1167b8db3f9cddaa6a8b14892b7a254b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aleix=20Conchillo=20Flaqu=C3=A9?= Date: Thu, 8 Jan 2026 16:30:22 -0800 Subject: [PATCH] LLMAssistantAggregator: no need to use BotStoppedSpeakingFrame The end of turn is already handle with interruptions or with LLMFullResponseEndFrame. LLMFullResponseEndFrame should never be blocked, otherwise the assistant would not work. --- src/pipecat/processors/aggregators/llm_response_universal.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/pipecat/processors/aggregators/llm_response_universal.py b/src/pipecat/processors/aggregators/llm_response_universal.py index 7b29fb8e1..3965acbdb 100644 --- a/src/pipecat/processors/aggregators/llm_response_universal.py +++ b/src/pipecat/processors/aggregators/llm_response_universal.py @@ -23,7 +23,6 @@ from loguru import logger from pipecat.adapters.schemas.tools_schema import ToolsSchema from pipecat.frames.frames import ( AssistantImageRawFrame, - BotStoppedSpeakingFrame, CancelFrame, EndFrame, Frame, @@ -651,9 +650,6 @@ class LLMAssistantAggregator(LLMContextAggregator): await self._handle_user_image_frame(frame) elif isinstance(frame, AssistantImageRawFrame): await self._handle_assistant_image_frame(frame) - elif isinstance(frame, BotStoppedSpeakingFrame): - await self.push_aggregation() - await self.push_frame(frame, direction) else: await self.push_frame(frame, direction)