こんにちは、パレイド技術部の夏目です。
(2026-06-08 更新)large-v3-turbo に触れ、高速化シリーズに MLX 編(③)を追記しました。
Whisperをローカルで動かして「少し遅い」と感じたら、次に試すべきはfaster-whisper。
これはOpenAI公式のopenai-whisperを高速化したCTranslate2ベースのPython実装です。
CPUでもGPUでも動作し、Apple Silicon(M1/M2/M3)では約2〜3倍の速度が出ることもあります。
本記事では、Mac上での導入から実行、モデルと精度の選び方までを最短で解説します。
faster-whisperとは(概要)
faster-whisper は Whisperを軽量化したPython実装で、
内部で CTranslate2 という高速推論エンジンを使用しています。
- 特徴
- CPU/GPU対応(Apple Silicon対応)
- モデルを軽量化・最適化して高速処理
- 量子化(int8 / float16)によりメモリ削減
- Pythonスクリプトからそのまま呼び出し可能
オリジナルのopenai-whisperに比べ、
CPUでは約2〜3倍・GPUでは最大5倍の速度差が出ることがあります。
特に長時間音声(会議録・動画など)を扱う場合に有効です。
サンプルコードで実行する
以下のサンプルを fw_transcribe.py として保存し、
ローカルの音声ファイルを引数に渡すだけで動作します。
# fw_transcribe.py
from faster_whisper import WhisperModel
import sys
MODEL_NAME = "small" # "tiny", "base", "small", "medium", "large-v3", "large-v3-turbo" など
COMPUTE_TYPE = "int8" # "int8", "int8_float16", "float16", "float32"
def main(audio_path: str):
model = WhisperModel(MODEL_NAME, compute_type=COMPUTE_TYPE)
segments, info = model.transcribe(audio_path, language="ja")
text = "".join(segment.text for segment in segments)
print(text)
if __name__ == "__main__":
if len(sys.argv) < 2:
print("Usage: python fw_transcribe.py <audio_file>")
sys.exit(1)
main(sys.argv[1])
実行例
- 処理が完了すると、標準出力に文字起こし結果が表示されます。
- 精度と速度のバランスを見ながら、
MODEL_NAMEやCOMPUTE_TYPEを変更して試せます。
# smallモデル、int8で実行
$ python fw_transcribe.py sample.wav
これはウィスパーのテスト用温性サンプルです
# smallモデル、float32で実行
$ python fw_transcribe.py sample.wav
これはウィスパーのテスト用音声サンプルです。
# mediumモデル、int8で実行
$ python fw_transcribe.py sample.wav
これはウィスパーのテスト用音声サンプルです
Sayコマンドで生成した音声をサンプルに使用しました。
最初のsmallモデル、int8では音の認識は正しいものの漢字の誤りが見られます。
より上位のモデル、またはfloat32の利用で、漢字や句読点の正確性が改善する傾向があります。
モデルサイズ別の目安(精度・速度)
Whisperは複数のモデルサイズが用意されています。
以下はMacBook Air M2での実測に基づく目安です(1分音声を処理)。
| モデル | 精度 | 処理時間(目安) | 用途 |
|---|---|---|---|
tiny |
★★☆☆☆ | 約3〜4秒 | 試用・短時間音声 |
base |
★★★☆☆ | 約5〜6秒 | ノート・議事録の要点抽出 |
small |
★★★★☆ | 約8〜10秒 | 実務下書きレベル |
medium |
★★★★★ | 約15秒〜 | 高精度・長時間処理 |
※実測はApple M2 + Python 3.11環境でのCPU実行結果。
精度は録音品質により変動します。
6. まとめ
- 導入手順:
pip install faster-whisper - 最小実行:
python fw_transcribe.py sample.m4a - 推奨設定:
MODEL_NAME="small",COMPUTE_TYPE="int8" - メリット:公式Whisperより約2〜3倍高速、軽量・安定
Whisperを使いこなす第一歩は、「動作を軽くする」こと。faster-whisperはその最短ルートです。
このあと紹介するwhisper.cpp編(ネイティブCLI)では、さらに軽量・スクリプト不要で実行できる手法を紹介します。
さらに MLX 編(③) では、Apple Silicon の GPU を直接使う高速化ルートも扱います。
4 実装の違いを実測で比較した決定版ガイドもあるので、どれを選ぶか迷ったら参照してください。
リンク集
pareido.jpMacでWhisperをインストールして音声認識を試す(ローカル実行・Apple Silicon対応) – パレイドこんにちは、パレイド技術部の夏目です。 (2026-06-08 更新)モデル表に large-v3-turbo を追加し、高速化の選択肢とし…pareido.jp
パレイドMacでWhisperを高速化②whisper.cpp編:導入・モデル(ggml)DL・CLI実行の使い方【Apple Silicon】こんにちは、パレイド技術部の夏目です。 (2026-06-08 更新)Apple Silicon での GPU/Metal 利用と現行 CLI 名(whispe…
パレイドMacでWhisperをインストールして音声認識を試す(ローカル実行・Apple Silicon対応)こんにちは、パレイド技術部の夏目です。 (2026-06-08 更新)モデル表に large-v3-turbo を追加し、高速化の選択肢として MLX 編(③)…
パレイドMac版Whisper比較ガイド【決定版】openai-whisper・faster-whisper・whisper.cpp・MLX、4実装を同条件で再計測こんにちは、パレイド技術部の夏目です。 (2026-06-09 更新)MLX-Whisper を加えた4実装を同条件で再計測し、決定版に改稿しました。 Macで…
