Huggingface Speech To Speech - 오픈소스 모델로 로컬 음성 에이전트를 만드는 파이프라인
1 hour ago
1
- 사용자가 말하면 이를 감지하고(VAD) → 음성을 텍스트로 바꾸고(STT) → LLM이 질문을 이해하고 답변 생성 → 생성된 답변을 다시 음성으로 읽어주는(TTS) 완전한 음성 대화 파이프라인을 로컬에서 구성할 수 있음
- 각 단계는 각각 별도 스레드에서 동작하고 큐로 연결돼, 한 단계가 끝날 때까지 전체가 멈추지 않는 저지연 스트리밍 구조를 사용
- OpenAI Realtime 호환 WebSocket API로 사용할 수 있어, 기존 OpenAI Realtime용 클라이언트나 SDK를 큰 변경 없이 연결 가능
- LLM 부분은 OpenAI 호환 API를 사용하므로 OpenAI 같은 호스티드 서비스뿐 아니라 HF Inference Providers, vLLM, llama.cpp 등 자체 서버로도 연결 가능
- 기본 구성에서는 음성을 글자로 바꾸는 STT에 Parakeet TDT, 답변 생성에는 OpenAI 호환 LLM, 음성 출력에는 Qwen3-TTS를 사용
- STT는 Whisper/Faster Whisper/Paraformer 등으로, TTS는 Kokoro/Pocket TTS/ChatTTS/MMS 등으로 바꿀 수 있어 원하는 품질·속도·하드웨어에 맞게 조합할 수 있음
- 실행 방식도 다양해 브라우저나 앱과 연결하는 realtime 모드, 컴퓨터의 마이크/스피커를 직접 쓰는 local 모드, 원시 PCM WebSocket, TCP Socket 방식을 제공
- Realtime 모드는 사용자의 말을 실시간으로 받아 적고, 발화가 끝나는 즉시 답변 생성을 시작해 자연스러운 턴테이킹을 지원
- STT를 거치지 않고 잘라낸 음성 구간을 오디오 입력을 직접 이해하는 모델에 보내는 구성도 가능
- 별도의 LLM Proxy를 켜면 음성 대화와 동시에 요약·제목 생성 같은 부가 작업을 같은 OpenAI 호환 엔드포인트에서 처리할 수 있음
- Parakeet TDT는 25개 유럽 언어를 지원하고 --language auto로 자동 언어 감지도 가능하며, 실제 지원 언어 범위는 선택한 STT/TTS 모델에 따라 달라짐
- Kyutai Labs의 Pocket TTS를 사용하면 음성 클로닝을 포함한 스트리밍 음성 합성도 가능
- 실제로 수천 대의 Reachy Mini 로봇의 대화 백엔드로 운영되고 있어, 단순 데모가 아니라 프로덕션 환경에서도 사용 중
- Apache-2.0 라이선스
-
Homepage
-
개발자
- Huggingface Speech To Speech - 오픈소스 모델로 로컬 음성 에이전트를 만드는 파이프라인