oboroge0/hayamimi
早耳 - Real-time multilingual speech-to-text on CPU only. Live subtitles, browser dashboard, speaker labels, translation. No GPU, no cloud.
해결하는 문제
hayamimi는 CPU에서만 작동하며 메모리 사용량이 최소화된(2GB RAM 미만) 실시간 다국어 음성 인식(STT)을 제공합니다. 일반적으로 고정밀 변환과 관련된 높은 지연과 높은 하드웨어 요구 사항 문제를 해결하여 GPU나 클라우드 API 없이도 실시간 자막 및 번역이 가능하게 합니다.
작동 방식
일반적인 단일 모델에 의존하는 대신, hayamimi는 각 발화를 해당 언어에 가장 적합한 전용의 양자화(INT8) ONNX 모델로 라우팅하는 시스템을 사용합니다. 추론에는 sherpa-onnx를 사용하여 PyTorch와 CUDA를 회피합니다. 파이프라인은 다음과 같습니다:
- 언어 식별(LID): 입력 오디오의 언어를 감지하기 위해
whisper-tiny를 사용합니다. - 전용 라우팅: ReazonSpeech(일본어), Paraformer(중국어), SenseVoice(한국어/광둥어), Parakeet(영어 및 24개 유럽 언어)와 같은 전용 모델로 오디오를 라우팅합니다.
- 이중 패스 정제: 침묵 기간 후 최근 발화를 다시 디코딩하여 정확도를 높입니다.
- 후처리: CAM++ 및 pyannote를 통한 화자 라벨링, CJK 숫자 정규화, FuguMT 또는 M2M-100을 통한 실시간 번역을 포함합니다.
- 입력 유연성: 마이크, WAV 파일, WebSocket 네트워크 오디오, Windows 전용 시스템 오디오 루프백을 지원합니다.
대상 사용자
- 스트리머: 실시간 자막용 저지연 OBS 오버레이가 필요한 사용자.
- 개발자:
EventHub와 API를 통해 다른 애플리케이션에 가벼우면서도 사생활 보호 가능한 STT 엔진을 통합하고자 하는 사용자. - 회의 녹음자: 자신의 목소리와 시스템 오디오(통화/영상)를 동시에 녹음 및 변환해야 하는 사용자.
주요 특징
- 초저지연: 최종 라인은 일반적으로 발화 종료 후 약 100ms 내에 표시됩니다.
- CPU 최적화: GPU 없이 6코어 데스크톱 CPU에서 10~50배 실시간으로 작동합니다.
- 고정밀: 일본 방송 오디오에서 3.8%의 CER를 달성하며, 해당 맥락에서
whisper-large-v3-turbo를 크게 능가합니다. - 메모리 효율성: LRU 캐시를 사용하여 상주 모델의 사용량을 설정 가능한 한도(기본값 <2GB)로 유지합니다.
- 통합 도구: 내장된 브라우저 대시보드와 OBS 호환 오버레이가 제공됩니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- Dispatch
- 프로젝트