© 2026FindAgent  · @simprr
返回列表
l

livekit/agents

A framework for building realtime voice AI agents 🤖🎙️📹

agentsaiopenaireal-timevideovoice
⭐

9.9k

Stars

🔱

3.0k

Forks

👁

96

Watchers

📋

555

Issues

PythonApache-2.0创建于 2023/10/19更新于 今天
在 GitHub 上查看访问主页
README
由 Gemini 翻译整理

PyPI - Version PyPI Downloads Slack community Twitter Follow Ask DeepWiki for understanding the codebase License

正在寻找 JS/TS 库?请查看 AgentsJS。

什么是 Agents?

Agent 框架旨在构建运行在服务器上的实时、可编程的参与者。利用它,你可以创建能够看、听、并理解的对话式多模态语音智能体。

功能特性

  • 灵活的集成:提供全面的生态系统,可混合搭配各类 STT、LLM、TTS 和 Realtime API,以适配你的具体应用场景。
  • 集成化任务调度:内置任务调度与分发功能,通过 dispatch APIs 将终端用户与智能体连接起来。
  • 广泛的 WebRTC 客户端:利用 LiveKit 的开源 SDK 生态系统构建客户端应用,支持所有主流平台。
  • 电话集成:与 LiveKit 的 telephony stack 无缝对接,允许你的智能体拨打或接听电话。
  • 与客户端交换数据:使用 RPCs 和其他 Data APIs 与客户端无缝交换数据。
  • 语义轮次检测(Semantic turn detection):使用 Transformer 模型检测用户何时结束发言,有助于减少打断。
  • MCP 支持:原生支持 MCP。仅需一行代码即可集成 MCP 服务器提供的工具。
  • 内置测试框架:编写测试并使用评估器(judges)来确保你的智能体表现符合预期。
  • 开源:完全开源,允许你在自己的服务器上运行整个技术栈,包括目前最广泛使用的 WebRTC 媒体服务器之一 —— LiveKit server。

安装

安装核心 Agents 库及常用模型提供商的插件:

pip install "livekit-agents[openai,silero,deepgram,cartesia,turn-detector]~=1.4"

文档与指南

有关该框架及其使用方法的文档,请点击此处。

使用 AI 编程助手进行开发

如果你正在使用 AI 编程助手来开发 LiveKit Agents 应用,建议采用以下设置以获得最佳效果:

  1. 安装 LiveKit Docs MCP server — 让你的编程助手能够访问最新的 LiveKit 文档、进行跨仓库代码搜索以及查看可运行的示例。

  2. 安装 LiveKit Agent Skill — 为你的编程助手提供构建语音 AI 应用的架构指导和最佳实践,包括工作流设计、交接、任务处理和测试模式。

    npx skills add livekit/agent-skills --skill livekit-agents
    

Agent Skill 与 MCP server 配合使用效果最佳:Skill 教导你的编程助手如何构建 LiveKit 应用,而 MCP server 则提供实现这些功能所需的最新 API 细节。

核心概念

  • Agent:基于 LLM 并具有明确指令的应用程序。
  • AgentSession:智能体的容器,负责管理与终端用户的交互。
  • entrypoint:交互式会话的入口点,类似于 Web 服务器中的请求处理器。
  • AgentServer:协调任务调度并为用户会话启动智能体的主进程。

使用方法

简单的语音智能体


from livekit.agents import (
    Agent,
    AgentServer,
    AgentSession,
    JobContext,
    RunContext,
    cli,
    function_tool,
    inference,
)
from livekit.plugins import silero


@function_tool
async def lookup_weather(
    context: RunContext,
    location: str,
):
    """Used to look up weather information."""

    return {"weather": "sunny", "temperature": 70}


server = AgentServer()


@server.rtc_session()
async def entrypoint(ctx: JobContext):
    session = AgentSession(
        vad=silero.VAD.load(),
        # 可以使用 STT、LLM、TTS 或 Realtime API 的任意组合
        # 本示例展示了 LiveKit Inference,这是一种通过 LiveKit Cloud 访问不同模型的统一 API
        # 若要直接使用模型提供商的 API Key,请替换为以下内容:
        # from livekit.plugins import deepgram, openai, cartesia
        # stt=deepgram.STT(model="nova-3"),
        # llm=openai.LLM(model="gpt-4.1-mini"),
        # tts=cartesia.TTS(model="sonic-3", v
贡献者
tldkjtgclb
项目信息
默认分支main
LicenseApache License 2.0
创建时间2023/10/19
最近更新今天
GAI 中文摘要

Agents 是一个用于构建实时、可编程服务端 AI 智能体的开发框架。它旨在帮助开发者打造具备视觉、听觉和理解能力的交互式多模态语音智能体,从而实现高效的实时人机互动。

该框架支持灵活集成主流的语音转文字、大型语言模型及文字转语音服务,以满足多样化的定制需求。内置的任务调度系统可实现智能体的高效分配与任务管理,确保用户与智能体间的无缝连接。提供完善的 WebRTC 客户端支持,方便在各大主流平台构建终端应用。深度集成了电话通信栈,使智能体能够直接拨打或接听外部电话。具备语义轮次检测功能,通过模型精准判断用户发言结束点,有效减少交互中的不必要中断。

该框架适用于需要开发实时语音助手、自动化客服系统或电话机器人等应用的开发者与企业,特别适合在追求低延迟、多模态实时交互的场景下部署私有化 AI 服务。