whisper.cpp: 오프라인 디바이스에서의 고성능 OpenAI Whisper 구현 (C/C++)
whisper.cpp: 오프라인 디바이스에서의 고성능 OpenAI Whisper 구현 (C/C++)
해결하는 문제
whisper.cpp는 OpenAI의 Whisper 자동 음성 인식(ASR) 모델을 고성능이면서 가볍게 구현합니다. 사용자는 무거운 종속성이나 클라우드 기반 API 없이 완전히 오프라인, 디바이스에서 음성‑텍스트 변환을 실행할 수 있습니다.
작동 방식
이 프로젝트는 순수 C/C++로 작성되었으며 추론을 위해 ggml 머신러닝 라이브러리를 활용합니다. Apple Silicon(Metal 및 Core ML), NVIDIA GPU(CUDA), AMD GPU(ROCm), Vulkan, OpenVINO, 다양한 CPU 인트린식(AVX, NEON, VSX) 등 광범위한 하드웨어 가속을 지원해 속도를 극대화합니다.
대상 사용자
iOS, Android, Windows, Linux, macOS, WebAssembly 등 다양한 플랫폼에서 외부 서버에 의존하지 않고 고품질 음성 인식을 애플리케이션에 통합하고자 하는 개발자와 사용자.
주요 특징
- 런타임 메모리 할당 제로: 효율성과 속도를 위해 최적화됨.
- 광범위한 하드웨어 지원: 거의 모든 주요 GPU 및 NPU 아키텍처에 대한 네이티브 가속.
- 정수 양자화: 작은 디바이스를 위한 메모리 및 디스크 사용량 감소.
- 크로스 플랫폼: 고성능 GPU부터 Raspberry Pi, 모바일 폰까지 모두 실행 가능.
- 실시간 기능: 지속적인 마이크 입력 전사 예제 포함.
Sources
- undefinedggml-org/whisper.cpp