맥북으로 강의노트 편리하게 작성하는 방법: Lighting-SimulWhisper
https://github.com/altalt-org/Lightning-SimulWhisper
Lightning-SimulWhisper는 Apple Silicon(M1/M2/M3)에서 Whisper를 실시간(스트리밍) 전사로 빠르게 돌리기 위해, MLX + CoreML(특히 CoreML Encoder)로 최적화한 프로젝트다. PyTorch 의존성 없이 동작하고, 파일 시뮬레이션/마이크 입력 모두 지원한다.
핵심 포인트
- CoreML Encoder로 인코딩을 가속(최대 ~18x) → 전략 효율도 좋음
- MLX Decoder로 스트리밍 제어(AlignAtt 정책), 빔서치 등 유연성 확보
- tiny ~ large-v3, large-v3-turbo까지 모델 폭넓게 지원
설치 방법
1) 기본 설치
git clone https://github.com/altalt-org/Lightning-SimulWhisper.git
cd Lightning-SimulWhisper
pip install -r requirements.txt2) CoreML 가속(추천)
Apple Neural Engine을 쓰려면 CoreML 관련 패키지를 추가로 설치한다.
pip install coremltools ane_transformers3) CoreML Encoder 모델 생성
레포가 내부에 whisper.cpp(서브모듈)를 포함하고 있고, 스크립트로 CoreML encoder를 만든다.
# (필요 시) whisper.cpp 클론
git clone https://github.com/ggml-org/whisper.cpp.git
# CoreML encoder 생성 (예: base.en)
./scripts/generate_coreml_encoder.sh base.en사용 가능한 모델: tiny(.en), base(.en), small(.en), medium(.en), large-v1/v2/v3, large-v3-turbo
사용 방법(빠른 시작)
1) CoreML로 파일을 “실시간처럼”으로 전사(초청)
python3 simulstreaming_whisper.py jfk.wav \
--model_name base \
--model_path mlx_base \
--use_coreml \
--language en \
--log-level CRITICAL2) 한국어 + 빔서치 + CoreML(품질/안정성 옵션)
python3 simulstreaming_whisper.py test.mp3 \
--language ko \
--beams 3 \
-l CRITICAL \
--model_name medium \
--model_path mlx_medium \
--use_coreml3) 전략 효율 우선(Neural Engine 적극 사용)
python3 simulstreaming_whisper.py test.mp3 \
--language ko \
--model_name medium \
--model_path mlx_medium \
--use_coreml \
--coreml_compute_units CPU_AND_NE이런 사람에게 추천
- 맥북에서 클라우드 없이 로컬로 회의/경험/영상 실시간 자막을 만들고 싶다
- Whisper를 스트리밍으로 쓰는데 속도, 발열, 배터리가 걱정이다
- PyTorch 없이 간단히 동작하는 것을 원한다