ggml-org/whisper.cpp
Port of OpenAI's Whisper model in C/C++
해결하는 문제
whisper.cpp는 OpenAI의 자동 음성 인식(ASR) 모델인 Whisper의 고성능이고 가벼운 구현체입니다. 무거운 종속성 없이 다양한 하드웨어 플랫폼에서 효율적이고 오프라인, 디바이스 내에서 오디오를 텍스트로 변환할 수 있게 해줍니다.
작동 방식
순수 C/C++로 구현된 이 프로젝트는 추론 처리에 ggml 머신러닝 라이브러리를 사용합니다. ARM NEON 및 AVX와 같은 하드웨어 고유의 인스트럭션을 활용해 성능을 최적화하며, NVIDIA GPU(CUDA), AMD GPU(ROCm/HIP), Vulkan, Apple Silicon(Metal/Core ML), 그리고 다양한 NPU(AMD Ryzen AI, Ascend, OpenVINO)를 포함한 광범위한 가속기들을 지원합니다. 또한 정수 양자화를 지원하여 메모리와 디스크 사용량을 줄일 수 있습니다.
대상 사용자
로컬, 오프라인, 또는 자원 제약이 있는 디바이스(예: iPhone, 안드로이드 폰, 라즈베리파이, WebAssembly 환경)에서 작동하는 애플리케이션에 고품질 음성-텍스트 변환 기능을 통합하고자 하는 개발자들을 위한 것입니다.
주요 특징
- 의존성 없는 C/C++ 구현체: 기존 소프트웨어에 쉽게 포팅하고 통합할 수 있습니다.
- 광범위한 하드웨어 가속: CUDA, ROCm, Metal, Vulkan, 여러 NPU 아키텍처를 네이티브로 지원합니다.
- 극도의 포터블성: macOS, iOS, Android, Linux, Windows, FreeBSD, WebAssembly에서 실행 가능합니다.
- 메모리 효율성 뛰어남: 정수 양자화를 지원하며 런타임 시 메모리 할당을 0으로 유지합니다.
관련
- 프로젝트
openai/whisperWhisper는 OpenAI의 오픈 소스 트랜스포머 기반 음성-텍스트 변환 시스템으로, 다양한 언어에 대해 전사, 언어 식별 및 번역을 처리합니다. 6가지 모델 크기(tiny → large, 그리고 빠른 "turbo" 변체)를 갖춘 pip 설치 가능 패키지로 제공됩니다. CLI (`whisper …`)와 간단한 Python API (`whisper.load_model(...).transcribe(...)`)를 사용하면 몇 가지 명령만으로 오디오 파일을 텍스트로 변환할 수 있습니다. 이 프로젝트는 Python 3.8-3.11, PyTorch에서 실행되며 ffmpeg(및 선택적으로 토크나이저용 Rust)가 필요합니다. 모든 코드와 모델 가중치는 MIT 라이선스입니다.
- 프로젝트
sandrohanea/whisper.netWhisper.net은 OpenAI의 Whisper(및 Parakeet) 음성-텍스트 모델에 대한 .NET 바인딩을 제공하며, CPU, CUDA, CoreML, OpenVINO, Vulkan 등 다양한 런타임을 간단한 NuGet 패키지를 통해 크로스 플랫폼 전사에 사용할 수 있게 합니다.
- 프로젝트
0xShug0/audio.cppaudio.cpp는 ggml 기반으로 구축된 네이티브 C++ 추론 프레임워크로, 수십 개의 최신 오디오 AI 모델(TTS, ASR, 음성 변환, 음악 생성 등)을 CPU, CUDA, AMD 또는 Apple Silicon 하드웨어에서 로컬로 실행합니다. 단일 CLI, HTTP 서버 및 웹 UI를 제공하며, 속도와 낮은 VRAM을 위해 양자화된 GGUF 패키지를 지원하고, 엔드투엔드 오디오 워크플로우를 위한 DSP 유틸리티를 번들로 제공합니다.
- 프로젝트
OpenWhispr/openwhispr로컬 AI 받아쓰기, 화자 분리 기능을 갖춘 회의 녹취, AI 기반 메모 기능을 제공하는 개인정보 보호 중심의 오픈 소스 음성-텍스트 변환 애플리케이션입니다.
- 프로젝트
mybigday/whisper.rnwhisper.rn은 OpenAI의 Whisper(및 NVIDIA Parakeet) 음성-텍스트 모델을 iOS와 Android에 제공하는 React Native 라이브러리입니다. 미리 빌드된 네이티브 바이너리를 제공하고, Core ML, GPU, Snapdragon Hexagon NPU 가속을 지원하며, 내장 VAD와 실시간 전사 API를 제공합니다. 모두 JavaScript에서 오프라인으로 사용할 수 있습니다.