
Whisper のチャンクサイズ:精度とレイテンシのためのベストプラクティス
Eric King
Author
はじめに
Whisper で音声テキスト化を行うとき、適切なチャンクサイズを選ぶことは最も重要な要因のひとつです。
不適切なチャンクサイズは次を招きます。
- 文の途中で切れる
- 単語が欠ける
- 単語誤り率(WER)が上がる
- 不要なレイテンシとコスト
本ガイドでは Whisper のチャンクサイズに関するベストプラクティス を整理し、用途に応じた最適な設定の選び方を説明します。
Whisper でチャンクサイズが重要な理由
Whisper は 推論あたり最大約 30 秒の音声 を処理します。
長い音声や連続音声では、チャンク分割は避けられません。
長い音声や連続音声では、チャンク分割は避けられません。
チャンクサイズは次に直接影響します。
- 文脈の把握
- 転写精度
- レイテンシ
- システムのスループット
推奨される Whisper のチャンクサイズ
クイックリファレンス
| 用途 | チャンクサイズ | オーバーラップ |
|---|---|---|
| バッチ転写 | 20–30s | 2–3s |
| ポッドキャスト / YouTube | 25–30s | 3s |
| 会議 | 15–20s | 2s |
| 通話録音 | 10–15s | 2s |
| ストリーミング / ライブ | 2–5s | 0.5–1s |
長時間音声の転写(最高精度)
推奨設定
- チャンクサイズ: 20〜30 秒
- オーバーラップ: 2〜3 秒
効く理由:
- 文レベルの文脈を保てる
- 句読点・大文字が安定しやすい
- 文中での切断が減る
⚠️ 30 秒を超えないようにする — Whisper は音声を切り捨てることがあります。
短いチャンク:低レイテンシが優先されるとき
短いチャンクは次に向いています。
- リアルタイム字幕
- ライブ会議
- 音声アシスタント
推奨設定
- チャンクサイズ: 2〜5 秒
- オーバーラップ: 0.5〜1 秒
トレードオフ:
- フィードバックが速い
- 文脈は少ない
- バッファや再プロンプトが必要
チャンクのオーバーラップ:省略しない
オーバーラップは境界での単語欠落を防ぎます。
ベストプラクティス
- オーバーラップ ≈ チャンクサイズの 10〜15%
- 後処理で重複テキストを重複排除する
- 信頼度の高い転写を残す
例:
- チャンクサイズ: 20s
- オーバーラップ: 2s
固定長チャンクと VAD ベース
固定長チャンク
- シンプル
- 挙動が予測しやすい
❌ 文の途中で切れることがある
❌ 会話には不向き
❌ 会話には不向き
VAD ベースのチャンク(推奨)
音声活動検出を使うと:
- 無音で分割できる
- 自然な区切りになる
- 読みやすさが上がる
よく使われる VAD:
- WebRTC VAD
- Silero VAD
- pyannote.audio
音声タイプに応じた調整
ポッドキャスト・モノローグ
- 大きめのチャンク(25〜30s)
- オーバーラップは最小限
- 精度重視
会話・通話
- 中くらいのチャンク(10〜15s)
- VAD で分割
- 話者を意識したマージ
ノイズの多い音声
- 小さめのチャンク(8〜12s)
- オーバーラップを多めに
- 誤りの連鎖を抑えやすい
チャンク間のプロンプト
Whisper はチャンク間で記憶を保持しません。
連続性を高めるには:
result = model.transcribe(
chunk,
initial_prompt=previous_text
)
文脈の引き継ぎを模倣し、一貫性が改善します。
パフォーマンスとコスト
| チャンクサイズ | 精度 | レイテンシ | コスト |
|---|---|---|---|
| 2–5s | 中 | 非常に低い | 高い |
| 10–15s | 高い | 中 | 中 |
| 20–30s | 非常に高い | やや高い | 低い |
💡 チャンクを大きくすると API 呼び出しが減り、コスト効率が上がります。
よくあるチャンクサイズのミス
❌ 避けること
- どこでも最大サイズを使う
- チャンク間にオーバーラップがない
- すべての音声で同じサイズ
- 無音検出を無視する
✅ ベストプラクティス
- 用途ごとにチューニングする
- 必ずオーバーラップを使う
- テストして WER を測る
本番向けのおすすめ
多くの音声テキスト化プラットフォームでは:
- ライブプレビュー → 3〜5 秒チャンク
- 最終トランスクリプト → 20〜30 秒チャンク
- どこでも VAD + オーバーラップ
このハイブリッドで次のバランスが取れます。
- ユーザー体験
- 精度
- コスト
まとめ
Whisper に「常に最適な」単一のチャンクサイズはありません。
最適な設定は次に依存します。
- 音声の長さ
- レイテンシ要件
- 精度の期待値
- インフラコスト
これらのベストプラクティスに従うと、転写品質を大きく改善しつつ、システムを効率的かつスケーラブルに保てます。
チャンクサイズ・オーバーラップ・後処理をすでに自動で扱う本番向けソリューションが欲しい場合は、SayToWords のようなツールが役立ちます。
FAQ
Q: Whisper のチャンクの最大サイズは?
A: 推論あたりおおよそ 30 秒です。
Q: オーバーラップは本当に必要?
A: はい。境界で単語が欠けるのを防ぎます。
Q: ストリーミングとバッチで同じチャンクサイズを使うべき?
A: いいえ。ストリーミングは小さめ、バッチは大きめが向いています。
