Moonshine Voice는 실시간 음성 에이전트와 음성 인터페이스를 만들기 위한 오픈소스 AI 툴킷이다. STT(speech-to-text), intent recognition, TTS(text-to-speech)를 한 라이브러리로 묶고, 사용자가 말하는 동안 일부 계산을 진행해 낮은 지연을 목표로 한다.
Whisper와 다른 점
Whisper는 강력하지만 30초 입력 창과 반복 호출 구조 때문에 실시간 인터페이스에서는 불필요한 계산이 생긴다. Moonshine은 이 문제를 다음 방식으로 줄인다.
| 항목 | Moonshine 접근 |
|---|---|
| 입력 길이 | 고정 30초가 아니라 유연한 입력 창 사용 |
| 스트리밍 | 오디오가 추가될 때 encoder·decoder 상태 일부를 캐시 |
| 엣지 배포 | Python, iOS, Android, macOS, Linux, Windows, Raspberry Pi 등 지원 |
| 언어 | 영어 외 한국어, 일본어, 스페인어, 아랍어 등 STT/TTS 지원 |
| TTS | Kokoro, Piper, ZipVoice 기반 voice 및 voice cloning 지원 |
README 기준 English streaming 모델은 Tiny, Small, Medium 계열로 제공되며, Medium Streaming은 245M 파라미터 규모에서 낮은 WER와 짧은 지연을 목표로 한다.
설치
Python에서는 다음처럼 시작한다.
pip install moonshine-voice
moonshine-voice transcribe
moonshine-voice intent애플 플랫폼은 Swift Package, Android는 Maven 패키지, 데스크톱과 임베디드 환경은 C++ core와 ONNX Runtime 기반으로 배포된다.
적합한 사용 케이스
- 실시간 음성 명령을 받는 로컬 앱
- 라즈베리 파이, 웨어러블, IoT 디바이스의 음성 인터페이스
- 대화 중간에 intent를 감지해야 하는 voice agent
- 클라우드 STT API로 오디오를 보내기 어려운 프라이버시 민감 제품
대량 파일 전사처럼 batch throughput이 더 중요한 경우에는 Whisper·Parakeet 계열이 여전히 더 단순할 수 있다. Moonshine의 강점은 “라이브 음성”이다.
관련 문서
- whisper-cpp — C/C++ 기반 로컬 Whisper 음성인식
- real-world-voiceeq — 음성 AI 품질 평가 벤치마크
- omnivoice — 다국어 오픈소스 TTS 모델
- supertonic — 온디바이스 다국어 TTS 모델
참고 자료
- moonshine-ai/moonshine — GitHub 공식 저장소