150分の音声をたった98秒で文字起こし!爆速Whisper体験 — insanely-fast-whisper

Vaibhavs10/insanely-fast-whisperJupyter Notebook12.0k

insanely-fast-whisperは、OpenAIの音声認識AI「Whisper」を自分のパソコン上で驚異的な速さで動かせるコマンドラインツールです。通常なら30分以上かかる2.5時間分の音声の文字起こしを、わずか約1分半で完了できます。Hugging Face社のTransformersライブラリとFlash Attention 2という高速化技術を組み合わせることで、この圧倒的なスピードを実現しています。NVIDIA製のGPU(グラフィック処理装置)やApple Silicon搭載のMacを持っている人なら、ターミナル(黒い画面)からコマンド1つで簡単に使い始められます。動画制作者、ポッドキャスト配信者、議事録作成が必要なビジネスパーソンなど、大量の音声を素早くテキスト化したい人に最適なツールです。

🔥 なぜ話題?

AIによる音声認識の精度が飛躍的に向上した今、次の課題は「速度」であり、insanely-fast-whisperは150分の音声を98秒で処理するという衝撃的なベンチマークを示したことで注目を集めています。特にクラウドAPIに頼らずローカル環境で高速処理できる点が、コスト面やプライバシー面を重視するユーザーから支持されています。

💡 こう使える!

例えば、2時間の社内会議を録音したファイルがあるとき、insanely-fast-whisperにそのファイルを渡すだけで、約2分足らずで全文の文字起こしがJSON形式で保存されます。さらに話者分離(ダイアライゼーション)機能を使えば、「Aさんの発言」「Bさんの発言」と誰が話したかも自動で分けてくれるので、議事録作成の手間が大幅に減ります。

ユースケース: 会議の録音やポッドキャスト、YouTube動画などの音声を素早くテキストに変換したいときに使うツール

  • 150分の音声をわずか約98秒で文字起こし可能(Nvidia A100使用時)
  • コマンド1つで使えるシンプルなCLIツール
  • 話者分離(誰が話したか識別する機能)にも対応
  • NVIDIA GPUとMac(Apple Silicon)の両方で動作
  • Flash Attention 2による最大15倍以上の高速化

技術情報

言語

Jupyter Notebook

ライセンス

Apache-2.0

最終更新

2025-10-25

スター数

11,987

フォーク数

856

Issue数

112

技術詳細

アーキテクチャ・仕組み

insanely-fast-whisperは以下の技術スタックを組み合わせて高速化を実現しています:

  • Hugging Face Transformers: Whisperモデルの推論基盤
  • Optimum / BetterTransformer: Transformerモデルの最適化
  • Flash Attention 2: アテンション計算を高速化するアルゴリズム
  • バッチ処理: 音声を分割し並列処理(デフォルトバッチサイズ: 24)
  • fp16(半精度浮動小数点): メモリ使用量を半減しつつ高速化

ベンチマーク(Nvidia A100 - 80GB)

構成150分の音声の処理時間
large-v3 (fp32)約31分
large-v3 (fp16 + batching + BetterTransformer)約5分
large-v3 (fp16 + batching + Flash Attention 2)約1分38秒
distil-large-v2 (fp16 + batching + Flash Attention 2)約1分18秒
large-v2 (Faster Whisper, fp16)約9分23秒

Google Colab T4 GPU向けのベンチマークも提供されています。

対応環境

  • GPU: NVIDIA CUDA対応GPU、Apple Silicon Mac(MPSバックエンド)
  • OS: Linux、macOS(Windowsはtorchの手動インストールが必要な場合あり)
  • Python: 3.11系ではpipxの互換性問題あり(--ignore-requires-pythonで回避可能)

主要機能

  • 文字起こし(transcribe): 音声をそのままの言語でテキスト化
  • 翻訳(translate): 他言語への翻訳付き文字起こし
  • タイムスタンプ: チャンク単位・単語単位の2種類に対応
  • 話者分離(diarization): pyannote.audioモデルを使った話者識別(Hugging Faceトークンが必要)
  • 話者数指定: 正確な話者数、最小/最大話者数の指定が可能
  • モデル選択: whisper-large-v3(デフォルト)、distil-whisperなど任意のモデルを指定可能
  • 入力形式: ローカルファイルパスおよびURLに対応

制約・注意点

  • MPSバックエンド(Mac)はCUDAほど最適化されておらず、メモリ消費が多い(--batch-size 4推奨、約12GB VRAM使用)
  • Flash Attention 2はNVIDIA GPU専用
  • Windows環境ではTorch not compiled with CUDA enabledエラーが発生する場合があり、torchの手動インストールが必要
  • 出力形式はJSON(デフォルト: output.json

CLIなしでのPython利用

import torch
from transformers import pipeline

pipe = pipeline(
    "automatic-speech-recognition",
    model="openai/whisper-large-v3",
    torch_dtype=torch.float16,
    device="cuda:0",
)

outputs = pipe(
    "<FILE_NAME>",
    chunk_length_s=30,
    batch_size=24,
    return_timestamps=True,
)

ライセンス・コミュニティ

コミュニティ主導のプロジェクトであり、ユーザーの要望に基づいて機能追加が行われています。関連プロジェクトとして、NextJS + Modalを使ったWebアプリ「Shush」やwhisper-plusパッケージなどが派生しています。

インストール・クイックスタート

インストール手順

  1. pipx をインストール(まだ入っていない場合):
pip install pipx
# または macOS の場合
brew install pipx
  1. insanely-fast-whisper をインストール:
pipx install insanely-fast-whisper

⚠️ Python 3.11系の場合は以下のコマンドを使用:

pipx install insanely-fast-whisper --force --pip-args="--ignore-requires-python"
  1. Flash Attention 2 を使いたい場合:
pipx runpip insanely-fast-whisper install flash-attn --no-build-isolation

基本的な使い方

# 音声ファイルを文字起こし
insanely-fast-whisper --file-name <ファイルパスまたはURL>

# Macの場合はデバイス指定が必要
insanely-fast-whisper --file-name <ファイル名> --device-id mps

# Flash Attention 2で高速化
insanely-fast-whisper --file-name <ファイル名> --flash True

過去のトレンド履歴

関連リポジトリ

文章から絵を描くAI画家!テキスト一行で美麗イラストを自動生成 — stable-diffusion

CompVis/stable-diffusionJupyter Notebook72.5k

Stable Diffusionは、文章を入力するだけで高品質な画像を自動生成するAIツールです。「猫が宇宙を飛んでいる絵」のように日本語で説明すると、そのイメージ通りの絵をコンピューターが描いてくれ

Claudeを使い倒すための公式レシピ集!分類・要約・画像認識からツール連携まで — claude-cookbooks

anthropics/claude-cookbooksJupyter Notebook40.5k

claude-cookbooksは、AI「Claude」を使ったさまざまな活用法をコード付きで紹介する公式レシピ集です。テキスト分類、文章要約、画像の読み取り、外部ツールとの連携など、すぐにコピーして

AIへの「話しかけ方」を基礎から実践まで学べる公式チュートリアル — prompt-eng-interactive-tutorial

anthropics/prompt-eng-interactive-tutorialJupyter Notebook31.9k

prompt-eng-interactive-tutorialは、Anthropic社が提供するAIアシスタント「Claude」への指示の出し方(プロンプトエンジニアリング)を体系的に学べるインタラク

ChatGPTを賢くする技術集!情報検索×AI生成で正確な回答を実現 — RAG_Techniques

NirDiamant/RAG_TechniquesJupyter Notebook25.4k

RAG_TechniquesはAIチャットボットをもっと賢くするための技術集です。RAG(情報検索×AI生成の仕組み)の様々な手法を実際に試せるコード付きで紹介しています。ChatGPTのようなAIが

300点の図解で学ぶ!プログラマーでも挫折しないLLM入門書の完全ガイド — Hands-On-Large-Language-Models

HandsOnLLM/Hands-On-Large-Language-ModelsJupyter Notebook22.7k

Hands-On-Large-Language-Modelsは、O'Reilly出版の書籍「Hands-On Large Language Models」の公式コードリポジトリです。ChatGPTのよ