Merge pull request #3330 from pipecat-ai/aleix/update-turn-start-strategies-deprecations

update turn start strategies deprecations
This commit is contained in:
Aleix Conchillo Flaqué
2025-12-30 21:04:47 -08:00
committed by GitHub
11 changed files with 18 additions and 18 deletions

View File

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

View File

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

View File

@@ -1 +1 @@
- `pipecat.audio.interruptions.MinWordsInterruptionStrategy` is deprecated. Use `pipecat.turns.user_start.MinWordsUserTurnStartStrategy` with `LLMUserAggregator`'s new `turn_start_strategies` parameter instead.
- `pipecat.audio.interruptions.MinWordsInterruptionStrategy` is deprecated. Use `pipecat.turns.user_start.MinWordsUserTurnStartStrategy` with `LLMUserAggregator`'s new `user_turn_strategies` parameter instead.

View File

@@ -1,4 +1,4 @@
- `PipelineParams.allow_interruptions` is now deprecated, use `LLMUserAggregator`'s new parameter `turn_start_strategies` instead. For example, to disable interruptions but still get user turns you can do:
- `PipelineParams.allow_interruptions` is now deprecated, use `LLMUserAggregator`'s new parameter `user_turn_strategies` instead. For example, to disable interruptions but still get user turns you can do:
```python
context_aggregator = LLMContextAggregatorPair(

View File

@@ -22,7 +22,7 @@ class MinWordsInterruptionStrategy(BaseInterruptionStrategy):
This class is deprecated, use
`pipecat.turns.user_start.MinWordsUserTurnStartStrategy` with `PipelineTask`'s
new `turn_start_strategies` parameter instead.
new `user_turn_strategies` parameter instead.
"""
@@ -43,7 +43,7 @@ class MinWordsInterruptionStrategy(BaseInterruptionStrategy):
warnings.warn(
"'pipecat.audio.interruptions' is deprecated. "
"Use `pipecat.turns.user_start.MinWordsUserTurnStartStrategy` with `PipelineTask`'s "
"new `turn_start_strategies` parameter instead.",
"new `user_turn_strategies` parameter instead.",
DeprecationWarning,
)

View File

@@ -961,7 +961,7 @@ class StartFrame(SystemFrame):
interruption_strategies: List of interruption handling strategies.
.. deprecated:: 0.0.99
Use `LLMUserAggregator`'s new `turn_start_strategies` parameter instead.
Use `LLMUserAggregator`'s new `user_turn_strategies` parameter instead.
report_only_initial_ttfb: Whether to report only initial time-to-first-byte.
"""

View File

@@ -108,7 +108,7 @@ class PipelineParams(BaseModel):
allow_interruptions: Whether to allow pipeline interruptions.
.. deprecated:: 0.0.99
Use `LLMUserAggregator`'s new `turn_start_strategies` parameter instead.
Use `LLMUserAggregator`'s new `user_turn_strategies` parameter instead.
audio_in_sample_rate: Input audio sample rate in Hz.
audio_out_sample_rate: Output audio sample rate in Hz.
@@ -119,7 +119,7 @@ class PipelineParams(BaseModel):
interruption_strategies: [deprecated] Strategies for bot interruption behavior.
.. deprecated:: 0.0.99
Use `LLMUserAggregator`'s new `turn_start_strategies` parameter instead.
Use `LLMUserAggregator`'s new `user_turn_strategies` parameter instead.
observers: [deprecated] Use `observers` arg in `PipelineTask` class.

View File

@@ -463,9 +463,9 @@ class LLMUserAggregator(LLMContextAggregator):
return
logger.warning(
f"{self}: `turn_analyzer` in base input transport is deprecated and "
"might result in unexpected behavior. Use `LLMUserAggregator`'s new `turn_start_strategies` "
"parameter with `TurnAnalyzerUserTurnStopStrategy` instead:\n"
f"{self}: `turn_analyzer` in base input transport is deprecated. "
"Use `LLMUserAggregator`'s new `user_turn_strategies` parameter with "
"`TurnAnalyzerUserTurnStopStrategy` instead:\n"
"\n"
" context_aggregator = LLMContextAggregatorPair(\n"
" context,\n"
@@ -483,7 +483,7 @@ class LLMUserAggregator(LLMContextAggregator):
)
await self._cleanup_user_turn_strategies()
self._turn_strategies = ExternalUserTurnStrategies()
self._user_turn_strategies = ExternalUserTurnStrategies()
await self._setup_user_turn_strategies()
async def _handle_vad_user_started_speaking(self, frame: VADUserStartedSpeakingFrame):

View File

@@ -134,7 +134,7 @@ class BaseInputTransport(FrameProcessor):
warnings.simplefilter("always")
warnings.warn(
"Parameter 'turn_analyzer' is deprecated, use `LLMUserAggregator`'s new "
"`turn_start_strategies` parameter instead.",
"`user_turn_strategies` parameter instead.",
DeprecationWarning,
)
@@ -178,7 +178,7 @@ class BaseInputTransport(FrameProcessor):
.. deprecated:: 0.0.99
This method is deprecated and will be removed in a future version.
Use `LLMUserAggregator`'s new `turn_start_strategies` parameter instead.
Use `LLMUserAggregator`'s new `user_turn_strategies` parameter instead.
Returns:
The turn analyzer instance if configured, None otherwise.
@@ -189,7 +189,7 @@ class BaseInputTransport(FrameProcessor):
warnings.simplefilter("always")
warnings.warn(
"Method 'turn_analyzer' is deprecated. Use `LLMUserAggregator`'s new "
" `turn_start_strategies` parameter instead.",
"`user_turn_strategies` parameter instead.",
DeprecationWarning,
)

View File

@@ -116,7 +116,7 @@ class TransportParams(BaseModel):
.. deprecated:: 0.0.99
The `turn_analyzer` parameter is deprecated, use `LLMUSerAggregator`'s
new `turn_start_strategies` parameter instead.
new `user_turn_strategies` parameter instead.
"""
model_config = ConfigDict(arbitrary_types_allowed=True)

View File

@@ -137,7 +137,7 @@ class TestUserAggregator(unittest.IsolatedAsyncioTestCase):
)
assert context.messages[0]["content"] == "Hi there!"
async def test_default_turn_start_strategies(self):
async def test_default_user_turn_strategies(self):
context = LLMContext()
user_aggregator = LLMUserAggregator(context)