版本发布 8
## What's Changed * (openai realtime): add status_details to incomplete response logs by @tinalenguyen in https://github.com/livekit/agents/pull/5873 * feat(cartesia): add ink-2 stt by @charlotte-zhuang in https://github.com/livekit/agents/pull/5827 * fix(ipc): bound AgentSession.aclose() during job shutdown by @longcw in https://github.com/livekit/agents/pull/5875 * fix(amd): defer no-speech timer until SIP call is answered by @chenghao-mou in https://github.com/livekit/agents/pull/5848 * chore(tests): update tests to use Inference whenever possible AGT-2304 by @chenghao-mou in https://github.com/livekit/agents/pull/5632 * fix(llm): sort function tools to make order an invariant by @u9g in https://github.com/livekit/agents/pull/5884 * fix(deps): relax bithuman pin to <3 for SDK 2.x compatibility by @sgu-bithuman in https://github.com/livekit/agents/pull/5882 * fix(aws): flatten tool blocks when toolConfig is omitted by @u9g in https://github.com/livekit/agents/pull/5850 * fix(llm): serialize all provider tools for the Responses API + log server-side tool execution by @u9g in https://github.com/livekit/agents/pull/5865 * fix(llm): make to_responses_fnc_ctx.provider_tool_type optional by @toubatbrian in https://github.com/livekit/agents/pull/5892 * internal(voice): wire DebugMessage over remote-session wire by @toubatbrian in https://github.com/livekit/agents/pull/5855 * Add respeecher tts plugin by @mitrushchienkova in https://github.com/livekit/agents/pull/3233 * feat(plugins-google): add cached_content option for explicit context caching by @kamil-bidus in https://github.com/livekit/agents/pull/5675 * (google llm): ruff and add cache warnings by @tinalenguyen in https://github.com/livekit/agents/pull/5893 * feat(smallestai): update TTS plugin for Lightning v3.1 Pro and WebSocket streaming by @harshitajain165 in https://github.com/livekit/agents/pull/5799 * fix(openai realtime): honor OPENAI_BASE_URL env var fallback by @chenghao-mou in https://github.com/livekit/agents/pull/5895 * livekit-agents@1.5.15 by @github-actions[bot] in https://github.com/livekit/agents/pull/5896 ## New Contributors * @sgu-bithuman made their first contribution in https://github.com/livekit/agents/pull/5882 * @mitrushchienkova made their first contribution in https://github.com/livekit/agents/pull/3233 * @kamil-bidus made their first contribution in https://github.com/livekit/agents/pull/5675 **Full Changelog**: https://github.com/livekit/agents/compare/livekit-agents@1.5.14...livekit-agents@1.5.15
## What's Changed * fix: surface Deepgram TTS websocket errors by @nightcityblade in https://github.com/livekit/agents/pull/5728 * fix(voice): cancel realtime generation when speech is interrupted by @longcw in https://github.com/livekit/agents/pull/5703 * improve should_discard check by @chenghao-mou in https://github.com/livekit/agents/pull/5676 * (examples revamp): add example walkthroughs by @tinalenguyen in https://github.com/livekit/agents/pull/5613 * chore(deps): update dependency langchain-core to v1.3.3 [security] by @renovate[bot] in https://github.com/livekit/agents/pull/5693 * (inference stt): add speechmatics by @tinalenguyen in https://github.com/livekit/agents/pull/5740 * fix(ipc): run shutdown callbacks when entrypoint raises by @longcw in https://github.com/livekit/agents/pull/5741 * fix(dep): pin bithuman by @chenghao-mou in https://github.com/livekit/agents/pull/5743 * fix(barge-in): suppress session-level barge-in errors by @chenghao-mou in https://github.com/livekit/agents/pull/5727 * feat: support python -m livekit.agents.download for asset fetching by @davidzhao in https://github.com/livekit/agents/pull/5738 * feat(rime): add coda model support by @MaCaki in https://github.com/livekit/agents/pull/5748 * (speechmatics + inference): add VAD by @tinalenguyen in https://github.com/livekit/agents/pull/5750 * inference.LLM: add update_options for live model swaps by @theomonnom in https://github.com/livekit/agents/pull/5757 * fix(deepgram): add per-message recv timeout to TTS WebSocket by @longcw in https://github.com/livekit/agents/pull/5756 * livekit-agents@1.5.10 by @github-actions[bot] in https://github.com/livekit/agents/pull/5758 **Full Changelog**: https://github.com/livekit/agents/compare/livekit-agents@1.5.9...livekit-agents@1.5.10
## New features ### Preemptive generation: added more granular options Refines default behavior for preemptive generation to better handle long or intermittent user speech, reducing unnecessary downstream inference and associated cost increases. Also introduces `PreemptiveGenerationOptions` for developers who need fine-grained control over this behavior. https://github.com/livekit/agents/blob/78a66bcf79c5cea82989401c408f1dff4b961a5b/livekit-agents/livekit/agents/voice/turn.py#L115 ```python class PreemptiveGenerationOptions(TypedDict, total=False): """Configuration for preemptive generation.""" enabled: bool """Whether preemptive generation is enabled. Defaults to ``True``.""" preemptive_tts: bool """Whether to also run TTS preemptively before the turn is confirmed. When ``False`` (default), only LLM runs preemptively; TTS starts once the turn is confirmed and the speech is scheduled.""" max_speech_duration: float """Maximum user speech duration (s) for which preemptive generation is attempted. Beyond this threshold, preemptive generation is skipped since long utterances are more likely to change and users may expect slower responses. Defaults to ``10.0``.""" max_retries: int """Maximum number of preemptive generation attempts per user turn. The counter resets when the turn completes. Defaults to ``3``.""" ``` ## What's Changed * fix(voice): add PreemptiveGenerationOptions for fine-grained control by @longcw in https://github.com/livekit/agents/pull/5428 **Full Changelog**: https://github.com/livekit/agents/compare/livekit-agents@1.5.3...livekit-agents@1.5.4
## What's Changed * feat(amd): add OTEL span and tag for AMD by @chenghao-mou in https://github.com/livekit/agents/pull/5376 * fix(openai): prepend session instructions in realtime generate_reply by @longcw in https://github.com/livekit/agents/pull/5394 * fix: AgentTask deadlock when on_enter awaits generate_reply that triggers another AgentTask by @longcw in https://github.com/livekit/agents/pull/5377 * telemetry: emit OTel span events for developer-role messages by @joaquinhuigomez in https://github.com/livekit/agents/pull/5403 * feat(realtime): reuse realtime session across agent handoffs if supported by @longcw in https://github.com/livekit/agents/pull/5229 * fix(llm): handle double-encoded JSON tool arguments from providers by @prettyprettyprettygood in https://github.com/livekit/agents/pull/5409 * chore: exposed the max session duration in with_azure() function by @k-1208 in https://github.com/livekit/agents/pull/5383 * (gemini live 3.1): fix tool responses by @tinalenguyen in https://github.com/livekit/agents/pull/5413 * fix(google): capture usage_metadata before early continues in streaming by @Panmax in https://github.com/livekit/agents/pull/5404 * fix(voice): block new user turns immediately on update_agent() to prevent transition delay by @Panmax in https://github.com/livekit/agents/pull/5396 * fix(tests): update drive thru instructions by @chenghao-mou in https://github.com/livekit/agents/pull/5405 * feat(inference): handle preflight_transcript in inference STT plugin by @adrian-cowham in https://github.com/livekit/agents/pull/5412 * fix(aws): unwrap doubly-encoded JSON tool arguments from Nova Sonic by @rililinx in https://github.com/livekit/agents/pull/5411 * chore: pin GHA by commit by @davidzhao in https://github.com/livekit/agents/pull/5415 * chore(deps): update dependency langchain-core to v1.2.28 [security] by @renovate[bot] in https://github.com/livekit/agents/pull/5417 * chore(deps): update dependency aiohttp to v3.13.4 [security] by @renovate[bot] in https://github.com/livekit/agents/pull/5416 * chore(deps): update dependency nltk to v3.9.4 [security] by @renovate[bot] in https://github.com/livekit/agents/pull/5418 * (azure openai): ensure gpt-realtime-1.5 compatibility by @tinalenguyen in https://github.com/livekit/agents/pull/5407 * chore(deps): update github workflows (major) by @renovate[bot] in https://github.com/livekit/agents/pull/5424 * update: Sarvam STT - add verbose error loggin and remove retry connection by @dhruvladia-sarvam in https://github.com/livekit/agents/pull/5373 * fix(inworld): do not leak connections when when cancelled by @davidzhao in https://github.com/livekit/agents/pull/5427 * feat: add service_tier parameter to Responses API LLM by @piyush-gambhir in https://github.com/livekit/agents/pull/5346 * Feature/krisp viva sdk support by @realgarik in https://github.com/livekit/agents/pull/4370 * fix: empty transcript blocks commit_user_turn until timeout by @longcw in https://github.com/livekit/agents/pull/5429 * fix: allow multiple AsyncToolsets by deduplicating management tools by @longcw in https://github.com/livekit/agents/pull/5369 * feat(beta/workflows): add InstructionParts for modular instruction customization by @longcw in https://github.com/livekit/agents/pull/5077 * add ToolSearchToolset and ToolProxyToolset for dynamic tool discovery by @longcw in https://github.com/livekit/agents/pull/5140 * Feature - Configurable session close transcript timeout by @bml1g12 in https://github.com/livekit/agents/pull/5328 * Fix FrameProcessor lifecycle for selector based noise cancellation by @Topherhindman in https://github.com/livekit/agents/pull/5433 * feat: add Runway Characters avatar plugin by @robinandeer in https://github.com/livekit/agents/pull/5355 * Rename e2ee to encryption in JobContext.connect by @longcw in https://github.com/livekit/agents/pull/5454 * chore: reduce renovate noise by @davidzhao in https://github.com/livekit/agents/pull/5421 * fix(liveavatar): wait for connected state and chunk audio before sending by @dyi1 in https://github.com/livekit/agents/pull/5453 * (phonic): support realtimemodel say() by @tinalenguyen in https://github.com/livekit/agents/pull/5293 * feat: add Cerebras LLM plugin by @u9g in https://github.com/livekit/agents/pull/5456 * (google tts): add "gemini-3.1-flash-tts-preview" model by @tinalenguyen in https://github.com/livekit/agents/pull/5459 * (hedra) remove from examples and raise exception by @tinalenguyen in https://github.com/livekit/agents/pull/5460 * xai stt by @tinalenguyen in https://github.com/livekit/agents/pull/5458 * feat(openai): expose max_output_tokens on Responses API LLM by @piyush-gambhir in https://github.com/livekit/agents/pull/5449 * (xai stt): pass diarization capability + minor fix by @tinalenguyen in https://github.com/livekit/agents/pull/5461 * Adding xAI Grok llm support for inference by @russellmartin-livekit in https://github.com/livekit/agents/pull/5201 * (release workflow): allow spacing in dependency by @tinalenguyen in https://github.com/livekit/agents/pull/5463 * livekit-agents@1.5.3 by @github-actions[bot] in https://github.com/livekit/agents/pull/5464 ## New Contributors * @joaquinhuigomez made their first contribution in https://github.com/livekit/agents/pull/5403 * @k-1208 made their first contribution in https://github.com/livekit/agents/pull/5383 * @rililinx made their first contribution in https://github.com/livekit/agents/pull/5411 * @renovate[bot] made their first contribution in https://github.com/livekit/agents/pull/5417 * @realgarik made their first contribution in https://github.com/livekit/agents/pull/4370 * @robinandeer made their first contribution in https://github.com/livekit/agents/pull/5355 * @dyi1 made their first contribution in https://github.com/livekit/agents/pull/5453 * @u9g made their first contribution in https://github.com/livekit/agents/pull/5456 **Full Changelog**: https://github.com/livekit/agents/compare/livekit-agents@1.5.2...livekit-agents@1.5.3
## What's Changed * Pass through additional params to LemonSlice when using the LemonSlice Avatar by @jp-lemon in https://github.com/livekit/agents/pull/4984 * fix(anthropic): add dummy user message for Claude 4.6+ trailing assistant turns by @giulio-leone in https://github.com/livekit/agents/pull/4973 * (keyframe): remove whitespace from py.typed by @tinalenguyen in https://github.com/livekit/agents/pull/4990 * Add Phonic Plugin to LiveKit agents by @qionghuang6 in https://github.com/livekit/agents/pull/4980 * Fixed E2EE encryption of content in data tracks by @zelidrag-arbo in https://github.com/livekit/agents/pull/4992 * fix: resync tool context when tools are mutated inside llm_node by @longcw in https://github.com/livekit/agents/pull/4994 * [🤖 readme-manager] Update README by @ladvoc in https://github.com/livekit/agents/pull/4996 * fix(google): prevent function_call text from leaking to TTS output by @BkSouX in https://github.com/livekit/agents/pull/4999 * (openai responses): add websocket connection pool by @tinalenguyen in https://github.com/livekit/agents/pull/4985 * (openai tts): close openai client by @tinalenguyen in https://github.com/livekit/agents/pull/5012 * nvidia stt: add speaker diarization support by @longcw in https://github.com/livekit/agents/pull/4997 * update error message when TTS is not set by @longcw in https://github.com/livekit/agents/pull/4998 * initialize interval future in init by @tinalenguyen in https://github.com/livekit/agents/pull/5013 * Fix/elevenlabs update default voice non expiring by @yusuf-eren in https://github.com/livekit/agents/pull/5010 * [Inworld] Flush to drain decoder on every audio chunk from server by @ianbbqzy in https://github.com/livekit/agents/pull/4983 * (google): support passing credentials through realtime and llm by @tinalenguyen in https://github.com/livekit/agents/pull/5015 * use default voice accessible to free tier users by @tmshapland in https://github.com/livekit/agents/pull/5020 * make commit_user_turn() return a Future with the audio transcript by @longcw in https://github.com/livekit/agents/pull/5019 * Add GPT-5.4 to OpenAI plugin by @Topherhindman in https://github.com/livekit/agents/pull/5022 * Generate and upload markdown docs by @Topherhindman in https://github.com/livekit/agents/pull/4993 * Add GPT-5.4 and GPT-5.3 Chat Latest support by @Topherhindman in https://github.com/livekit/agents/pull/5030 * Improve Audio Generation Quality for Cartesia TTS Plugin by @tycartesia in https://github.com/livekit/agents/pull/5032 * fix(elevenlabs): handle empty words in _to_timed_words by @MonkeyLeeT in https://github.com/livekit/agents/pull/5036 * fix(deepgram): include word confidence for stt v2 alternatives by @inickt in https://github.com/livekit/agents/pull/5034 * fix: generate final LLM response when max_tool_steps is reached by @IanSteno in https://github.com/livekit/agents/pull/4747 * fix: guard against negative sleep duration in voice agent scheduling by @jnMetaCode in https://github.com/livekit/agents/pull/5040 * add modality-aware Instructions with audio/text variants by @longcw in https://github.com/livekit/agents/pull/4987 * fix(core): move callbacks to the caller by @chenghao-mou in https://github.com/livekit/agents/pull/5039 * Added raw logging of API errors via the LiveKit plugins for both STT and TTS. by @dhruvladia-sarvam in https://github.com/livekit/agents/pull/5025 * Log LemonSlice API error + new agent_idle_prompt arg by @jp-lemon in https://github.com/livekit/agents/pull/5052 * Sarvam v3 tts addns by @dhruvladia-sarvam in https://github.com/livekit/agents/pull/4976 * fix(google): avoid session restart on update_instructions, use mid-session client content by @D-zigi in https://github.com/livekit/agents/pull/5049 * (responses llm): override provider property and set use_websocket to False for wrappers by @tinalenguyen in https://github.com/livekit/agents/pull/5055 * feat(mcp): add MCPToolResultResolver callback for customizing tool call results by @longcw in https://github.com/livekit/agents/pull/5046 * docs: add development instructions to README and example READMEs by @bcherry in https://github.com/livekit/agents/pull/2636 * Improve plugin READMEs with installation, pre-requisites, and docs links by @bcherry in https://github.com/livekit/agents/pull/3025 * Add `generate_reply` and `update_chat_ctx` support to Phonic Plugin by @qionghuang6 in https://github.com/livekit/agents/pull/5058 * feat: enhance worker load management with reserved slots and effective load calculation by @ProblematicToucan in https://github.com/livekit/agents/pull/4911 * fix(core): render error message with full details in traceback by @chenghao-mou in https://github.com/livekit/agents/pull/5047 * feat(core): allow skip_reply when calling commit_user_turn by @chenghao-mou in https://github.com/livekit/agents/pull/5066 * fix(mcp): replace deprecated streamablehttp_client with streamable_http_client by @longcw in https://github.com/livekit/agents/pull/5048 * fix: disable aec warmup timer when audio is disabled by @longcw in https://github.com/livekit/agents/pull/5065 * feat(openai): add transcript_confidence from OpenAI realtime logprobs by @theomonnom in https://github.com/livekit/agents/pull/5070 * Enhance LK Inference STT and TTS options with new parameters and models by @russellmartin-livekit in https://github.com/livekit/agents/pull/4949 * Move Instructions to beta exports by @theomonnom in https://github.com/livekit/agents/pull/5075 * livekit-agents 1.4.5 by @theomonnom in https://github.com/livekit/agents/pull/5076 ## New Contributors * @giulio-leone made their first contribution in https://github.com/livekit/agents/pull/4973 * @qionghuang6 made their first contribution in https://github.com/livekit/agents/pull/4980 * @zelidrag-arbo made their first contribution in https://github.com/livekit/agents/pull/4992 * @tmshapland made their first contribution in https://github.com/livekit/agents/pull/5020 * @tycartesia made their first contribution in https://github.com/livekit/agents/pull/5032 * @inickt made their first contribution in https://github.com/livekit/agents/pull/5034 * @jnMetaCode made their first contribution in https://github.com/livekit/agents/pull/5040 * @D-zigi made their first contribution in https://github.com/livekit/agents/pull/5049 * @ProblematicToucan made their first contribution in https://github.com/livekit/agents/pull/4911 **Full Changelog**: https://github.com/livekit/agents/compare/livekit-agents@1.4.4...livekit-agents@1.4.5
## What's Changed * improve text mode CLI rendering by @theomonnom in https://github.com/livekit/agents/pull/4522 * fix `Worker.aclose` raising RuntimeError by @theomonnom in https://github.com/livekit/agents/pull/4523 * better cli rendering for audio by @theomonnom in https://github.com/livekit/agents/pull/4524 * fix frame capture order and add playback start callback in console mode by @chenghao-mou in https://github.com/livekit/agents/pull/4516 * Add Connector to default participant kinds by @cnderrauber in https://github.com/livekit/agents/pull/4526 * add support for language detection for assembly ai by @chenghao-mou in https://github.com/livekit/agents/pull/4527 * Support static context in integration with langchain by @benlangfeld in https://github.com/livekit/agents/pull/4504 * feat(google): add warnings when system messages are dropped in Gemini realtime model by @dhruvnigam93 in https://github.com/livekit/agents/pull/4513 * chore: change deprecated cartesia voice id by @davidzhao in https://github.com/livekit/agents/pull/4528 * #4481 Added Opus and PCM encoding to ElevenLabs TTS by @rafallezanko in https://github.com/livekit/agents/pull/4525 * interrupt the same speech handle by @chenghao-mou in https://github.com/livekit/agents/pull/4536 * pin livekit-rtc version by @theomonnom in https://github.com/livekit/agents/pull/4531 * fix(elevenlabs/stt): allow specifying scribe_v2 non-realtime model by @bml1g12 in https://github.com/livekit/agents/pull/4515 * add reasoning param for openai responses LLM by @tinalenguyen in https://github.com/livekit/agents/pull/4548 * Defensive fixes by @chenghao-mou in https://github.com/livekit/agents/pull/4546 * LemonSlice Plugin by @jp-lemon in https://github.com/livekit/agents/pull/4539 * feat (google STT): support profanity filter by @tinalenguyen in https://github.com/livekit/agents/pull/4573 * fix(baseten): correct metadata and response field names for STT by @toubatbrian in https://github.com/livekit/agents/pull/4572 * drop frames when the ConsoleAudioInput is detached by @longcw in https://github.com/livekit/agents/pull/4576 * fix audio recording in console mode by @longcw in https://github.com/livekit/agents/pull/4575 * Chatterbox model support by @plangary in https://github.com/livekit/agents/pull/4541 * Inworld websocket improvements by @cshape in https://github.com/livekit/agents/pull/4533 * fix(deepgram): expose close code and reason on unexpected disconnects by @vadimatmurphy in https://github.com/livekit/agents/pull/4569 * playback started call for DataStreamAudioOutput and QueueAudioOutput by @chenghao-mou in https://github.com/livekit/agents/pull/4570 * feat(azure): add lexicon_uri option to TTS by @zach-iee in https://github.com/livekit/agents/pull/4485 * feat(tts): integrate AsyncAI TTS engine into livekit by @ashotbagh in https://github.com/livekit/agents/pull/3596 * Simplismart Integration in Livekit by @Tushar-ml in https://github.com/livekit/agents/pull/4349 * handle invalid bytes error by @chenghao-mou in https://github.com/livekit/agents/pull/4579 * Fixes #4388: Correct transcription_delay metric calculation in STT turn detec… by @devbyteai in https://github.com/livekit/agents/pull/4396 * fix(mcp): Error message based on text attribute instead of str(part) by @rafallezanko in https://github.com/livekit/agents/pull/4582 * livekit-agents 1.3.12 by @theomonnom in https://github.com/livekit/agents/pull/4583 ## New Contributors * @cnderrauber made their first contribution in https://github.com/livekit/agents/pull/4526 * @benlangfeld made their first contribution in https://github.com/livekit/agents/pull/4504 * @dhruvnigam93 made their first contribution in https://github.com/livekit/agents/pull/4513 * @jp-lemon made their first contribution in https://github.com/livekit/agents/pull/4539 * @vadimatmurphy made their first contribution in https://github.com/livekit/agents/pull/4569 * @zach-iee made their first contribution in https://github.com/livekit/agents/pull/4485 * @ashotbagh made their first contribution in https://github.com/livekit/agents/pull/3596 * @Tushar-ml made their first contribution in https://github.com/livekit/agents/pull/4349 * @devbyteai made their first contribution in https://github.com/livekit/agents/pull/4396 **Full Changelog**: https://github.com/livekit/agents/compare/livekit-agents@1.3.11...livekit-agents@1.3.12
## What's Changed * Add allowed_tools and transport_type parameters to MCPServerHTTP by @wasaybaig201 in https://github.com/livekit/agents/pull/4365 * better `transport_type` type in MCPServer by @theomonnom in https://github.com/livekit/agents/pull/4375 * fix typo: double the - in multiple livekit-plugin providers by @ChristianBernhard in https://github.com/livekit/agents/pull/4358 * feat(AWS STT): use ChainedIdentityResolver by @itskyf in https://github.com/livekit/agents/pull/4356 * support next_in_chain for RoomIO text output by @longcw in https://github.com/livekit/agents/pull/4353 * standardize Tool interface by @longcw in https://github.com/livekit/agents/pull/4368 * add tests for function tool parsing and execution by @longcw in https://github.com/livekit/agents/pull/4384 * add EndCallTool by @longcw in https://github.com/livekit/agents/pull/4377 * chore(google): update doc string to reflect default realtime models by @davidzhao in https://github.com/livekit/agents/pull/4398 * fix AttributeError in NVIDIA Riva STT by @gau-nernst in https://github.com/livekit/agents/pull/4391 * fix aws credentials when using env vals by @chenghao-mou in https://github.com/livekit/agents/pull/4403 * fix (gemini streaming tts): change default audio encoding and voice by @tinalenguyen in https://github.com/livekit/agents/pull/4393 * fix (mistral-ai): add flexibility for timestamps by @tinalenguyen in https://github.com/livekit/agents/pull/4404 * remove shutdown models from google gemini live by @tinalenguyen in https://github.com/livekit/agents/pull/4421 * update groq tts models, voices, and defaults by @tinalenguyen in https://github.com/livekit/agents/pull/4422 * fix (google stt): set enable_word_time_offsets to False for chirp 3 by @tinalenguyen in https://github.com/livekit/agents/pull/4420 * fix: return 503 health check when worker fails to connect to LiveKit by @rusg77 in https://github.com/livekit/agents/pull/4419 * Add retrieval config support for google LLM by @chenghao-mou in https://github.com/livekit/agents/pull/4408 * allow pushing frames to VAD when agent speech is uninterruptible by @chenghao-mou in https://github.com/livekit/agents/pull/4418 * Add extra comments about Google model deprecation by @chenghao-mou in https://github.com/livekit/agents/pull/4424 * fix (gemini filesearch): require only filestore names by @tinalenguyen in https://github.com/livekit/agents/pull/4428 * update docker dependencies by @chenghao-mou in https://github.com/livekit/agents/pull/4431 * chore: minor fixup of console room name by @davidzhao in https://github.com/livekit/agents/pull/4433 * Inference: Improved support for mid session TTS updates by @adrian-cowham in https://github.com/livekit/agents/pull/4412 * fix: acquire lock in _DefaultLoadCalc.get_load() to prevent race condition by @martin-purplefish in https://github.com/livekit/agents/pull/4435 * fix vad rnn state by @theomonnom in https://github.com/livekit/agents/pull/4437 * restore old behavior by @chenghao-mou in https://github.com/livekit/agents/pull/4434 * fix: avoid double RoomIO.aclose during shutdown by @darshankparmar in https://github.com/livekit/agents/pull/4446 * add connect CLI command by @tinalenguyen in https://github.com/livekit/agents/pull/4452 * fix function call created_at by @longcw in https://github.com/livekit/agents/pull/4453 * Update STT tests and add batch recognition flag by @chenghao-mou in https://github.com/livekit/agents/pull/4425 * allow tests on external PRs when triggered by members by @chenghao-mou in https://github.com/livekit/agents/pull/4456 * Adding model query param to the STT and TTS websocket connection string. by @adrian-cowham in https://github.com/livekit/agents/pull/4457 * refactor connect CLI command by @tinalenguyen in https://github.com/livekit/agents/pull/4458 * OpenAI Responses API Plugin by @tinalenguyen in https://github.com/livekit/agents/pull/4192 * fix transcription truncate when agent is interrupted in console mode by @longcw in https://github.com/livekit/agents/pull/4473 * feat(rtzr): add keyword boosting to streaming STT by @lalq in https://github.com/livekit/agents/pull/4405 * Revise AWS Plugin README for accuracy and clarity by @guiruggiero in https://github.com/livekit/agents/pull/4468 * close log_handler when process initialize failed by @longcw in https://github.com/livekit/agents/pull/4472 * feat(deepgram): make vad_events configurable by @vchulski in https://github.com/livekit/agents/pull/4476 * Enables continuous language ID for Azure STT by @MSameerAbbas in https://github.com/livekit/agents/pull/4479 * fix: OpenAI realtime division by zero by @darshankparmar in https://github.com/livekit/agents/pull/4490 * update avatar example and openai readmes by @tinalenguyen in https://github.com/livekit/agents/pull/4495 * type cleanup, include all plugins into type checker by @davidzhao in https://github.com/livekit/agents/pull/4491 * agents.md and claude.md by @davidzhao in https://github.com/livekit/agents/pull/4493 * update examples to use LK Inference by @davidzhao in https://github.com/livekit/agents/pull/4494 * #4500 Fix for Race condition in _send_kill_signal: ValueError: process object is closed after SIGUSR1 by @rafallezanko in https://github.com/livekit/agents/pull/4501 * support diarization for soniox stt by @longcw in https://github.com/livekit/agents/pull/4510 * fix 11labs tts hang after update_options in tool call by @longcw in https://github.com/livekit/agents/pull/4499 * AGT-2316: refine timestamps in spans and recording alignment by @chenghao-mou in https://github.com/livekit/agents/pull/4131 ## New Contributors * @wasaybaig201 made their first contribution in https://github.com/livekit/agents/pull/4365 * @ChristianBernhard made their first contribution in https://github.com/livekit/agents/pull/4358 * @gau-nernst made their first contribution in https://github.com/livekit/agents/pull/4391 * @rusg77 made their first contribution in https://github.com/livekit/agents/pull/4419 * @lalq made their first contribution in https://github.com/livekit/agents/pull/4405 * @guiruggiero made their first contribution in https://github.com/livekit/agents/pull/4468 * @vchulski made their first contribution in https://github.com/livekit/agents/pull/4476 * @MSameerAbbas made their first contribution in https://github.com/livekit/agents/pull/4479 * @rafallezanko made their first contribution in https://github.com/livekit/agents/pull/4501 **Full Changelog**: https://github.com/livekit/agents/compare/livekit-agents@1.3.10...livekit-agents@1.3.11
## What's Changed * fix(google): improve handling of empty responses by @davidzhao in https://github.com/livekit/agents/pull/4330 * Add support for audio frame processor by @lukasIO in https://github.com/livekit/agents/pull/4145 * Update doc for min_endpointing_delay by @MonkeyLeeT in https://github.com/livekit/agents/pull/4327 * force interruption when closing the session by @longcw in https://github.com/livekit/agents/pull/4346 * add ProviderTool & support built-in tools for xai & gemini realtime by @theomonnom in https://github.com/livekit/agents/pull/4344 * fix dynamic tool updates in llm_node by @davidzhao in https://github.com/livekit/agents/pull/4355 * Proper support for V1 models for Google STT by @chenghao-mou in https://github.com/livekit/agents/pull/4338 * Add Grok example by @ShayneP in https://github.com/livekit/agents/pull/4363 * allow aws realtime to accept str tool results by @tinalenguyen in https://github.com/livekit/agents/pull/4364 * (gemini realtime) check for vertexai for api version by @tinalenguyen in https://github.com/livekit/agents/pull/4366 * Enable Soniox STT turn detection & metrics by @matejmarinko-soniox in https://github.com/livekit/agents/pull/4332 ## New Contributors * @MonkeyLeeT made their first contribution in https://github.com/livekit/agents/pull/4327 **Full Changelog**: https://github.com/livekit/agents/compare/livekit-agents@1.3.9...livekit-agents@1.3.10