fastrtc

几行 Python 代码,让应用实时开口说话

fastrtc 是一个专注于实时通信的 Python 库,旨在简化 WebRTC 音频/视频流的接入,让开发者能快速构建支持语音对话、实时转录和文本转语音的 AI 应用。它解决了在 Python 生态中集成实时音视频通信门槛高、代码复杂的问题,提供了简洁的 API 和预构建组件,使开发者无需深入底层 WebRTC 细节即可实现浏览器与服务器之间的低延迟双向音频流。核心能力包括:音频流捕获与播放、与主流 ASR/TTS 模型(如 Whisper、ElevenLabs)的无缝对接、以及基于 LLM 的实时语音交互管道搭建。项目处于成长阶段,社区活跃,适合快速原型验证和中小规模实时语音应用开发。

开源 free 音频音乐
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 4629
维护状态 低维护
是否开源 是
定价模式 free

项目数据

分类音频音乐
开发团队gradio-app
所属国家
定价模式free
价格说明开源库,MIT许可证,完全免费,无付费版本。
访问状态
是否开源是
开源协议MIT
主要语言JavaScript
技术栈/模型artificial-intelligence,hacktoberfest,hacktoberfest2025,llm,python,real-time,speech-to-text,text-to-speech
GitHub 星标★ 4629
30天Star增速
HF 下载量
上线时间2024-09-25 00:00:00
最近更新2026-09-22 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数3

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 5 步

环境要求

  • Python 环境(README 未指定版本,建议 Python 3.10+)
  • pip 包管理器
  • 如需暂停检测与文本转语音功能,需安装 vad 和 tts 额外依赖

安装与启动步骤

  1. 1安装 fastrtc

    使用 pip 从 PyPI 安装 fastrtc 基础包,这是使用该库的核心依赖。

    pip install fastrtc
  2. 2安装扩展依赖

    如需内置暂停检测(ReplyOnPause)和文本转语音功能,需额外安装 vad 和 tts 选项。

    pip install "fastrtc[vad, tts]"
  3. 3启动内置 UI

    调用 .ui.launch() 启动基于 Gradio 的内置 WebRTC 界面,便于测试和分享音频流。

  4. 4挂载到 FastAPI

    使用 .mount(app) 将流挂载到 FastAPI 应用,获得 WebRTC 或 WebSocket 端点以对接自有前端。

  5. 5运行脚本

    README 提示运行脚本即可启动流服务,具体脚本内容需参考官方 usage guide。

    python app.py

关键配置

配置项必填说明示例
Hugging Face token否调用 .fastphone() 获取免费临时电话号码时需要提供hf_xxxxxxxxxxxxxxxx

如何确认成功

运行启动脚本后,终端输出本地访问地址,浏览器打开可看到 Gradio 界面并建立音视频连接。

常见问题

Q:fastrtc 支持哪些实时通信协议?

A:README 说明支持 WebRTC 和 WebSockets 两种方式,可通过 .mount(app) 挂载到 FastAPI 应用获得相应端点。

Q:如何快速测试音频流?

A:使用 .ui.launch() 启动内置 Gradio UI,即可在浏览器中测试和分享你的音频流。

Q:如何获取可拨打的临时电话号码?

A:调用 .fastphone() 可获取免费临时电话号码,但需要提供 Hugging Face token。

Q:暂停检测和文本转语音需要额外安装吗?

A:需要,执行 pip install "fastrtc[vad, tts]" 安装 vad 和 tts 扩展依赖。

注意事项

  • README 未给出具体运行脚本内容,实际代码需参考官方 usage guide。
  • 使用 .fastphone() 需要 Hugging Face token。
  • vad 和 tts 为可选扩展,按需安装。

核心亮点

  • API 极简,用装饰器即可定义音频输入输出,上手快
  • 原生集成 WebRTC,浏览器端零插件即可实时通话
  • 与主流 ASR/TTS 模型有现成适配,拼装语音 AI 应用省事

不足之处

  • 文档/社区待观察
  • 项目较新,生态和最佳实践沉淀不足,复杂场景需自行踩坑

适用场景

  • 构建浏览器端实时语音助手或客服机器人
  • 为 LLM 应用添加语音对话交互界面
  • 快速搭建语音转文字或文字转语音的实时演示原型

替代项目

LiveKit、Daily、Agora RTC

项目介绍

fastrtc 是基础设施领域的开源项目,由 gradio-app 开发,2024 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(4,629)位列前 10%,在基础设施分类的 1,132 个项目里位列前 14%。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-22。开源库,MIT许可证,完全免费,无付费版本。从国内网络环境看,可直接访问。

它主要面向的使用场景是:构建浏览器端实时语音助手或客服机器人。同类可对比的替代方案包括 LiveKit、Daily、Agora RTC。

上一篇:SLA

下一篇:vllm-mlx

同类项目推荐

freebuff-proxy 开源

聚合多账号,一键接入 OpenAI 兼容 API,轻松管理会话。

Multi-account OpenAI-compatible gateway for coding models. Pooled keys, session life···

★ 213 2026-08-20
microduck 开源

用 Rust 造一只会走路的桌面小鸭,快速上手双足机器人。

A Tiny biped duck robot

★ 8684 2026-09-10
soperator 开源

用 Kubernetes 原生方式运行 Slurm,简化 HPC 集群管理。

Run Slurm in Kubernetes

★ 439 2026-08-10
ollama 开源

一条命令本地跑起大模型,免费、私密、不卡顿

Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other···

★ 181484 2026-08-09