实时语音 AI 是当前最热门的方向之一。LiveKit Agents 是一个专门用于构建实时、可编程语音 AI Agent 的 Python 框架,基于 WebRTC 技术栈,支持多模态交互(看、听、理解)。
项目介绍
LiveKit Agents 由 LiveKit(知名开源 WebRTC 服务提供商)开发,GitHub 获得超过 10,000 颗星。它的设计目标是让开发者能够轻松构建在服务器端运行的”可编程参与者”(Programmable Participants),这些 Agent 可以像真实参与者一样加入实时音视频会话,与用户进行自然对话。
与传统的聊天机器人不同,LiveKit Agents 专注于语音交互,支持半双工对话、语义打断(VAD)等高级特性。
特色功能
- 实时语音处理:基于 WebRTC 的低延迟语音传输
- 语义打断检测:内置基于 Transformer 的语音活动检测(VAD),智能判断用户是否讲完
- 灵活模型集成:支持 OpenAI、Deepgram(STT)、Cartesia(TTS)等多种提供商组合
- 电话集成:可与 SIP 电话网络集成,接收和拨打真实电话号码
- MCP 工具支持:原生支持 MCP 协议,可调用外部工具
- 内置测试框架:提供 Judge 机制来评估 Agent 回答质量
- RPC 数据交换:支持与客户端进行 RPC 方式的数据交换
安装步骤
# 安装核心库(含常用插件)
pip install "livekit-agents[openai,silero,deepgram,cartesia,turn-detector]~=1.4"
# 仅安装核心
pip install livekit-agents
# 安装特定插件
pip install "livekit-agents[openai]" # OpenAI 模型
pip install "livekit-agents[deepgram]" # 语音转文字
pip install "livekit-agents[cartesia]" # 文字转语音
使用方法
import asyncio
from livekit import rtc
from livekit.agents import AutoSubscribe, JobContext, JobProcess, WorkerOptions, cli, pipeline
async def entrypoint(ctx: JobContext):
await ctx.connect(auto_subscribe=AutoSubscribe.AUDIO_ONLY)
async def for_visor(assistant: pipeline.VoicePipelineAgent):
# 处理用户语音输入
pass
# 创建语音 Agent
assistant = pipeline.VoicePipelineAgent(
vad=pipeline.turn_detector.ETURNSVAD(),
vad_params=pipeline.turn_detector.VADParams(),
# STT 模型
stt=pipeline.STTModel(
provider="deepgram",
model="nova-2"
),
# LLM
llm=pipeline.LLMModel(
provider="openai",
model="gpt-4o-mini"
),
# TTS
tts=pipeline.TTSModel(
provider="cartesia",
model="cartesia-tts"
),
)
await assistant.start(ctx.room, for_visor)
# 启动 Worker
if __name__ == "__main__":
cli.run_app(WorkerOptions(entrypoint_fnc=entrypoint))
适用场景
- AI 语音助手:构建类似 Siri/Alexa 但基于大模型的语音助手
- 客服机器人:电话客服场景的 AI 替代方案
- 实时翻译:多语言实时语音翻译应用
呼叫中心:智能呼叫中心,降低人工成本
开源协议
LiveKit Agents 采用 Apache-2.0 开源许可证,可免费商用。
项目地址:https://github.com/livekit/agents
服务支持:如有兴趣不会搭建,可以联系微信:WRYD6166,开源项目搭建10-50元。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END









暂无评论内容