v0.0.91
Added
-
It is now possible to start a bot from the
/startendpoint when using the runner Daily's transport. This follows the Pipecat Cloud format withcreateDailyRoomandbodyfields in the POST request body. -
Added an ellipsis character (
…) to the end of sentence detection in the string utils. -
Expanded support for universal
LLMContexttoAWSNovaSonicLLMService. As a reminder, the context-setup pattern when usingLLMContextis:context = LLMContext(messages, tools) context_aggregator = LLMContextAggregatorPair(context)
(Note that even though
AWSNovaSonicLLMServicenow 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:v3model inSarvamTTSServiceandSarvamHttpTTSService. -
Added
keyterms_promptparameter toAssemblyAIConnectionParams. -
Added
speech_modelparameter toAssemblyAIConnectionParamsto access the multilingual model. -
Added support for trickle ICE to the
SmallWebRTCTransport. -
Added support for updating
OpenAITTSServicesettings (instructionsandspeed) at runtime viaTTSUpdateSettingsFrame. -
Added
--whatsappflag to runner to better surface WhatsApp transport logs. -
Added
on_connectedandon_disconnectedevents to TTS and STT websocket-based services. -
Added an
aggregate_sentencesarg inElevenLabsHttpTTSService, where the default value is True. -
Added a
room_propertiesarg to the Daily runner'sconfigure()method, allowingDailyRoomPropertiesto be provided. -
The runner
--folderargument now supports downloading files from subdirectories.
Changed
-
RunnerArgumentsnow include thebodyfield, so there's no need to add it to subclasses. Also, allRunnerArgumentsfields are now keyword-only. -
CartesiaSTTServicenow inherits fromWebsocketSTTService. -
Package upgrades:
daily-pythonupgraded to 0.20.0.openaiupgraded to support up to 2.x.x.openpipeupgraded to support up to 5.x.x.
-
SpeechmaticsSTTServiceupdated dependencies forspeechmatics-rt>=0.5.0.
Deprecated
-
The
send_transcription_framesargument toAWSNovaSonicLLMServiceis 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.contexthave been deprecated due to changes to supportLLMContext. See "Changed" section for details.
Fixed
-
Fixed an issue where the
RTVIProcessorwas sending duplicateUserStartedSpeakingFrameandUserStoppedSpeakingFramemessages. -
Fixed an issue in
AWSBedrockLLMServicewhere bothtemperatureandtop_pwere 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, andInputParamsdefaults have been changed toNoneto rely on AWS Bedrock's built-in model defaults. -
Fixed an issue in
RivaSegmentedSTTServicewhere a runtime error occurred due to a mismatch in the_handle_transcriptionmethod's signature. -
Fixed multiple pipeline task cancellation issues.
asyncio.CancelledErroris now handled properly inPipelineTaskmaking it possible to cancel an asyncio task that it's executing aPipelineRunnercleanly. Also,PipelineTask.cancel()does not block anymore waiting for theCancelFrameto reach the end of the pipeline (going back to the behavior in < 0.0.83). -
Fixed an issue in
ElevenLabsTTSServiceandElevenLabsHttpTTSServicewhere 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_normalizationwas incorrectly set as a query parameter. It's now being added as a request parameter. -
Fixed an issue where
RimeHttpTTSServiceandPiperTTSServicecould generate incorrectly 16-bit aligned audio frames, potentially leading to internal errors or static audio. -
Fixed an issue in
SpeechmaticsSTTServicewhereAdditionalVocabEntryitems needed to havesounds_likefor the session to start.
Other
-
Added foundational example
47-sentry-metrics.py, demonstrating how to use theSentryMetricsprocessor. -
Added foundational example
14x-function-calling-openpipe.py.