Added
-
It is now possible to start a bot from the
/start
endpoint when using the runner Daily's transport. This follows the Pipecat Cloud format withcreateDailyRoom
andbody
fields in the POST request body. -
Added an ellipsis character (
…
) to the end of sentence detection in the string utils. -
Expanded support for universal
LLMContext
toAWSNovaSonicLLMService
. As a reminder, the context-setup pattern when usingLLMContext
is:context = LLMContext(messages, tools) context_aggregator = LLMContextAggregatorPair(context)
(Note that even though
AWSNovaSonicLLMService
now supports the universalLLMContext
, it is not meant to be swapped out for another LLM service at runtime.)Worth noting: whether or not you use the new context-setup pattern with
AWSNovaSonicLLMService
, some types have changed under the hood:## BEFORE: # Context aggregator type context_aggregator: AWSNovaSonicContextAggregatorPair # Context frame type frame: OpenAILLMContextFrame # Context type context: AWSNovaSonicLLMContext # or context: OpenAILLMContext ## AFTER: # Context aggregator type context_aggregator: LLMContextAggregatorPair # Context frame type frame: LLMContextFrame # Context type context: LLMContext
-
Added support for
bulbul:v3
model inSarvamTTSService
andSarvamHttpTTSService
. -
Added
keyterms_prompt
parameter toAssemblyAIConnectionParams
. -
Added
speech_model
parameter toAssemblyAIConnectionParams
to access the multilingual model. -
Added support for trickle ICE to the
SmallWebRTCTransport
. -
Added support for updating
OpenAITTSService
settings (instructions
andspeed
) at runtime viaTTSUpdateSettingsFrame
. -
Added
--whatsapp
flag to runner to better surface WhatsApp transport logs. -
Added
on_connected
andon_disconnected
events to TTS and STT websocket-based services. -
Added an
aggregate_sentences
arg inElevenLabsHttpTTSService
, where the default value is True. -
Added a
room_properties
arg to the Daily runner'sconfigure()
method, allowingDailyRoomProperties
to be provided. -
The runner
--folder
argument now supports downloading files from subdirectories.
Changed
-
RunnerArguments
now include thebody
field, so there's no need to add it to subclasses. Also, allRunnerArguments
fields are now keyword-only. -
CartesiaSTTService
now inherits fromWebsocketSTTService
. -
Package upgrades:
daily-python
upgraded to 0.20.0.openai
upgraded to support up to 2.x.x.openpipe
upgraded to support up to 5.x.x.
-
SpeechmaticsSTTService
updated dependencies forspeechmatics-rt>=0.5.0
.
Deprecated
-
The
send_transcription_frames
argument toAWSNovaSonicLLMService
is deprecated. Transcription frames are now always sent. They go upstream, to be handled by the user context aggregator. See "Added" section for details. -
Types in
pipecat.services.aws.nova_sonic.context
have been deprecated due to changes to supportLLMContext
. See "Changed" section for details.
Fixed
-
Fixed an issue where the
RTVIProcessor
was sending duplicateUserStartedSpeakingFrame
andUserStoppedSpeakingFrame
messages. -
Fixed an issue in
AWSBedrockLLMService
where bothtemperature
andtop_p
were always sent together, causing conflicts with models like Claude Sonnet 4.5 that don't allow both parameters simultaneously. The service now only includes inference parameters that are explicitly set, andInputParams
defaults have been changed toNone
to rely on AWS Bedrock's built-in model defaults. -
Fixed an issue in
RivaSegmentedSTTService
where a runtime error occurred due to a mismatch in the_handle_transcription
method's signature. -
Fixed multiple pipeline task cancellation issues.
asyncio.CancelledError
is now handled properly inPipelineTask
making it possible to cancel an asyncio task that it's executing aPipelineRunner
cleanly. Also,PipelineTask.cancel()
does not block anymore waiting for theCancelFrame
to reach the end of the pipeline (going back to the behavior in < 0.0.83). -
Fixed an issue in
ElevenLabsTTSService
andElevenLabsHttpTTSService
where the Flash models would split words, resulting in a space being inserted between words. -
Fixed an issue where audio filters'
stop()
would not be called when usingCancelFrame
. -
Fixed an issue in
ElevenLabsHttpTTSService
, whereapply_text_normalization
was incorrectly set as a query parameter. It's now being added as a request parameter. -
Fixed an issue where
RimeHttpTTSService
andPiperTTSService
could generate incorrectly 16-bit aligned audio frames, potentially leading to internal errors or static audio. -
Fixed an issue in
SpeechmaticsSTTService
whereAdditionalVocabEntry
items needed to havesounds_like
for the session to start.
Other
-
Added foundational example
47-sentry-metrics.py
, demonstrating how to use theSentryMetrics
processor. -
Added foundational example
14x-function-calling-openpipe.py
.