WhisperX
WhisperX

WhisperX

WhisperXは、faster-whisperのバッチ文字起こしに言語別の単語強制アラインメントと任意のpyannote話者分離を加える長時間音声向けOSSパイプラインです。

96

Views

0

Likes

Jan 2026

Added

github.com

プロジェクトリンク

Tags

WhisperXspeech alignmentspeaker diarizationlong-form ASR

Product Preview

A quick visual look at WhisperX before you visit the official site.

Published 1/21/2026
WhisperX screenshot

Editorial Review

About WhisperX

WhisperX は、Max Bain とコミュニティが保守する長時間音声向けのオープンソース処理パイプラインです。音声区間検出、faster-whisper/CTranslate2 によるバッチ文字起こし、言語別の強制アラインメント、任意の pyannote 話者ダイアライゼーションを組み合わせます。価値は単なる「高速な Whisper」ではなく、単語に細かな時刻を与え、匿名話者ラベルを語や区間へ割り当てる点にあります。各工程は別モデルで、別の誤りを持ちます。

WhisperX は Whisper を新しい万能 ASR に置き換えません。VAD で分割し、faster-whisper で認識し、音素モデルで認識済みテキストを音声へ戻して整列し、必要なら話者区間と統合します。誤認識は時刻が細かくても正しくなりません。数字、記号、混在文字がアラインモデルの辞書にないと時刻は欠落または補間になります。発話が重なる場面では、整った SPEAKER_00 表示も誤り得ます。

VAD、バッチ文字起こし、強制アラインメント、話者分離、品質確認からなるWhisperX本番フロー
WhisperX公式README、論文、現行コードを根拠にした図。文字、単語時刻、話者割当を別々に検証します。

WhisperX が Whisper に追加する工程

工程実装価値失敗境界
音声区間pyannote/Silero VAD と Cut & Merge発話部分をバッチ化小声を切る、別ターンを結合
文字起こしfaster-whisper/CTranslate2バッチと量子化上流 Whisper とデコード差
強制整列言語別 wav2vec2/音素 ASR単語を細かな時刻へ対応文字、数字、記号、言語モデルで失敗
話者分離pyannote.audio Community-1匿名話者IDを割当重複、短ターン、似た声に弱く実名ではない
出力SRT/VTT/TSV/TXT/JSON字幕と後処理改行、読速度、内容は人が確認

原論文は長時間音声の三問題を扱います。Whisper のバッファ/スライド処理はドリフト、反復、幻覚を起こし得ること、逐次デコードは単純なバッチ化を妨げること、発話単位の時刻は編集に粗いことです。VAD Cut & Merge はバッチ推論を可能にし、音素強制整列は認識後に単語時刻を追加します。論文の速度・精度値は特定のモデル、データ、GPU条件の結果なので、現行版に普遍的な倍率や WER として転記しません。

保守状況と依存関係

プロジェクトは保守中です。確認時の最新安定リリースは v3.8.6、main のメタデータは 3.8.7rc1 でした。近年のリリースは整列不能文字の単語時刻、進捗コールバック、Torch/TorchCodec互換性を修正しています。活発さの証拠である一方、mainを毎回直接インストールせず、検証済みリリースとモデルを固定すべき理由でもあります。

依存境界現行要件運用への影響
Python3.10以上3.14未満分離環境が必要
ASRfaster-whisper≥1.2、CTranslate2≥4.5CUDA、変換、デコード差を回帰
PyTorchTorch/Torchaudio約2.8GPU wheel、ドライバ、CUDAを一致
話者分離pyannote.audio≥4TorchCodec、ゲートモデル、別モデル管理
ライセンスWhisperX BSD-2、モデルは別条件通知と利用条件を個別保存

導入と制御された初回実行

python -m venv .venv
source .venv/bin/activate
pip install whisperx
whisperx meeting.wav --model large-v2 --batch_size 4 --output_format json
whisperx meeting.wav --diarize --hf_token "$HF_TOKEN"

README は通常利用に PyPI 安定版を推奨し、開発版には実験的変更とバグがあり得ると明記します。GPU手順は現在CUDA 12.8です。CPUは --device cpu --compute_type int8 で動かせますが、速度と品質を実測してください。GPUメモリ不足ではまずbatchを下げ、その後に小モデルやint8を比較します。後二つは認識を変え得ます。Hugging Face tokenは門付き話者モデルの取得用で、履歴、コード、出力へ残してはいけません。

長時間音声の本番手順

  1. 録音と転記の同意を得る。目的、取得元、保持、閲覧者を記録します。
  2. 原本を保存する。一定条件で作業コピーをデコードし、モノラル化前のチャンネルを残します。
  3. 非公開評価セットを作る。無音、雑音、音楽、重複、割込み、固有名詞、数値、言語切替、最大尺を含めます。
  4. スタック全体を固定する。WhisperX、faster-whisper、ASR、整列、VAD、pyannote、Torch/CUDA、compute typeを記録します。
  5. VADとbatchを調整する。欠落した小声、誤検出、GPUメモリ、実時間係数を同時に測ります。
  6. 整列前のASRを残す。整列失敗で元の仮説を失わないようにします。
  7. 整列の例外を明示する。真の整列、補間、未整列を区別し、長尺の先頭・中間・末尾を点検します。
  8. 必要な場合だけ話者分離する。tokenは安全に使い、人数が既知なら範囲を指定し、重複と短い割込みを確認します。
  9. 公開ゲートを通す。名前、数字、否定、幻覚、時刻、話者切替、字幕可読性を確認します。
  10. manifestと共に出力する。JSON、SRT/VTT、モデル設定、レビュー状態、削除日を保存します。

対応言語とアラインメント失敗

強制整列には言語別モデルが必要です。READMEは英・仏・独・西・伊のtorchaudio標準パイプラインを挙げ、さらに DEFAULT_ALIGN_MODELS_HF に多数のHugging Faceマッピングがあります。検出言語が表にない場合は、音素ASRを --align_model で指定し、対象音声で検証します。Whisperが言語を転記できても、WhisperXが全単語を整列できるとは限りません。

数字、通貨、記号、混在スクリプト、コードスイッチ、特殊綴りは辞書外になり得ます。最近の修正で時刻処理は改善しましたが、nearest/linear補間は便利な推定であって音響的に整列した証拠ではありません。ignoreは欠落を残します。下流データに aligned/interpolated を保持し、全時刻を同じ確度に見せないでください。

ケースリスク確認
数値・通貨文字表現が辞書外年、価格、日付、単位を個別確認
言語切替単一整列モデルが両文字を覆わない言語区間で分けるか検証済みモデル
固有名詞ASR綴りと音素辞書の不一致人手正解で文字と時刻を採点
音楽・無音VADとASRが発話判定で不一致誤発話と幻覚を標識
重複発話三工程が同時に劣化重複例を多く入れ不明話者を許す
短い割込み語と話者区間の重なり不足割込み境界を人が確認

pyannoteのアクセス、ライセンス、意味

現行CLIの既定は pyannote/speaker-diarization-community-1 です。利用者は門付き条件に同意しHugging Face access tokenを作ります。モデルカードはCommunity-1をCC-BY-4.0とし、ディスクへ取得後のローカル・オフライン利用を説明します。これはWhisperXのBSD-2-ClauseやWhisper/faster-whisperとは別の条件です。

Diarizationは『どの匿名クラスタがいつ話すか』を推定し、実名を識別しません。SPEAKER_00はファイル間で入れ替わり、一人を二つに分け、似た声を統合し得ます。min/max人数は制約であって正解保証ではありません。重なり発話は公式の制限です。法律、研究、通話品質、臨床記録では原音を保持し、話者割当を再確認可能なメタデータとして扱います。

隣接する選択肢との比較

選択肢適する場合主な代償
WhisperX長尺にbatch、単語整列、任意のローカル話者ID複数モデル依存と複合誤り
OpenAI Whisper上流Python基準と単純な挙動粗い時刻、標準話者分離/長尺batchなし
faster-whisperCTranslate2転記スループットのみ必要整列/話者を別途追加
whisper.cppC/C++、CPU、Apple Silicon、edge/offline別の展開系でWhisperX工程は標準でない
ホステッドAPI運用、スケール、現行モデルを委託データ外送、課金、時刻/話者機能差

独立判断:WhisperXはASR後工程であり、精度を自動的に上げるスイッチではありません。単語時刻と匿名話者が編集時間を大きく減らすときに有効です。普通の文字だけで十分、言語に検証済み整列器がない、重複発話が中心、またはPython/Torch/CUDA/モデル行列を保守できないなら、faster-whisper、上流Whisper、whisper.cpp、APIの方が運用上堅実です。

よくある質問

Whisperとは別の音声モデルですか?

通常の意味では違います。faster-whisperでWhisper系を使い、VAD、強制整列、任意のpyannoteを加えます。

単語時刻は必ず正確ですか?

いいえ。辞書外文字、数字、記号、混在文字、言語不一致で失敗し、補間は推定です。

話者の実名が分かりますか?

分かりません。SPEAKER_00等の匿名クラスタで、実在人物との対応には別の証拠が必要です。

HF tokenは必須ですか?

基本転記には不要です。既定pyannoteモデル取得には条件同意とtokenが必要で、秘密として扱います。

オフラインで動きますか?

全ASR・整列・話者モデルを取得後は可能です。ただしアプリ通信、ログ、キャッシュ、出力も確認します。

なぜGPUメモリ不足になりますか?

batch、ASR、compute type、整列、話者モデルが資源を使います。まずbatchを下げ、品質を測りながら小モデル/int8を検討します。

重複話者に信頼できますか?

真値にはできません。公式に重複と不完全なdiarizationが制限として挙げられています。

どの言語を整列できますか?

torchaudio標準とalignment.pyのHFマッピングがあります。ない場合は音素モデルを検証するか透明に整列を省略します。

確認した情報源

独立技術レビュー:2026-08-20。版、依存、モデルアクセス、言語表は変わります。固定した一次情報と私有評価を確認してください。

WhisperX の公式資料を確認

公式リポジトリ、文書、モデル資料を開きます。

公式資料を見る

Quick Info

プロジェクトリンク
github.com
Category
音声認識
Added
1/21/2026
Published
1/21/2026
Updated
9/7/2026

Share This Tool

Have an AI tool to share?

Submit it to AI Dreamhub

Get your product in front of people actively exploring AI tools.

Submit Your Tool
Whisper

Whisper

Whisper は OpenAI が MIT ライセンスで公開する多言語音声認識モデルと Python 参照実装で、ローカル文字起こしと言語識別、英語への音声翻訳に対応します。

Whisper音声認識ローカル文字起こし
1010
Whisper.cpp

Whisper.cpp

Whisper.cpp は、ローカルの文字起こし、翻訳、ストリーミング、サーバー、組み込みアプリ向けの OpenAI Whisper の依存関係の少ない C/C++ 実装です。このガイドでは、モデル、量子化、バックエンド、精度、プライバシー、展開について説明します。

speech-recognitionfree
910
Buzz

Buzz

Buzz は、macOS、Windows、Linux 上でローカルの Whisper 文字起こし、字幕、ライブ キャプション、翻訳、話者ラベル付けを行うための MIT ライセンスの無料デスクトップ アプリです。このガイドでは、バックエンド、ハードウェア、プライバシー、精度テスト、字幕 QA、CLI 自動化、およびクラウド代替手段を比較します。

BuzzBuzz Captionsオフライン文字起こし
23630
WhisperDesktop

WhisperDesktop

WhisperDesktop は、オーディオ、ビデオ、およびマイク入力でローカルに OpenAI Whisper を実行するための Windows デスクトップ アプリおよび DirectCompute 実装です。このガイドでは、セットアップ、モデル、GPU、字幕、プライバシー、および代替手段について説明します。

WhisperDesktopOpenAI Whisperspeech recognition
2450