allgpt-co/QuickVoice
Open-source, self-hostable platform for building and operating AI phone agents.
QuickVoice – 开源 AI 电话智能体平台
产品简介 – 一个可自托管的堆栈,允许工程团队构建、运行和扩展基于语音的 AI 智能体(入站接待、出站销售机器人等)。它在一个单体仓库(monorepo)中集成了营销网站、客户控制台、Express API、Python LiveKit 工作进程、电话集成(Twilio/Telnyx)、知识库(Pinecone)支持、计费(Stripe)以及所有相关的基础设施(Postgres, Redis, S3 等)。
重要意义 – 大多数语音智能体服务是以封闭的 SaaS API 形式提供的(例如 Retell)。QuickVoice 为您提供具有完全源码级控制权的相同产品界面,从而实现隐私审查、成本透明度以及托管服务无法提供的自定义扩展。
核心功能 (详见 README)
| 类别 | 亮点 |
|---|---|
| 智能体运行时 | 基于 Python 编写的 LiveKit 语音工作进程;单次通话配置(提示词、语音、语言、动态变量);支持 STT (Deepgram, Sarvam)、LLM (AWS Bedrock)、TTS (ElevenLabs, Sarvam)。 |
| 知识与工具 | 用于 RAG 的 Pinecone 向量数据库;Google embeddings;MCP/Smithery 工具桥接;通话期间调用外部 HTTP 工具的能力(带有安全防护)。 |
| 电话通信 | Twilio 和 Telnyx 号码购买、入站路由、出站通话、批量活动、LiveKit 中继绑定。 |
| 控制台与 API | 为组织、智能体、号码、知识库、API 密钥、计费、设置提供的 Next.js 客户控制台;具有身份验证、权限、Stripe 集成和 Webhook 处理功能的 Express API。 |
| 隐私与合规 | 默认 PII 脱敏、可选的零 PII 模式、加密的机密信息、URL 白名单、针对转录文本、录音、知识库行和工具日志的自动保留任务。 |
| 计费 | 带有测试模式钱包流程的 Stripe 集成;支持订阅式用量和预付额度。 |
| 开发体验 | 通过单个命令 task up:dev (Docker Compose, pnpm, Python venv) 在本地启动完整堆栈;用于数据库迁移、数据填充、CI、代码检查和测试的广泛 Taskfile 脚本。 |
| 可扩展性 | 单体仓库 (pnpm + Turborepo) 使分叉、添加新提供商、修改智能体、插入自定义 MCP 工具或更换语音目录变得非常容易。 |
架构概览
Visitor → task up:dev →
├─ apps/web (营销网站)
├─ apps/console (客户 UI)
├─ apps/server (Express API, 身份验证, 数据库, Stripe, Twilio/Telnyx)
└─ apps/ai (Python LiveKit 工作进程, RAG, 工具执行)
│
└─ LiveKit ↔ Telephony (Twilio/Telnyx)
所有服务都在本地通过 Postgres 和 Redis 容器运行;生产环境需要您提供自己的 LiveKit、电话和云提供商凭据。
技术栈 (源自 README)
- 前端: Next.js (React) + Tailwind CSS
- API: Express (TypeScript) 配合 Better Auth
- 语音运行时: LiveKit Agents, Python 工作进程, Silero VAD, 多语言轮次检测, 降噪
- 电话: Twilio, Telnyx
- AI 提供商: 通过 LiveKit 推理配置 STT/TTS/LLM (默认: Deepgram, AWS Bedrock, ElevenLabs)
- 知识与工具: Pinecone 向量数据库, Google embeddings, MCP/Smithery 桥接, 自定义 HTTP 工具
- 数据存储: PostgreSQL (Prisma ORM), Redis/BullMQ, S3 兼容对象存储
- 计费: Stripe
- 编排: Docker Compose, Go Task, pnpm (v9), Turborepo
- 语言运行时: Node 20/22+, Python 3.12, Go (用于 Task)
项目成熟度
- 状态: 开发中,尚未发布稳定版本 (参见
ROADMAP.md和v0.1.0草案说明)。 - 许可证: MIT (允许商业用途)。
- 社区: 提供公开的 Issue 提交表单、贡献指南、治理文档和路线图。欢迎 Star 和社区关注,但该项目目前尚未达到开箱即用的生产就绪状态。
典型用例
- 入站 AI 接待员 – 接听电话、查询客户数据、提供支持。
- 出站活动 – 自动提醒、销售电话、催收,并带有结果跟踪。
- 预约调度 – 语音驱动的预订流程。
- 基于知识的智能体 – 根据上传的文档或向量库知识回答问题。
- 特定领域自动化 – 医疗分诊、金融服务验证、物流协调、房地产潜在客户筛选、电子商务支持。
入门指南 (快速摘要)
- 前提条件 – Linux/macOS (或 Windows 上的 WSL2), Bash ≥ 4, Node 20/22+, pnpm 9, Python 3.12, Docker Compose v2, Go Task。
- 运行 –
task up:dev创建环境文件,启动 Postgres 和 Redis,运行迁移并启动所有服务。 - 访问 – 控制台位于
http://localhost:3000,营销网站位于http://localhost:3001,API 健康检查位于http://localhost:5000/api/v1/health,AI 工作进程健康检查位于http://localhost:5555/health。 - 添加真实凭据 – 在
.env.dev中填写 LiveKit, Twilio/Telnyx, AWS, Deepgram, ElevenLabs, Stripe 等信息,以实现实时通话功能。
总结
QuickVoice 是专有语音智能体平台的全面开源替代方案。它赋予团队检查、定制和自托管语音 AI 堆栈每一部分的能力——从 Web 控制台到电话提供商——同时为 RAG、工具执行、计费和隐私控制提供开箱即用的支持。虽然仍处于早期阶段,但该仓库包含完整的单体仓库、详细的文档以及为愿意管理自身基础设施的团队提供的清晰的生产路径。
相关
- 项目
- 项目
- Dispatch
- Dispatch