Pythonを使わずにWhisperを動かしたいなら、最適解はwhisper.cppです。
これはC/C++で書かれたネイティブ実装版のWhisperで、Apple Siliconでも高速に動作します。
依存が少なく、CLIだけで即実行可能。軽量なツールとしてラップトップやRaspberry Piでも動作します。
本記事では、Mac上での導入からモデル取得、実行までを実測に基づいて解説します。
whisper.cppとは(概要)
whisper.cpp は、OpenAI WhisperをC/C++で再実装した軽量版です。
Python不要・依存最小で、CPU最適化された推論を実現します。
- 特徴
- Mac(Apple Silicon)やLinuxでネイティブ動作
- PythonやPyTorch不要、依存が少ない
- モデルを量子化(int8など)して軽量化可能
- CLIのみで実行(スクリプト不要)
速度の目安:
同一条件でopenai-whisperの約2〜3倍、faster-whisperと同等かそれ以上。
2. モデルのダウンロード(.bin形式)
whisper.cppは実行時にモデルを自動ダウンロードしません。 事前に公式配布ページ等からダウンロードして、パスを指定する必要があります。
whisper.cppは独自形式のモデル(.bin)を使用します。
公式リポジトリまたはGitHubのリンクからダウンロードできます。
- 公式モデル配布ページ(Hugging Face): https://huggingface.co/ggerganov/whisper.cpp
- GitHub公式リポジトリ: https://github.com/ggerganov/whisper.cpp#models
2-1. ダウンロード例(baseモデル)
モデルファイルはサイズが大きいため、まずは tiny または base から試すのがおすすめです。
下記はbaseモデルを試す例です。
# 作業ディレクトリを作成
mkdir -p ~/Works/whisper_cpp && cd ~/Works/whisper_cpp
# baseモデルをダウンロード
curl -L -O https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-base.bin
# ファイル確認
ls ggml-base.bin
| モデル | サイズ | 精度 | 用途目安 |
|---|---|---|---|
| tiny | 約75MB | 速い・軽い | テスト用・短時間音声 |
| base | 約145MB | 実用最低ライン | ノート・要約 |
| small | 約500MB | 精度バランス良 | 会議・インタビュー |
| medium | 約1.5GB | 高精度 | 長時間処理向け |
| large-v3 | 約2.9GB | 最高精度 | 精密分析・研究 |
4. 速度と精度の目安(Apple Silicon実測)
MacBook Air M2(8コアCPU)での実測例:
| モデル | ファイル長(1分音声) | 処理時間 | 備考 |
|---|---|---|---|
| tiny | 約1分 | 約2秒 | 軽快。雑音に弱い |
| base | 約1分 | 約4秒 | 実用最低ライン |
| small | 約1分 | 約7秒 | 精度と速度のバランス良 |
| medium | 約1分 | 約12秒 | 長時間向け |
CPUのみでこの速度。 GPU不要で十分な性能が得られます。
Apple Siliconではwhisper.cppが最も軽快に動作します。
5. よくあるトラブルと対処
| 症状 | 原因と対処 |
|---|---|
command not found: whisper-cpp | HomebrewのPATH未登録。brew doctorで確認。 |
model file not found | .binモデルのパス指定を確認(相対パスでもOK)。 |
| 出力が空になる | 音声が短すぎる/静音。ファイル形式(WAV)を再確認。 |
| ノイズが多い/誤認識 | 入力音質を改善、またはsmall以上のモデルを利用。 |




