v0.7.0
Highlights
- Fast barge-in is now the default (cascade brains). v0.6.0 gated turn starts on transcription so VAD false-triggers couldn't cancel an in-flight response — but that made barge-in wait for a finalized STT transcript, which some services only produce after an endpoint, i.e. seconds after the user starts talking over the bot. Cascade brains now use Pipecat's default start pair (VAD or interim transcription), so barge-in fires the moment the VAD does. Empty-turn recovery (from v0.6.0) remains the safety net: a ghost turn that cancels a response automatically re-runs the LLM.
- New
AgentConfig.user_turn_strategies. Pass aUserTurnStrategiesto take full control of turn start/stop behavior — e.g.UserTurnStrategies(start=[TranscriptionUserTurnStartStrategy()])restores the v0.6.0 transcription-gated behavior. Cascade brains only: combining it with a realtime (speech-to-speech) brain raises, since Pipecat's external-strategy swap for realtime services only happens when no custom strategies are passed. - VAD/STT disagreement warning.
ConversationLogObservernow logs a WARNING when STT transcribes speech during sustained (>1.5s) VAD silence — the previously invisible signature of VAD thresholds (confidence/min_volume) rejecting a quiet mic's audio, which force-ends turns mid-sentence. One line per silence stretch, greppable, with a pointer touser_vad_params. - Relaxed default VAD confidence 0.8 → 0.7 (Pipecat's default). The stricter threshold guarded against noise-burst STT hallucinations, but demonstrably rejected real speech from quieter mics; that failure mode is now mitigated by empty-turn recovery and surfaced by the new warning.
start_secs=0.3andmin_volume=0.5are unchanged.
Upgrading: no config changes required. If you relied on the v0.6.0 turn-start behavior, pass user_turn_strategies=UserTurnStrategies(start=[TranscriptionUserTurnStartStrategy()]).
Install
pip install 'openlily @ git+https://github.com/getlark/openlily.git@v0.7.0#subdirectory=server'