update CHANGELOG for new user/bot turn start strategies

This commit is contained in:
Aleix Conchillo Flaqué
2025-11-12 15:35:46 -08:00
parent 5816f960cc
commit bf791527dc
7 changed files with 43 additions and 0 deletions

37
changelog/3045.added.md Normal file
View File

@@ -0,0 +1,37 @@
- Introducing user and bot turn start strategies. Turn start strategies indicate when user and bot turns begin. In conversational agents, these are often referred to as start/stop speaking or turn-taking plans or policies.
User turn start strategies indicate when the user starts speaking (e.g. using VAD events or when a user says one or more words).
Bot turn start strategies indicate when the bot should start speaking (e.g. using an end-of-turn detection model or by observing incoming transcriptions).
A list of strategies can be specified for both the user and the bot; strategies are evaluated in order until one evaluates to true.
Available user turn start strategies:
- VADUserTurnStartStrategy
- TranscriptionUserTurnStartStrategy
- MinWordsUserTurnStartStrategy
Available bot turn start strategies:
- TranscriptionBotTurnStartStrategy
- TurnAnalyzerBotTurnStartStrategy
The default strategies are:
- user: [VADUserTurnStartStrategy, TranscriptionUserTurnStartStrategy]
- bot: [TranscriptionBotTurnStartStrategy]
Turn start strategies are configured when setting up a `PipelineTask`. For example:
```python
task = PipelineTask(..., params=PipelineParams(
turn_start_strategies=TurnStartStrategies(
bot=[
TurnAnalyzerBotTurnStartStrategy(
turn_analyzer=LocalSmartTurnAnalyzerV3(params=SmartTurnParams())
)
],
),
))
```
In order to use the turn start strategies you should update to the new universal `LLMContext` and `LLMContextAggregatorPair`.

View File

@@ -0,0 +1 @@
- ⚠️ `TransportParams.turn_analyzer` is deprecated and might result in unexpected behavior, use `PipelineTask`'s new `turn_start_strategies` parameter instead.

View File

@@ -0,0 +1 @@
- `FrameProcessor.interruption_strategies` is deprecated, use `PipelineTask`'s new `turn_start_strategies` parameter instead.

View File

@@ -0,0 +1 @@
- `EmulateUserStartedSpeakingFrame` and `EmulateUserStoppedSpeakingFrame` frames are deprecated.

View File

@@ -0,0 +1 @@
- Deprecated the `emulated` field in the `UserStartedSpeakingFrame` and `UserStoppedSpeakingFrame` frames.

View File

@@ -0,0 +1 @@
- The `LLMUserAggregatorParams` and `LLMAssistantAggregatorParams` classes in `pipecat.processors.aggregators.llm_response` are now deprecated. Use the new universal `LLMContext` and `LLMContextAggregatorPair` instead.

View File

@@ -0,0 +1 @@
- `pipecat.audio.interruptions.MinWordsInterruptionStrategy` is deprecated. Use `pipecat.turns.user.MinWordsUserTurnStartStrategy` with `PipelineTask`'s new `turn_start_strategies` parameter instead.