Skip to main content
PromptQuorum
/고급 로컬 LLM/whisper.cpp 리뷰(2026): 순수 C/C++로 구현한 로컬 음성 인식
Voice, Speech & Multimodal

whisper.cpp 리뷰(2026): 순수 C/C++로 구현한 로컬 음성 인식

·11분 읽기·Hans Kuepper 저 · PromptQuorum 창립자, 멀티 모델 AI 디스패치 도구 · PromptQuorum

whisper.cpp는 Georgi Gerganov가 개발한 무료 MIT 라이선스 C/C++ 재구현체로, OpenAI의 음성 인식 모델 Whisper를 기반으로 하며 Python에 의존하지 않고 기기 내에서 완전히 전사를 실행합니다. CPU(AVX2/NEON 최적화 포함), Apple Metal 및 Core ML, NVIDIA CUDA, Vulkan 등 여러 백엔드를 지원하여, Raspberry Pi부터 Apple Silicon Mac, CUDA 서버까지 수정 없이 동작하는 몇 안 되는 STT 도구 중 하나입니다. 실제 하드웨어에서 faster-whisper와 직접 비교한 벤치마크는 PromptQuorum의 whisper.cpp 대 faster-whisper 비교에서 확인할 수 있습니다.

whisper.cpp는 OpenAI의 음성 인식 모델 Whisper를 C/C++로 재구현한 프로젝트로, Georgi Gerganov가 개발했으며 현재는 GitHub의 ggml-org 조직에서 관리하고 있습니다. 클라우드 API를 호출하지 않고 기기 내에서 완전히 음성을 텍스트로 변환하며, Raspberry Pi부터 Apple Silicon Mac, NVIDIA GPU 서버에 이르기까지 다양한 하드웨어에서 동작합니다. 이 리뷰에서는 개발 역사, 설치 및 실행 방법, 실제 명령줄 예시, MIT 라이선스와 비용(무료), 그리고 적합하지 않은 용도까지 다루며, faster-whisper와의 선택을 고민하는 독자를 위해 PromptQuorum의 직접 비교 벤치마크 링크도 함께 제공합니다.

whisper.cpp 리뷰(2026): 순수 C/C++로 구현한 로컬 음성 인식

핵심 요점

  • 2022년 Georgi Gerganov가 개발; 현재는 GitHub의 ggml-org 조직에서 관리.
  • MIT 라이선스 — 상업적 사용을 포함해 무료로 사용, 수정, 재배포 가능.
  • CPU, Apple Metal/Core ML, NVIDIA CUDA, Vulkan, OpenVINO, AMD ROCm, Ascend NPU 백엔드에서 동작.
  • Python 런타임이 필요 없음 — 컴파일된 C/C++ 바이너리로 제공되며, Python 바인딩은 선택 사항.
  • 스트리밍 예제를 통해 실시간 마이크 전사를 지원하며, 파일 일괄 전사도 지원.
  • 최신 안정 버전: v1.9.3, 2026년 8월 20일 공개.

📍 한 문장으로

whisper.cpp는 Georgi Gerganov가 개발한 무료 MIT 라이선스 C/C++ 포팅 버전으로, OpenAI의 음성 인식 모델 Whisper를 기반으로 하며 CPU, Apple Metal, NVIDIA CUDA 등 다양한 백엔드를 통해 Python 없이 기기 내에서 완전히 오디오를 전사합니다.

💬 쉽게 말하면

클라우드 API로 전송하는 대신 자신의 컴퓨터나 기기에서 음성을 텍스트로 변환하는 도구입니다. 컴파일된 바이너리를 내려받거나 직접 빌드한 뒤, 오디오 파일이나 실시간 마이크 스트림을 입력하면 OpenAI가 학습시킨 것과 동일한 모델을 사용해 무료로 전사 결과를 돌려줍니다.

📌참고: 이 리뷰는 whisper.cpp를 독립 도구로서 다루며 역사, 설치, 실제 명령어, 라이선스, 솔직한 한계에 초점을 맞춥니다. Apple Silicon 및 NVIDIA GPU에서 faster-whisper와 직접 비교한 벤치마크는 whisper.cpp 대 faster-whisper 비교를 참고하십시오.

역사: whisper.cpp를 누가, 왜 만들었는가

OpenAI는 2022년 9월 음성 인식 모델 Whisper를 공개했습니다. 대량의 다국어 오디오 데이터로 학습된 오픈 웨이트 모델로, PyTorch에 의존하고 좋은 성능을 위해서는 CUDA 지원 GPU가 필요한 Python 패키지(openai-whisper)로 배포되었습니다.

Georgi Gerganov는 그 직후, 역시 2022년에 이 모델을 순수 C/C++로 포팅했습니다. 저장소는 ggml-org/whisper.cpp입니다. Gerganov는 whisper.cpp의 연산과 양자화를 뒷받침하는 ggml 텐서 라이브러리의 개발자이기도 하며, 이후에는 대규모 언어 모델을 로컬에서 실행하기 위한 동등한 C/C++ 포팅인 llama.cpp로 널리 알려졌습니다 — 두 프로젝트는 같은 ggml 기반과, 원래는 Python과 GPU가 필요한 모델을 평범한 하드웨어에서 실행한다는 동일한 설계 목표를 공유합니다.

개발 동기는 속도뿐 아니라 이식성과 자원 효율성이었습니다. Whisper의 원본 Python/PyTorch 구현은 좋은 GPU를 갖춘 워크스테이션에서는 실행하기 쉽지만, Raspberry Pi, iOS 앱, WebAssembly 페이지, Python 인터프리터가 없는 임베디드 Linux 보드에 배포하기에는 무겁습니다. whisper.cpp는 PyTorch와 Python 의존성을 완전히 제거하고 작은 바이너리로 컴파일되며, 더 작은 모델 변형이 수백 메가바이트의 RAM에 들어갈 수 있도록 양자화 지원을 추가합니다.

이 프로젝트는 한 사람이 만든 사이드 프로젝트 수준을 훨씬 넘어섰습니다. 현재는 수백 명의 기여자를 두고 있으며, Debian용으로 패키징되어 있고, 2022년 원본 공개 당시에는 존재하지 않았던 Core ML(Apple Neural Engine), CUDA, Vulkan, OpenVINO 등 여러 백엔드를 공식 지원합니다. 그럼에도 whisper.cpp는 여전히 Whisper의 *실행 환경*입니다 — 자체 모델을 학습하거나 미세 조정하지 않으며, 모든 전사는 여전히 주어진 모델 크기(tiny부터 large-v3까지)에 대해 OpenAI가 공개한 동일한 가중치를, 프로젝트 고유의 GGML 형식으로 변환해 사용합니다.

whisper.cpp는 누가 만들었습니까?

Georgi Gerganov가 whisper.cpp를 개발했으며, 2022년 OpenAI Whisper 모델의 C/C++ 포팅 버전으로 처음 공개했습니다. Gerganov는 whisper.cpp가 구동되는 ggml 텐서 라이브러리도 만들었으며, 이후 대규모 언어 모델을 로컬에서 실행하기 위한 동등한 포팅인 llama.cpp도 개발했습니다.

whisper.cpp가 실제로 하는 일

whisper.cpp는 오디오 입력(WAV 파일, 그리고 선택적 FFmpeg 디코딩을 통한 다른 형식, 또는 실시간 마이크 스트림)을 받아 텍스트 전사 결과를 생성하며, 선택적으로 구간별 타임스탬프와 영어 번역도 함께 제공합니다. 이를 위해 Whisper 모델(프로젝트 고유의 GGML 가중치 형식으로 변환됨)을 불러와 ggml 텐서 라이브러리를 통해 로컬 머신에서 완전히 추론을 수행합니다.

  • 일괄 전사. whisper-cli 바이너리를 오디오 파일에 지정하면 전사 결과를 얻을 수 있으며, 일반 텍스트, SRT/VTT 자막, JSON, CSV 출력 옵션을 제공합니다.
  • 실시간 스트리밍. whisper-stream 예제는 실시간 마이크 오디오를 캡처하여 지속적으로 전사하며, 음성 비서나 실시간 자막에 유용합니다.
  • 다국어 전사 및 번역. 기반 Whisper 모델은 여러 언어로 학습되었으며, whisper.cpp는 전달된 플래그에 따라 원문 언어로 전사하거나 직접 영어로 번역할 수 있습니다.
  • 하드웨어 가속 추론. Apple Silicon에서는 whisper.cpp가 모델을 Core ML 형식으로 내보내 Apple Neural Engine을 활용할 수 있습니다. NVIDIA 하드웨어에서는 CUDA를 사용하며, 다른 GPU에서는 Vulkan이나 OpenVINO를 사용할 수 있습니다. CPU 전용 머신에서는 AVX2(x86) 또는 NEON(ARM) 벡터 명령어를 사용합니다.
  • 양자화. 모델은 (예를 들어 4비트나 5비트 GGML 형식으로) 양자화되어, 약간의 정확도를 희생하는 대신 메모리 사용량을 크게 줄이고 추론 속도를 높일 수 있습니다 — llama.cpp가 LLM에 사용하는 것과 동일한 기법입니다.

whisper.cpp 설치 및 실행: 단계별 가이드

이 가이드는 프로젝트 자체 README에 문서화된 명령어를 사용하여 소스에서 whisper.cpp를 빌드하고 첫 전사를 실행합니다.

  1. 1
    저장소를 클론합니다.
    Why it matters: `git clone https://github.com/ggml-org/whisper.cpp.git`을 실행한 뒤 `cd whisper.cpp`를 실행합니다. 이렇게 하면 CMake 빌드 파일과 모델 다운로드 스크립트를 포함한 전체 C/C++ 소스 트리를 내려받습니다.
  2. 2
    모델을 다운로드합니다.
    Why it matters: `sh ./models/download-ggml-model.sh base.en`을 실행하여 GGML 형식의 영어 전용 base 모델을 가져옵니다. 원하는 정확도와 속도의 균형에 따라 `base.en`을 `tiny`, `small`, `medium`, `large-v3`로 바꾸거나, 다국어 모델을 위해 `.en` 접미사를 제거하십시오.
  3. 3
    프로젝트를 빌드합니다.
    Why it matters: `cmake -B build`를 실행한 뒤 `cmake --build build -j --config Release`를 실행합니다. 이렇게 하면 CLI 바이너리(`whisper-cli`, `whisper-stream` 등)가 `build/bin/` 디렉터리에 컴파일됩니다. 이 단계에는 Python 설치가 필요하지 않습니다.
  4. 4
    예제 파일을 전사합니다.
    Why it matters: 저장소에 포함된 예제 오디오 파일로 `./build/bin/whisper-cli -f samples/jfk.wav`를 실행합니다. 이를 통해 빌드가 처음부터 끝까지 정상 작동하는지 확인하고, 터미널에 전사 결과가 출력됩니다.
  5. 5
    자신의 오디오를 전사합니다.
    Why it matters: 예제 경로를 자신의 WAV 파일로 바꿉니다: `./build/bin/whisper-cli -m models/ggml-base.en.bin -f your-audio.wav`. `.srt` 자막 파일도 함께 작성하려면 `-osrt`를, JSON 출력을 원하면 `-oj`를 추가하십시오.
  6. 6
    (선택) GPU 가속을 활성화합니다.
    Why it matters: Apple Silicon에서는 macOS에서 기본 CMake 옵션으로 빌드하면 Metal 가속이 자동으로 사용됩니다. NVIDIA 머신에서는 CUDA 지원으로 빌드하기 위해 `cmake -B build` 단계에 `-DGGML_CUDA=ON`을 추가하십시오(CUDA 툴킷 설치 필요).
  7. 7
    (선택) 실시간 전사를 시도합니다.
    Why it matters: 스트리밍 예제를 빌드하고 `./build/bin/whisper-stream -m models/ggml-base.en.bin`을 실행하여 고정된 파일 대신 실시간 마이크 오디오를 지속적으로 전사합니다.

실제 사용 예시

위의 기본 설치 가이드 외에, 다음은 실제로 자주 사용되는 whisper-cli 바이너리 호출 예시입니다.

  • pywhispercpp는 whisper.cpp의 Python 바인딩을 제공하여, Metal/CUDA 가속을 활용하면서도 파일마다 CLI 바이너리를 호출하는 대신 Python 코드에서 호출하려는 팀에 적합합니다.
  • whisper.cpp에는 작은 로컬 HTTP 서버 예제(whisper-server)도 포함되어 있어, 파일마다 CLI를 호출하는 대신 HTTP를 통해 오디오를 전송하려는 팀에 유용합니다 — Python 의존성 없이 기존 서비스에 whisper.cpp를 통합하는 데 도움이 됩니다.
bash
# 오디오 파일을 일반 텍스트로 전사(기본 출력)
./build/bin/whisper-cli -m models/ggml-base.en.bin -f interview.wav

# 더 크고 정확한 모델을 사용해 전사하고 SRT 자막을 출력
./build/bin/whisper-cli -m models/ggml-large-v3.bin -f lecture.wav -osrt

# 비영어권 음성을 영어 텍스트로 직접 번역
./build/bin/whisper-cli -m models/ggml-medium.bin -f french-audio.wav -tr

# 특정 GPU 선택(다중 GPU 머신)
./build/bin/whisper-cli -m models/ggml-large-v3.bin -f audio.wav -g 0

# 기본 마이크로부터 실시간 전사
./build/bin/whisper-stream -m models/ggml-base.en.bin -t 8

라이선스와 비용

whisper.cpp는 MIT 라이선스로 배포됩니다. 공식 저장소의 라이선스 파일은 클로즈드 소스 및 상업 제품을 포함해 무료로 사용, 수정, 재배포하는 것을 허용하며, 로열티가 없고 라이선스 고지를 유지하는 것 외에 별도의 저작권 표시 의무도 없습니다.

whisper.cpp 자체에는 유료 등급, 구독, 라이선스 비용이 전혀 없습니다. 실제 비용은 실행할 하드웨어(또는 호스팅을 선택할 경우 클라우드 VM)와, 그 위에 제품을 구축할 경우 자신의 개발 시간뿐입니다. 사용량 측정, API 키, 벤더 종속도 없습니다.

기반이 되는 Whisper 모델 가중치 또한 OpenAI가 별도로 MIT 라이선스로 공개했으므로, 실행 환경(whisper.cpp)과 그것이 불러오는 모델 가중치 모두 상업적 사용에 대해 관대한 라이선스를 갖습니다.

whisper.cpp는 상업적으로 무료로 사용할 수 있습니까?

네. whisper.cpp는 MIT 라이선스이며, 사용하는 Whisper 모델 가중치도 OpenAI에 의해 MIT 라이선스로 공개되어 있습니다. 둘 다 비용 없이 상업적 사용, 수정, 재배포를 허용합니다.

whisper.cpp가 적합하지 않은 용도

whisper.cpp는 전사 실행 환경이지, 완전한 대화형 AI나 화자 분리 제품이 아닙니다. 다음과 같은 상황에서는 적합한 도구가 아닙니다.

  • 화자 분리("누가 무엇을 말했는가"). whisper.cpp는 말한 내용을 전사하지만, 여러 사람이 등장하는 녹음에서 서로 다른 화자를 기본적으로 분리하거나 표시하지 않습니다. 화자 분리를 위해서는 (예를 들어 whisper.cpp의 전사 결과를 화자 분리 도구와 결합하는 등) 별도의 모델이나 파이프라인을 추가로 얹어야 합니다.
  • 대규모 환경에서 100밀리초 미만의 스트리밍 지연. 내장된 whisper-stream 예제는 한 대의 머신에서 하나의 실시간 마이크에는 잘 작동하지만, whisper.cpp는 다수의 동시 사용자를 위해 전용 실시간 음성 API가 설계되는 것과 같은, 특별히 설계되어 수평적으로 확장되는 실시간 음성 인식 서비스는 아닙니다.
  • 비기술 사용자를 위한 제로 설정. whisper.cpp는 대부분의 사용자가 소스에서 빌드하거나 컴파일된 바이너리로 받는 명령줄 도구입니다 — 비개발자를 위한 정교한 그래픽 설치 프로그램이나 앱스토어 등록이 없습니다. 원클릭 전사 앱을 원하는 사용자는 대신 whisper.cpp 기반의 그래픽 애플리케이션이나 호스팅형 전사 서비스를 찾아야 합니다.
  • Python 우선 파이프라인에서 NVIDIA GPU의 마지막 성능까지 뽑아내는 것. 가장 큰 모델과 NVIDIA 하드웨어에서, PromptQuorum의 벤치마크는 faster-whisper의 CTranslate2 백엔드가 whisper.cpp의 CUDA 경로보다 더 빠르고 VRAM을 덜 사용한다는 것을 확인했습니다 — 배포 환경이 이미 NVIDIA GPU 위의 Python 서비스라면, faster-whisper가 보통 더 나은 선택입니다.

whisper.cpp의 대안

faster-whisper

가장 적합한 경우:
NVIDIA GPU 위의 Python 파이프라인 — CTranslate2 백엔드, 원본 Whisper 대비 약 4배의 처리량
라이선스:
MIT

WhisperX

가장 적합한 경우:
Whisper 전사 결과에 더해 단어 단위 타임스탬프와 화자 분리가 필요할 때
라이선스:
BSD-2-Clause

OpenAI Whisper API

가장 적합한 경우:
셀프 호스팅보다 사용량 기반 요금의 관리형 클라우드 API를 선호하는 팀
라이선스:
독점(유료 API)

Vosk

가장 적합한 경우:
Whisper 수준의 정확도보다 작은 용량이 중요한, 자원이 매우 제한적인 오프라인 기기
라이선스:
Apache-2.0

자주 묻는 질문

whisper.cpp란 무엇입니까?

whisper.cpp는 Georgi Gerganov가 개발한 무료 MIT 라이선스 C/C++ 재구현체로, OpenAI의 음성 인식 모델 Whisper를 기반으로 하며 Python 런타임 없이 로컬에서 전사를 실행합니다.

whisper.cpp는 무료입니까?

네. whisper.cpp는 MIT 라이선스이며, 유료 등급, 구독, 사용료가 없습니다. 사용하는 Whisper 모델 가중치도 OpenAI에 의해 MIT 라이선스로 공개되어 있습니다.

whisper.cpp를 실행하는 데 GPU가 필요합니까?

아니요. whisper.cpp는 AVX2(x86) 또는 NEON(ARM) 최적화를 사용해 CPU에서 동작하며, tiny나 base 같은 작은 모델은 Raspberry Pi를 포함한 CPU 전용 하드웨어에서도 실시간으로 무리 없이 동작합니다. GPU(Apple Metal, NVIDIA CUDA, Vulkan)는 large-v3 같은 더 큰 모델을 가속하지만 필수는 아닙니다.

whisper.cpp는 실시간 전사를 지원합니까?

네, whisper-stream 예제를 통해 실시간 마이크 오디오를 캡처하여 지속적으로 전사할 수 있습니다. 지연 시간은 모델 크기와 하드웨어에 따라 다르며, 빠른 CPU나 GPU에서 실행되는 작은 모델일수록 실시간에 가장 가깝습니다.

whisper.cpp와 faster-whisper의 차이는 무엇입니까?

whisper.cpp는 Python 의존성이 없는 순수 C/C++ 구현으로, CPU, Apple Metal, CUDA, 임베디드 기기 간 이식성을 위해 만들어졌습니다. faster-whisper는 CTranslate2를 기반으로 한 Python 라이브러리로, Python 파이프라인 내에서 NVIDIA GPU 처리량을 최적화하는 데 주로 초점을 맞춥니다. 플랫폼별 구체적인 수치는 PromptQuorum의 상세 비교를 참고하십시오.

whisper.cpp는 Raspberry Pi에서 실행할 수 있습니까?

네. whisper.cpp의 ARM NEON 최적화 덕분에 tiny와 base 모델은 Raspberry Pi 5의 CPU에서 실시간으로 동작합니다. 이 프로젝트는 설치해야 할 Python이나 CUDA 의존성이 전혀 없기 때문입니다.

whisper.cpp는 오디오를 영어로 번역합니까?

네. whisper-cli-tr(번역) 플래그를 전달하면 비영어권 음성을 전사하고, 다국어 Whisper 모델에 내장된 번역 기능을 사용해 곧바로 영어 텍스트로 번역합니다.

whisper.cpp는 현재 누가 관리합니까?

이 프로젝트는 원래 개발자인 Georgi Gerganov가 설립한 GitHub의 ggml-org 조직에서 관리하며, 수백 명의 커뮤니티 개발자가 기여하고 있습니다. 여전히 활발히 배포되고 있으며, v1.9.3이 2026년 8월 20일에 공개되었습니다.

whisper.cpp는 녹음 속 서로 다른 화자를 분리합니까?

기본적으로는 분리하지 않습니다. whisper.cpp는 음성을 텍스트로 전사하지만 자체적으로 화자 분리를 수행하지는 않습니다. "누가 무엇을 말했는가"가 필요하다면 전용 화자 분리 도구와 결합하거나, Whisper 전사 결과 위에 화자 분리를 추가하는 WhisperX를 사용하십시오.

결론

whisper.cpp는 목표한 바를 정확히 달성했습니다. Python, CUDA, 무거운 런타임 없이도 C/C++를 컴파일할 수 있는 모든 기기에 OpenAI의 Whisper 음성 인식 모델을 가져다주는 것입니다. Raspberry Pi부터 Apple Silicon Mac, Vulkan 지원 GPU까지 수정 없이 동작하는 이 이식성은 로컬·오프라인 전사 분야에서 가까운 무료 대안을 찾기 어려우며, MIT 라이선스 덕분에 상업 제품에 안전하게 기반으로 삼을 수 있습니다. 무료이고 잘 유지보수되며, 원본 Whisper와 동일한 모델 가중치를 사용하므로 주어진 모델 크기에서의 정확도는 OpenAI가 공개한 것과 일치합니다. 가장 강력한 선택이 아닌 경우는 최대 처리량을 추구하는 Python 우선, NVIDIA GPU 전용 파이프라인인데, 이 경우 PromptQuorum의 직접 비교가 보여주듯 faster-whisper의 CTranslate2 백엔드가 우세합니다. 그 외 모든 경우 — 임베디드 하드웨어, Apple Silicon, 크로스 플랫폼 앱을 대상으로 하는 개발자, 또는 Python 환경 대신 단일 독립 실행형 바이너리를 원하는 누구에게나 — whisper.cpp는 충분히 검증되고 비용이 들지 않는 좋은 출발점입니다.

출처

← 고급 로컬 LLM으로 돌아가기