Remove deprecated allow_interruptions parameter
This field was deprecated in v0.0.99 in favor of LLMUserAggregator's user_turn_strategies / user_mute_strategies parameters. Since the default was True (interruptions allowed), removing the guards keeps the current default behavior.
This commit is contained in:
@@ -878,11 +878,6 @@ class StartFrame(SystemFrame):
|
|||||||
Parameters:
|
Parameters:
|
||||||
audio_in_sample_rate: Input audio sample rate in Hz.
|
audio_in_sample_rate: Input audio sample rate in Hz.
|
||||||
audio_out_sample_rate: Output audio sample rate in Hz.
|
audio_out_sample_rate: Output audio sample rate in Hz.
|
||||||
allow_interruptions: Whether to allow user interruptions.
|
|
||||||
|
|
||||||
.. deprecated:: 0.0.99
|
|
||||||
Use `LLMUserAggregator`'s new `user_mute_strategies` parameter instead.
|
|
||||||
|
|
||||||
enable_metrics: Whether to enable performance metrics collection.
|
enable_metrics: Whether to enable performance metrics collection.
|
||||||
enable_tracing: Whether to enable OpenTelemetry tracing.
|
enable_tracing: Whether to enable OpenTelemetry tracing.
|
||||||
enable_usage_metrics: Whether to enable usage metrics collection.
|
enable_usage_metrics: Whether to enable usage metrics collection.
|
||||||
@@ -897,7 +892,6 @@ class StartFrame(SystemFrame):
|
|||||||
|
|
||||||
audio_in_sample_rate: int = 16000
|
audio_in_sample_rate: int = 16000
|
||||||
audio_out_sample_rate: int = 24000
|
audio_out_sample_rate: int = 24000
|
||||||
allow_interruptions: bool = False
|
|
||||||
enable_metrics: bool = False
|
enable_metrics: bool = False
|
||||||
enable_tracing: bool = False
|
enable_tracing: bool = False
|
||||||
enable_usage_metrics: bool = False
|
enable_usage_metrics: bool = False
|
||||||
|
|||||||
@@ -111,11 +111,6 @@ class PipelineParams(BaseModel):
|
|||||||
constructor arguments instead.
|
constructor arguments instead.
|
||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
allow_interruptions: Whether to allow pipeline interruptions.
|
|
||||||
|
|
||||||
.. deprecated:: 0.0.99
|
|
||||||
Use `LLMUserAggregator`'s new `user_turn_strategies` parameter instead.
|
|
||||||
|
|
||||||
audio_in_sample_rate: Input audio sample rate in Hz.
|
audio_in_sample_rate: Input audio sample rate in Hz.
|
||||||
audio_out_sample_rate: Output audio sample rate in Hz.
|
audio_out_sample_rate: Output audio sample rate in Hz.
|
||||||
enable_heartbeats: Whether to enable heartbeat monitoring.
|
enable_heartbeats: Whether to enable heartbeat monitoring.
|
||||||
@@ -136,7 +131,6 @@ class PipelineParams(BaseModel):
|
|||||||
|
|
||||||
model_config = ConfigDict(arbitrary_types_allowed=True)
|
model_config = ConfigDict(arbitrary_types_allowed=True)
|
||||||
|
|
||||||
allow_interruptions: bool = True
|
|
||||||
audio_in_sample_rate: int = 16000
|
audio_in_sample_rate: int = 16000
|
||||||
audio_out_sample_rate: int = 24000
|
audio_out_sample_rate: int = 24000
|
||||||
enable_heartbeats: bool = False
|
enable_heartbeats: bool = False
|
||||||
@@ -778,7 +772,6 @@ class PipelineTask(BasePipelineTask):
|
|||||||
self._maybe_start_idle_task()
|
self._maybe_start_idle_task()
|
||||||
|
|
||||||
start_frame = StartFrame(
|
start_frame = StartFrame(
|
||||||
allow_interruptions=self._params.allow_interruptions,
|
|
||||||
audio_in_sample_rate=self._params.audio_in_sample_rate,
|
audio_in_sample_rate=self._params.audio_in_sample_rate,
|
||||||
audio_out_sample_rate=self._params.audio_out_sample_rate,
|
audio_out_sample_rate=self._params.audio_out_sample_rate,
|
||||||
enable_metrics=self._params.enable_metrics,
|
enable_metrics=self._params.enable_metrics,
|
||||||
|
|||||||
@@ -731,7 +731,7 @@ class LLMUserAggregator(LLMContextAggregator):
|
|||||||
|
|
||||||
await self._user_idle_controller.process_frame(UserStartedSpeakingFrame())
|
await self._user_idle_controller.process_frame(UserStartedSpeakingFrame())
|
||||||
|
|
||||||
if params.enable_interruptions and self._allow_interruptions:
|
if params.enable_interruptions:
|
||||||
await self.broadcast_interruption()
|
await self.broadcast_interruption()
|
||||||
|
|
||||||
await self._call_event_handler("on_user_turn_started", strategy)
|
await self._call_event_handler("on_user_turn_started", strategy)
|
||||||
|
|||||||
@@ -193,8 +193,6 @@ class FrameProcessor(BaseObject):
|
|||||||
self._enable_metrics = False
|
self._enable_metrics = False
|
||||||
self._enable_usage_metrics = False
|
self._enable_usage_metrics = False
|
||||||
self._report_only_initial_ttfb = False
|
self._report_only_initial_ttfb = False
|
||||||
# Other properties (deprecated)
|
|
||||||
self._allow_interruptions = False
|
|
||||||
self._interruption_strategies: List[BaseInterruptionStrategy] = []
|
self._interruption_strategies: List[BaseInterruptionStrategy] = []
|
||||||
|
|
||||||
# Indicates whether we have received the StartFrame.
|
# Indicates whether we have received the StartFrame.
|
||||||
@@ -307,29 +305,6 @@ class FrameProcessor(BaseObject):
|
|||||||
"""
|
"""
|
||||||
return self._prev
|
return self._prev
|
||||||
|
|
||||||
@property
|
|
||||||
def interruptions_allowed(self):
|
|
||||||
"""Check if interruptions are allowed for this processor.
|
|
||||||
|
|
||||||
.. deprecated:: 0.0.99
|
|
||||||
Use `LLMUserAggregator`'s new `user_mute_strategies` parameter instead.
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
True if interruptions are allowed.
|
|
||||||
"""
|
|
||||||
import warnings
|
|
||||||
|
|
||||||
with warnings.catch_warnings():
|
|
||||||
warnings.simplefilter("always")
|
|
||||||
warnings.warn(
|
|
||||||
"`FrameProcessor.interruptions_allowed` is deprecated. "
|
|
||||||
"Use `LLMUserAggregator`'s new `user_mute_strategies` parameter instead.",
|
|
||||||
DeprecationWarning,
|
|
||||||
stacklevel=2,
|
|
||||||
)
|
|
||||||
|
|
||||||
return self._allow_interruptions
|
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def metrics_enabled(self):
|
def metrics_enabled(self):
|
||||||
"""Check if metrics collection is enabled.
|
"""Check if metrics collection is enabled.
|
||||||
@@ -819,7 +794,6 @@ class FrameProcessor(BaseObject):
|
|||||||
frame: The start frame containing initialization parameters.
|
frame: The start frame containing initialization parameters.
|
||||||
"""
|
"""
|
||||||
self.__started = True
|
self.__started = True
|
||||||
self._allow_interruptions = frame.allow_interruptions
|
|
||||||
self._enable_metrics = frame.enable_metrics
|
self._enable_metrics = frame.enable_metrics
|
||||||
self._enable_usage_metrics = frame.enable_usage_metrics
|
self._enable_usage_metrics = frame.enable_usage_metrics
|
||||||
self._interruption_strategies = frame.interruption_strategies
|
self._interruption_strategies = frame.interruption_strategies
|
||||||
|
|||||||
@@ -518,7 +518,7 @@ class BaseInputTransport(FrameProcessor):
|
|||||||
)
|
)
|
||||||
|
|
||||||
# Make sure we notify about interruptions quickly out-of-band.
|
# Make sure we notify about interruptions quickly out-of-band.
|
||||||
if should_push_immediate_interruption and self._allow_interruptions:
|
if should_push_immediate_interruption:
|
||||||
await self.broadcast_interruption()
|
await self.broadcast_interruption()
|
||||||
elif self.interruption_strategies and self._bot_speaking:
|
elif self.interruption_strategies and self._bot_speaking:
|
||||||
logger.debug(
|
logger.debug(
|
||||||
|
|||||||
@@ -517,9 +517,6 @@ class BaseOutputTransport(FrameProcessor):
|
|||||||
Args:
|
Args:
|
||||||
_: The start interruption frame (unused).
|
_: The start interruption frame (unused).
|
||||||
"""
|
"""
|
||||||
if not self._transport._allow_interruptions:
|
|
||||||
return
|
|
||||||
|
|
||||||
# Cancel tasks.
|
# Cancel tasks.
|
||||||
await self._cancel_audio_task()
|
await self._cancel_audio_task()
|
||||||
await self._cancel_clock_task()
|
await self._cancel_clock_task()
|
||||||
|
|||||||
@@ -181,7 +181,7 @@ class UserTurnProcessor(FrameProcessor):
|
|||||||
|
|
||||||
await self._user_idle_controller.process_frame(UserStartedSpeakingFrame())
|
await self._user_idle_controller.process_frame(UserStartedSpeakingFrame())
|
||||||
|
|
||||||
if params.enable_interruptions and self._allow_interruptions:
|
if params.enable_interruptions:
|
||||||
await self.broadcast_interruption()
|
await self.broadcast_interruption()
|
||||||
|
|
||||||
await self._call_event_handler("on_user_turn_started", strategy)
|
await self._call_event_handler("on_user_turn_started", strategy)
|
||||||
|
|||||||
Reference in New Issue
Block a user