allgpt-co/QuickVoice
Open-source, self-hostable platform for building and operating AI phone agents.
QuickVoice – 오픈 소스 AI 전화 에이전트 플랫폼
개요 – 엔지니어링 팀이 음성 기반 AI 에이전트(인바운드 접수, 아웃바운드 영업 봇 등)를 구축, 실행 및 확장할 수 있는 셀프 호스팅 가능한 스택입니다. 마케팅 사이트, 고객 콘솔, 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 임베딩. MCP/Smithery 도구 브리지. 통화 중 안전 가드레일과 함께 외부 HTTP 도구를 호출하는 기능. |
| 전화 기능 | Twilio 및 Telnyx 번호 구매, 인바운드 라우팅, 아웃바운드 통화, 배치 캠페인, LiveKit 트렁크 바인딩. |
| 콘솔 및 API | 조직, 에이전트, 번호, KB, API 키, 결제, 설정을 위한 Next.js 고객 콘솔. 인증, 권한, Stripe 통합, 웹훅 처리가 포함된 Express API. |
| 개인정보 보호 및 준수 | 기본 PII 삭제, 선택적 Zero-PII 모드, 암호화된 비밀 정보, URL 허용 목록, 전사(transcript), 녹음, KB 행, 도구 로그에 대한 자동 보존 작업. |
| 결제 | 테스트 모드 지갑 흐름이 포함된 Stripe 통합. 구독형 사용 및 선불 크레딧 지원. |
| 개발 경험 | 단일 명령 task up:dev (Docker Compose, pnpm, Python venv)로 전체 스택을 로컬에서 실행. DB 마이그레이션, 시딩, CI, 린팅, 테스트를 위한 광범위한 Taskfile 스크립트. |
| 확장성 | 모노레포 (pnpm + Turborepo)를 통해 포크, 새로운 제공업체 추가, 에이전트 수정, 커스텀 MCP 도구 플러그인 또는 음성 카탈로그 교체가 용이함. |
아키텍처 스냅샷
Visitor → task up:dev →
├─ apps/web (마케팅 사이트)
├─ apps/console (고객 UI)
├─ apps/server (Express API, 인증, DB, 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 벡터 DB, Google 임베딩, 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 (상업적 이용 가능).
- 커뮤니티: 공개 이슈 양식, 기여 가이드라인, 거버넌스 문서 및 로드맵 제공. 스타와 커뮤니티의 관심을 환영하지만, 프로젝트는 아직 바로 프로덕션에 투입할 수 있는 단계는 아닙니다.
일반적인 사용 사례
- 인바운드 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입니다. - 실제 자격 증명 추가 – LiveKit, Twilio/Telnyx, AWS, Deepgram, ElevenLabs, Stripe 등을
.env.dev에 채워 실제 통화가 가능하게 합니다.
결론
QuickVoice는 독점적인 음성 에이전트 플랫폼을 대체할 수 있는 포괄적인 오픈 소스 대안입니다. 웹 콘솔부터 전화 제공업체에 이르기까지 음성 AI 스택의 모든 부분을 검사, 맞춤 설정 및 셀프 호스팅할 수 있는 능력을 팀에 부여하며, RAG, 도구 실행, 결제 및 개인정보 보호 제어에 대한 즉각적인 지원을 제공합니다. 아직 초기 단계이지만, 리포지토리에는 완전한 모노레포, 상세한 문서 및 자체 인프라를 관리하려는 팀을 위한 명확한 프로덕션 경로가 포함되어 있습니다.
관련
- 프로젝트
- 프로젝트
- Dispatch
- Dispatch