1. Universal LLMContext
LLMContext is a universal context that works with all LLM providers. It allows you to dynamically switch LLMService at runtime, passing a compatible context between services. Pipecat maintains adapters for each LLM service, which are applied automatically at the time of inference.
Use the standard messages format along with FunctionSchema and ToolsSchema to define tools in a provider-agnostic way.
Before (1.0)
After (1.0)
What was removed
2. Turn Management
Turn management was unified into the user context aggregator configuration. Strategies for interruptions, muting, and idle detection are now configured viaLLMUserAggregatorParams.
Before (1.0)
After (1.0)
Where did
allow_interruptions go? The allow_interruptions parameter
was a legacy parameter used for non-voice AI applications. If you’re looking
to prevent an interruption from occurring, consider using a user mute strategy
instead. See the User Mute Strategies
reference
for more information.What was removed
3. VAD & Turn Analyzer Configuration
VAD and turn detection configuration moved from transport params to the user aggregator. Additionally, theVADParams default stops_secs changed from 0.8 to 0.2. This ensures that STT services create transcripts with optimal latency and sufficient silence padding.
The UserTurnStrategies (stop) now control how long to wait before the user’s turn has stopped:
SpeechTimeoutUserTurnStopStrategyhas auser_speech_timeoutparameter that you can configure to control how long to wait before the user’s turn has stopped.TurnAnalyzerUserTurnStopStrategyuses thesmart-turnmodel to dynamically modify the wait time. No configuration is required.
Before (1.0)
After (1.0)
By default, theTurnAnalyzerUserTurnStopStrategy stop strategy is used, which includes the LocalSmartTurnAnalyzerV3 turn analyzer.
What was removed
4. Service Import Paths
All flat service imports have been removed. Services now use submodule imports.Pattern change
Renamed/moved service modules
Removed service classes
These service have been removed.5. Transport Import Paths
Transport imports moved fromservices subdirectory to transport-specific subdirectories.
6. Frames
Several frame classes were renamed or removed. Update any direct references in your code.7. Service-Specific Parameter Changes
Individual services renamed or removed configuration parameters. Find your service below to see what changed.8. Transport Parameters
Allcamera_* transport parameters were renamed to video_*. VAD-related transport params were removed — VAD is now configured on the user aggregator (see section 3).
9. Other API Changes
Smaller breaking changes across the rest of the API.Pipeline
TTS service
Processors
RTVI
- Deprecated RTVI models (
RTVIConfig,RTVIServiceConfig) removed RTVIActionFrameremovedRTVIProcessor.handle_function_callandhandle_function_call_startremoved