Whisper.cpp란 무엇이며, 어떻게 설치하고 활용할 수 있을까?
로컬 음성 인식 시스템을 구축할 때 Whisper.cpp는 가볍고 빠른 성능을 제공하는 훌륭한 선택입니다. 이 글에서는 Whisper.cpp를 활용한 음성 인식 시스템 구축 전 과정을 소개하며, Windows 및 Linux 환경에서의 설치 방법과 실전 사용 팁까지 자세히 설명드립니다.
Whisper.cpp란? OpenAI Whisper의 경량 C++ 구현체
Whisper.cpp는 OpenAI의 Whisper 음성 인식 모델을
C++ 기반으로 경량화한 구현체입니다. 파이썬 환경 없이도
작동하며, 로컬 CPU만으로도 오디오 파일을 빠르게
텍스트로 변환할 수 있습니다. Raspberry Pi와 같은
저사양 디바이스에서도 사용할 수 있어 많은 개발자들 사이에서
인기를 얻고 있습니다.
설치 전 준비물과 시스템 요구 사항
Whisper.cpp를 실행하기 위한 최소 요구 사항은 다음과 같습니다.
운영체제에 따라 추가 설치가 필요할 수 있습니다.
항목 | 최소 요구 사항 또는 설명 |
운영체제 | Windows 10 이상, Ubuntu 20.04 이상 등 |
CPU | SSE/AVX 지원이 포함된 x64 기반 프로세서 |
RAM | 최소 4GB, 권장 8GB 이상 |
필수 도구 | Git, CMake, g++ 또는 clang |
Windows에서 Whisper.cpp 설치 방법
Windows 사용자를 위한 설치 절차는 아래와 같습니다.
PowerShell 또는 Git Bash를 통해 명령어를 실행하세요.
1단계: GitHub 저장소 클론
git clone https://github.com/ggerganov/whisper.cpp
2단계: 디렉토리 이동 및 모델 다운로드
cd whisper.cpp
./models/download-ggml-model.sh base
3단계: CMake를 사용한 빌드
mkdir build && cd build
cmake ..
cmake --build . --config Release
이후 main.exe 파일이 생성되며, 이를 통해 오디오 파일을 처리할 수 있습니다.
Ubuntu 및 리눅스 환경 설치 방법
Linux 계열 운영체제에서는 터미널을 이용해 쉽게 설치할 수 있습니다.
아래 명령어를 순서대로 실행하면 빌드가 완료됩니다.
1단계: 저장소 클론
git clone https://github.com/ggerganov/whisper.cpp
2단계: 모델 다운로드
cd whisper.cpp
./models/download-ggml-model.sh small
3단계: 컴파일
make
컴파일이 완료되면 main 바이너리를 통해
오디오 파일에서 음성을 인식할 수 있습니다.
다양한 모델 크기와 선택 기준
Whisper.cpp는 다양한 모델 크기를 지원하며,
이는 인식 정확도와 속도에 영향을 미칩니다.
아래 표를 참고하여 목적에 맞는 모델을 선택하세요.
모델 이름 | 속도 (상대적) | 정확도 | 용량 (GB) |
tiny | 매우 빠름 | 낮음 | 0.14 |
base | 빠름 | 중간 | 0.15 |
small | 보통 | 높음 | 0.46 |
medium | 느림 | 매우 높음 | 1.5 |
large | 매우 느림 | 최고 | 2.9 |
음성 인식 실행 방법 및 예제
Whisper.cpp는 WAV 형식의 오디오 파일을 인식합니다.
다음은 실제 실행 예제입니다.
1단계: 오디오 파일 준비
파일명: sample.wav (16kHz, mono 권장)
2단계: 인식 실행
./main -m models/ggml-small.bin -f sample.wav
옵션으로 -t(스레드 수), -l(언어),
-otxt(텍스트 파일 출력) 등을 추가할 수 있습니다.
Whisper.cpp 활용 팁과 자주 발생하는 문제 해결법
다음 팁을 활용하면 더 안정적으로 사용할 수 있습니다.
- 샘플링 속도는 반드시 16000Hz로 설정하세요.
- WAV 또는 MP3 파일, mono 채널 권장
- 모델 경로를 정확히 지정하여 오류 방지
- libomp 관련 에러는 OpenMP 라이브러리 설치로 해결
- 정확도 향상이 필요할 경우 base → small → medium 으로 업그레이드 권장
Whisper.cpp vs Python Whisper 비교
두 구현체는 서로 다른 장단점을 가지고 있습니다.
아래 표를 통해 그 차이를 비교해보세요.
항목 | Whisper.cpp (C++) | Python Whisper |
설치 용이성 | 보통 | 쉬움 |
실행 속도 | 빠름 | 느림 |
GPU 지원 | 제한적 | 광범위 |
종속성 | 낮음 | 높음 |
사용 환경 | 로컬 최적화 | 클라우드/로컬 |
마무리 및 활용 가능 분야
Whisper.cpp는 고성능 음성 인식이 필요한 환경에서
CPU만으로도 작동 가능한 유용한 솔루션입니다.
특히 네트워크 연결이 제한적인 임베디드 시스템,
보안이 중요한 내부망 환경, 개발용 툴체인 등에 적합합니다.
모델을 적절히 선택하고 오디오 파일을 잘 전처리하면
우수한 결과를 얻을 수 있습니다.