senstella/parakeet-mlx
An implementation of the Nvidia's Parakeet models for Apple Silicon using MLX.
Parakeet MLX – Apple Silicon에서의 음성 인식
소개 – MLX 추론 프레임워크를 사용하여 Apple Silicon Mac에서 Nvidia의 Parakeet 자동 음성 인식(ASR) 모델을 실행하는 Python 패키지입니다. 명령줄 도구와 Python API를 제공하여 오디오 파일(또는 실시간 오디오 스트림)을 타임스탬프가 포함된 텍스트로 변환합니다.
주요 기능 (README에서 발췌)
| 기능 | 상세 내용 |
|---|---|
| 모델 지원 | Hugging-Face에서 Parakeet 변형(TDT, RNNT, CTC, TDTCTC)을 로드 (예: mlx-community/parakeet-tdt-0.6b-v3). |
| Apple-silicon 가속 | M 시리즈 GPU/CPU에 최적화된 MLX 라이브러리 사용. |
| CLI | parakeet-mlx <audio_files> [OPTIONS] – 배치 전사, 출력 형식 선택(txt, srt, vtt, json, all), 단어 단위 타임스탬프, 긴 파일 청킹, 빔 서치 디코딩, 정밀도 제어(bf16 / fp32), 메모리 효율적인 긴 오디오용 로컬 어텐션 모드. |
| Python API | from_pretrained로 모델 로드; model.transcribe(path, …)는 전체 텍스트와 문장/토큰별 타임스탬프가 포함된 AlignedResult를 반환. |
| 디코딩 옵션 | 그리디(기본값) 또는 빔 서치(빔 크기, 길이 페널티, patience, duration reward). |
| 청킹 및 스트리밍 | 긴 오디오를 겹치는 청크로 분할; transcribe_stream을 통해 어텐션 컨텍스트와 깊이를 설정할 수 있는 실시간 전사 지원. |
| 로컬 어텐션 | 슬라이딩 윈도우 어텐션(rel_pos_local_attn)으로 전환하여 매우 긴 입력에 대한 메모리 사용량 감소. |
| 출력 템플릿 | {filename}, {parent}, {index}, {date}를 사용한 사용자 지정 파일 이름 패턴. |
| 설치 | uv(권장) 또는 pip를 통해 설치; 시스템 ffmpeg 필요. |
사용 방법
CLI 퀵 스타트
# 기본 전사
parakeet-mlx audio.mp3
# 단어 단위 타임스탬프가 포함된 VTT 자막
parakeet-mlx *.mp3 --output-format vtt --highlight-words
# 지원되는 모든 형식으로 생성
parakeet-mlx audio.mp3 --output-format all
Python 예제
from parakeet_mlx import from_pretrained, DecodingConfig, Beam
model = from_pretrained("mlx-community/parakeet-tdt-0.6b-v3")
# 간단한 그리디 디코드
res = model.transcribe("audio.wav")
print(res.text)
# 사용자 지정 매개변수를 사용한 빔 서치
cfg = DecodingConfig(decoding=Beam(beam_size=5, length_penalty=0.013,
patience=3.5, duration_reward=0.67))
res = model.transcribe("audio.wav", decoding_config=cfg)
print(res.sentences)
누가 사용하면 좋을까요?
- 음성 인식 기능을 갖춘 macOS 앱을 개발하는 개발자: 데이터를 클라우드로 보내지 않고 기기 내에서 전사가 필요한 경우.
- Apple 하드웨어에서 ASR 파이프라인을 프로토타이핑하는 연구원: Nvidia에서 학습된 Parakeet 모델을 활용하려는 경우.
- 콘텐츠 제작자: 팟캐스트나 영상에 대한 자막(SRT/VTT)을 로컬에서 빠르게 생성하려는 경우.
제한 사항 및 할 일 (목록)
- 단어 정확도 향상 기능은 아직 내장되어 있지 않음.
- 연속적인 컨텍스트를 가진 청킹은 부분적으로만 지원; 스트리밍 기능으로 보완 예정.
라이선스
Apache 2.0 – 상업적 및 연구용으로 무료 사용 가능.
위의 모든 정보는 저장소의 README에서 직접 가져왔습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트