🏠 ホーム ニュース 📖 解説記事 📚 トピック解説 🏷️ タグ一覧 ℹ️ About
ツール
💰 API料金計算機 NEW
🔍 記事を検索
カテゴリ
📡 RSSフィード
Follow
X (Twitter) 🧵 Threads
🔧 ツール
💰API料金計算機
トピック
🧠 Claude Code 🤖 AIエージェント 🎵 AIコーディング / Vibe Coding 🔌 MCP(Model Context Protocol) 🔍 RAG & ナレッジシステム 💬 LLM / ローカルAI 🔒 セキュリティ ⚙️ DevOps & 自動化 💰 Claude API & 料金 🎨 UI生成 & デザインシステム
ニュース一覧 🏷️タグから探す
Subscribe
📡 RSSフィード
ホーム tool 2026.05.02

WhisperLiveKit完全解説:超低遅延・話者識別付きセルフホスト音声認識OSSの使い方

QuentinFuxa/WhisperLiveKit
🎙️
WhisperLiveKit完全解説:超低遅延・話者識別付きセルフホスト音声認識OSSの使い方 - AIツール日本語解説 | AI Heartland
標準のWhisperは数十秒の音声をまとめて処理する設計でリアルタイム用途に向かない。WhisperLiveKitはAlignAtt等の研究成果を取り込み、単語単位の超低遅延ストリーミングと話者識別を1パッケージで実現。クラウド依存しないオンプレ会議文字起こし基盤を構築できる。

会議の文字起こし、コールセンターのリアルタイム字幕、聴覚障害者向けアクセシビリティ——音声認識の用途は爆発的に増えているが、OpenAIのAPIに頼らずセルフホストで「ほぼ遅延なし」のWhisperを動かすのは依然として難しい。標準のWhisperは数十秒のチャンクを一括処理する設計で、リアルタイム用途では文の途中で切れる・文脈を失うといった問題を抱える。WhisperLiveKitはこの壁を、SimulStreaming(AlignAttポリシー)・LocalAgreement・話者識別(Sortformer/Diart)といった研究成果をひとまとめにしたOSSパッケージとして突破する。Apache-2.0、★10.2k、Python製、最新版v0.2.20(2026年3月)。Docker docker run 1発でリアルタイム文字起こし基盤が立ち上がる。本記事ではアーキテクチャから実運用までを徹底解説する。

この記事ではセルフホスト音声認識OSS WhisperLiveKitを解説します。LLMとローカルAI全体の文脈についてはLLMとは?仕組み・主要モデル比較・ローカル実行・量子化を一気にまとめる2026年版をご覧ください。

この記事のポイント

  • WhisperLiveKitはSimulStreaming・話者識別・200言語対応を1パッケージにまとめた音声認識OSS(Apache-2.0、★10.2k)
  • FastAPI + WebSocket構成、pip install whisperlivekit または Docker docker run で即起動
  • Apple Silicon(MLX)・CUDA・CPU・OpenAI API・Voxtralなど6種類のバックエンドから選択可能
  • OpenAI/Deepgram互換のAPIを提供し、既存システムから差し替えやすい

WhisperLiveKit demo

WhisperLiveKitとは:「実用Whisper」を再構築するOSS

WhisperLiveKitはフランスのエンジニアQuentin Fuxa氏が開発する音声認識OSSだ。OpenAIのWhisperそのものをラップするのではなく、「Whisperでリアルタイムを実現するために必要な周辺技術」を最新研究から取り込み統合している。

標準のWhisperを「そのまま」リアルタイムに使うと次の問題が起きる。

WhisperLiveKitはこれらに対し、AlignAtt(注意機構を使った超低遅延出力)LocalAgreement(連続出力の整合性確保)Streaming Sortformer/Diart(リアルタイム話者識別)を組み合わせて解決する。SimulStreamingは特に学術論文で実証されたアルゴリズムで、英語で平均1〜2秒以下の遅延を実現する。

設計思想:「研究レベルの最新リアルタイムASR技術を、pip installで誰もが使える形にまとめる」のがWhisperLiveKitの位置づけ。Whisper本体・Faster-Whisper・MLX-Whisper等の高速バックエンドを抽象化し、上位層でストリーミング制御と話者識別を提供する。

アーキテクチャ:FastAPI+WebSocketで構成される配信系

公式が提供しているアーキテクチャ図がこの構成を端的に示している。

WhisperLiveKit architecture

WhisperLiveKitは大きく3層に分かれている。

flowchart TD A["クライアント
(ブラウザ / Chrome拡張 / アプリ)"] -->|"WebSocket"| B["FastAPIサーバー
(WhisperLiveKit)"] B --> C["VAD
(音声区間検出)"] C --> D["Streaming Engine
(SimulStreaming / LocalAgreement)"] D --> E{"ASR Backend"} E --> F["MLX-Whisper
(Apple Silicon)"] E --> G["Faster-Whisper
(CUDA最適化)"] E --> H["Vanilla Whisper"] E --> I["OpenAI API"] E --> J["Voxtral Mini
(Mistral 4B)"] D --> K["話者識別
(Sortformer / Diart)"] D --> L["翻訳
(NLLB-200, 200言語)"] K --> M["WebSocket Response
(speaker_id + text)"] L --> M M --> A

入力音声はブラウザのマイクからWebSocket経由でサーバーに届き、VAD(Voice Activity Detection)で発話区間を切り出した後、ASRバックエンドが文字起こしを行う。並行して話者識別モデルが「誰が話しているか」を推定し、結果をマージしてクライアントへ返す。すべてがストリーミング処理で動くため、入力から出力までの遅延が極小化される。

6つのバックエンド:Apple Silicon・CUDA・CPU・API混在対応

WhisperLiveKitの大きな魅力はバックエンドの自由度だ。1つのフロントエンドコードに対し、状況に応じてバックエンドを切り替えられる。

バックエンド 用途 強み
MLX-Whisper Apple Silicon(M1/M2/M3) Macで最高速、消費電力低
Faster-Whisper NVIDIA GPU CUDA最適化、量子化対応
Vanilla Whisper CPU/GPU汎用 OpenAI公式実装、最大互換性
OpenAI API クラウド経由 自前GPUなしでも動作
Voxtral Mini Mistral AI製、4Bパラメータ 多言語性能、Hugging Face配布
HuggingFace Transformers カスタムモデル LoRA/独自Fine-tuning対応

開発時はOpenAI APIで素早く検証し、本番ではFaster-Whisper+A10/A100に切り替えるという運用が容易だ。Apple Silicon MacBookで開発・デモする場合はMLX-Whisperで電池の持ちと速度を両立できる。

クイックスタート:3コマンドで動かす

Docker(GPU版)

git clone https://github.com/QuentinFuxa/WhisperLiveKit.git
cd WhisperLiveKit
docker build -t wlk .
docker run --gpus all -p 8000:8000 --name wlk wlk

ブラウザでhttp://localhost:8000にアクセスすればデモUIが表示される。マイクボタンを押せばその場で文字起こしが始まる。

Docker(CPU版)

GPUがない環境ではCPU版が用意されている。

docker build -f Dockerfile.cpu -t wlk --build-arg EXTRAS="cpu" .
docker run -p 8000:8000 --name wlk wlk

pipでインストール

ローカルPython環境にインストールする場合は次のとおり。

# 基本インストール
pip install whisperlivekit

# Apple Silicon用
pip install -e ".[mlx-whisper]"

# CPU PyTorch
pip install -e ".[cpu]"

# CUDA 12.9
pip install -e ".[cu129]"

# 翻訳機能(NLLB-200)追加
pip install -e ".[translation]"

# 話者識別(Sortformer)追加
pip install -e ".[diarization-sortformer]"

サーバー起動はCLIで一発。

# 英語、baseモデル
wlk --model base --language en

# 日本語、large-v3モデル
wlk --model large-v3 --language ja

# 自動言語検出+話者識別+ホスト公開
wlk --model medium --diarization --host 0.0.0.0 --port 8000

CLI機能:文字起こし・モデル管理・ベンチマークが揃う

WhisperLiveKitは単なるサーバーではなく、Ollamaライクな運用CLIを備える。

ファイルからの文字起こし

# 単純な文字起こし
wlk transcribe meeting.wav

# SRT字幕として出力
wlk transcribe --format srt podcast.mp3 -o podcast.srt

# 話者識別付き
wlk transcribe --diarization interview.m4a -o interview.txt

モデル管理

# インストール済みモデル一覧
wlk models

# モデルのダウンロード
wlk pull large-v3

# モデルの削除
wlk rm large-v3

ベンチマーク機能

# 標準ベンチマーク
wlk bench

# 特定バックエンドでベンチマーク
wlk bench --backend faster-whisper --model large-v3

ベンチマーク結果は遅延(latency)と単語誤認識率(WER)の両軸で評価される。プロジェクトのREADMEには英仏のベンチマーク散布図も掲載されており、「どのバックエンド×どのポリシー×どのモデル」が最適かを論理的に選べる。

話者識別(ダイアライゼーション)の実装

会議文字起こしでは「誰が話したか」が決定的に重要だ。WhisperLiveKitは2つのダイアライゼーション手法から選択できる。

手法 特徴 ライセンス
Streaming Sortformer NVIDIA研究、リアルタイム高精度 Apache-2.0系
Diart pyannote.audioベース、軽量 MIT

ストリーミング対応している点が重要で、録音終了後に一括処理するのではなく話している最中から「Speaker A」「Speaker B」のラベルが付与される。

# Python APIでの話者識別有効化
from whisperlivekit import AudioProcessor, TranscriptionEngine

engine = TranscriptionEngine(
    model_size="medium",
    diarization=True,  # 話者識別ON
    lan="ja"
)
processor = AudioProcessor(transcription_engine=engine)
results = await processor.create_tasks()
async for result in results:
    print(f"[{result.speaker}] {result.text}")

これだけで会議録のドラフトが自動生成できる。Notion・Slackへの自動送信を組み合わせれば、議事録ゼロタッチ運用が現実になる。

OpenAI/Deepgram互換APIで既存システムからの移行が容易

WhisperLiveKitの実用面で大きな魅力がAPI互換性だ。

エンドポイント 互換 用途
/v1/audio/transcriptions OpenAI Whisper API REST、ファイル単発
/v1/audio/translations OpenAI同様 翻訳付き
/asr Deepgram WebSocket リアルタイムストリーミング
ネイティブWebSocket 独自 より柔軟な制御

つまりOpenAI APIで動いている既存アプリのエンドポイントを書き換えるだけで、セルフホストWhisperLiveKitに切り替えられる。コストとプライバシーの両面で大きな移行メリットがある。

ベンチマーク:英仏での実測値

公式リポジトリには英語・フランス語のリアルタイムベンチマーク散布図が公開されている。

WhisperLiveKit benchmark (English)

横軸が遅延、縦軸が単語誤認識率(WER)。SimulStreaming(AlignAtt)+ Faster-Whisper(large-v3)の組み合わせが、低遅延と高精度を両立しているのが視覚的に分かる。フランス語版でも同様の傾向が確認できる。

WhisperLiveKit benchmark (French)

これらは公式が再現可能なスクリプトで生成しており、自分の環境(GPU、モデル、言語)で再実行することで信頼性の高い選定が可能だ。

Chrome拡張:任意のWebページ音声を文字起こし

WhisperLiveKitにはオプションでChrome拡張が付属する。Google Meet・Zoom・YouTube・TikTokなどブラウザで再生されるあらゆる音声を、WhisperLiveKitサーバーに送って文字起こしできる。

WhisperLiveKit Chrome extension demo

利用シナリオ:

Chrome拡張から見えるサーバーは自分のWhisperLiveKitなので、音声データが第三者に渡らない点が企業利用での大きなアドバンテージだ。

類似ツールとの比較:Whisper.cpp・Vosk・Deepgramと何が違うか

セルフホスト音声認識の領域では複数の選択肢がある。

ツール 形態 強み 弱み
WhisperLiveKit OSS(Apache-2.0) リアルタイム最適化+話者識別+多バックエンド Whisper精度に依存
Whisper.cpp OSS(MIT) C++実装、低リソース、組み込み向け リアルタイム制御は別途実装が必要
Vosk OSS(Apache-2.0) 軽量、20言語対応、モバイル対応 精度はWhisper系に劣る
Deepgram SaaS 高精度・高速、運用不要 月額コスト、データ越境
AssemblyAI SaaS 話者識別・要約APIまで統合 同上
OpenAI API SaaS 公式、簡単 リアルタイム未対応、レート制限

「精度・話者識別・リアルタイム・セルフホスト・多言語」を1つで満たすのはWhisperLiveKitくらいだ。SaaSの便利さを諦められない場合でも、開発・テスト環境用にWhisperLiveKitを置いておくと費用最適化に効く。日本語の音声認識精度比較はInsanely Fast Whisper完全ガイド:OpenAI Whisperを最大23倍高速化するCLIツールの使い方も併せて参照したい。

想定ユースケースと注意点

向いているシーン

注意すべきポイント

Local LLMツールガイド的な観点では、自社GPUで完結する音声処理基盤が組めることが大きな差別化要素になる。

モデルサイズ別の選定ガイド

WhisperLiveKitで選べるWhisperモデルは6サイズ。用途・GPU・要求精度から逆算すると次の選定軸になる。

モデル パラメータ VRAM目安 速度 想定用途
tiny 39M 1GB 最速 検証・低スペックPC
base 74M 1GB 高速 開発デモ、英語短文
small 244M 2GB 中速 多言語・カジュアル用途
medium 769M 5GB 中速 会議・実務での標準
large 1550M 10GB 低速 高精度要求・公開字幕
large-v3 1550M 10GB 低速 2026年現在のベスト精度

「日本語×会議×話者識別×実用」なら large-v3 + Faster-Whisper + Sortformer が現時点のスイートスポット。GPU側はRTX 4070 Ti(12GB)以上を確保すると余裕がある。

運用Tips:本番投入で陥りがちな罠

1. WebSocketのプロキシ設定漏れ

Nginx/Cloudflare等の前段リバースプロキシでWebSocket通信を許可していないと「最初の数秒だけ動いて切れる」現象が起きる。

# Nginx設定例
location /asr {
    proxy_pass http://localhost:8000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_read_timeout 3600s;
    proxy_buffering off;
}

proxy_buffering offが抜けるとストリーミングがバッファされ低遅延が損なわれる。

2. GPUのVRAM枯渇

複数の同時セッションを受け付けると、Whisperモデルの推論メモリで簡単にVRAMが枯渇する。FastAPIのWorkerを増やすのではなく1Workerで複数接続を捌く設計が王道だ。Faster-Whisperのint8_float16量子化を使えばVRAM消費を半分以下に抑えられる。

3. 話者識別の初期化遅延

Sortformer/Diartは初回ロードに5〜15秒かかる。uvicornの起動時に事前ロードする--lifespan startupオプションでウォームアップしておくと、初回ユーザー体験が大きく改善する。

まとめ:「OpenAI APIに払い続ける必要があるか」を見直す節目

OpenAI Whisper APIは便利だが、月単位のコストとデータの越境という構造課題は変わらない。WhisperLiveKitはこの構造に対し、「セルフホスト×リアルタイム×話者識別×OpenAI互換」という4つの武器で代替候補を提示する。Apache-2.0で改変も商用利用も自由、★10.2kの実績、Docker一発起動という導入の手軽さを考えれば、まずは検証環境で試してみない理由がない。

最初のステップはdocker run --gpus all -p 8000:8000 wlkだけだ。マイクで30秒喋ってみて、その文字起こし精度と遅延を体感してから、本格採用の判断をすれば遅くない。

FAQ

Q. 日本語の精度はどの程度ですか?

A. large-v3モデル+Faster-Whisperバックエンドで、英語に近い精度が出ます。固有名詞・業界用語の認識を上げたい場合はLoRA Adapter機能で社内辞書をFine-tuningできます。

Q. リアルタイムでの遅延はどのくらい?

A. SimulStreaming(AlignAtt)+large-v3で平均1〜2秒(英仏ベンチマーク)。日本語はもう少し長く、設定(frame-threshold、beams)で遅延と精度のバランスを調整できます。

Q. 話者識別は何人まで認識できますか?

A. Sortformerは事前学習で2〜8人を想定しています。10人を超える会議では精度が落ちる傾向があります。Diartは話者数を動的に推定するため、人数不定の会議に向きます。

Q. NLLB-200翻訳の精度はDeepLと比べてどうですか?

A. 主要言語ペア(英↔日、英↔仏など)では実用品質ですが、専門分野や口語表現はDeepL/GPT-4の翻訳に及ばないことがあります。NLLB-200の強みは200言語対応とローカル動作です。

Q. iPhoneやAndroidからの利用は可能ですか?

A. WebSocketクライアントとして動作するので、ブラウザ経由・ネイティブアプリのどちらでも実装可能です。公式のスマホアプリは現時点で提供されていません。

Q. Chrome拡張の利用は会社のセキュリティポリシーに引っかかりますか?

A. 拡張の通信先は自社サーバー(WhisperLiveKit)なので、社内サーバーで運用すれば外部送信なしで完結します。社内認可されたWebSocket通信のみ許可するようファイアウォール設定をしてください。

Q. ファインチューニングはできますか?

A. HuggingFace TransformersバックエンドではLoRA Adapterの読み込みに対応しています。社内用語データセットで軽量Fine-tuningし、推論時にAdapterだけ差し替える運用が可能です。

参照ソース

B!
B! この記事をはてブに追加
広告
GitHub で見る
役に立ったらシェアをお願いします
🔔 AI速報、毎日Xで配信中
Claude Code・MCP・AIエージェントの最新ニュースをいち早くお届け
@peaks2314 をフォロー
記事の信頼性について
AI Heartland エディトリアルポリシーに基づき作成
複数ソース照合
公式情報・報道等を突き合わせて確認
ファクトチェック済
ソースURLの内容を検証
参照ソース明記
記事末尾に引用元を掲載
Next Read →
🧑‍💼 Frontman完全解説:ブラウザでクリックして直すAI Vibe Coding OSS、Next.js/Astro/Vite対応
関連記事
🦀 RustySEO完全解説:Tauri+Rust製の無料デスクトップSEOツール、SEMrushの代替候補
Tauri+Rust製の無料SEO/GEOデスクトップツール「RustySEO」を解説。クロール無制限・Core Web Vitals・キーワード分析・サーバーログ解析・Gemini/Ollama統合・タスク管理を1アプリに統合。SEMrush・Ahrefs・Screaming Frogの代替候補としての実力をスクリーンショット中心に紹介。GPL-3.0。
2026.05.02
🌐 Scanopy完全解説:ネットワーク図を自動生成・自動更新するセルフホストOSS
ネットワーク図を自動生成・自動更新するセルフホスト型OSS「Scanopy」を解説。Rust製エージェントレス・スキャナで230以上のサービスを自動検出、L2/L3/Workloads/Applicationsの4ビュー可視化、Docker Composeで起動。SNMP・Docker連携、AGPL-3.0、商用ライセンス・SaaS版あり。
2026.05.02
📥 yt-dlp完全ガイド2026年版:1400+サイト対応動画ダウンローダーのCVE修正とAI連携活用
1400以上のサイトに対応する動画ダウンローダー「yt-dlp」を2026年版で徹底解説。Python 3.10必須化、CVE-2026-26331(--netrc-cmdコマンドインジェクション)の修正、Whisper/LLMとの連携、SponsorBlock・字幕抽出・ffmpeg連携まで実用手順を網羅。Unlicense、★160k超。
2026.05.02
🧑‍💼 Frontman完全解説:ブラウザでクリックして直すAI Vibe Coding OSS、Next.js/Astro/Vite対応
ブラウザ上で要素をクリックして自然言語で修正指示を出すと、ソースコードを自動修正してホットリロードするAI Coding OSS「Frontman」を解説。Next.js・Astro・Vite対応、Claude/OpenAI/OpenRouterのBYOK、MCPサーバー連携。Apache-2.0/AGPL-3.0デュアルライセンス、★364の注目株。
2026.05.02
Popular
#1 POPULAR
🐧 Copy Fail(CVE-2026-31431)解説:Linuxカーネル脆弱性とEC2/ECS/EKSへの影響
Theori Xintが発見したLinuxカーネル脆弱性Copy Fail(CVE-2026-31431)の解説。authencesnとAF_ALGのインプレース最適化で非特権ユーザーがページキャッシュを4バイト書き換えてroot奪取。ECS・EKSでのコンテナエスケープ影響と即時ミティゲーション手順を解説。
#2 POPULAR
💥 AIエージェントが本番DBを削除|PocketOS事件に学ぶCursorやClaudeの権限設計
Cursor IDE上で動作するClaude Opus 4.6のAIエージェントが9秒で本番DBとバックアップを消去したPocketOSの事件を解剖。Railway APIトークンの広すぎる権限、確認のない破壊操作、同一ボリューム内バックアップという3つの欠陥を整理し、開発者が今日から実装すべき防御策を解説する。
#3 POPULAR
🛰️ Sentrux徹底解説:AIエージェント時代の「コード品質センサー」、Rust製OSSでClaude Codeと連携
Sentrux(GitHub 1.4kスター・MIT・Rust製)は、AIエージェントのフィードバックループを閉じる「アーキテクチャセンサー」。5つのメトリクス(モジュラリティ・非循環性・深さ・均等性・冗長性)でコード品質を0〜10000点で測定。Claude CodeへのMCP統合で、エージェント生成コードの構造劣化を即時検知する。
#4 POPULAR
📊 TradingView × Claude Code自動売買|MCPサーバーで78ツール連携・Pine Script生成
TradingView MCPはClaude CodeからTradingView Desktopを直接操作できる78ツール搭載のMCPサーバー。チャート分析、Pine Script開発、マルチペイン、アラート管理、リプレイ練習まで自然言語で実行。導入手順を解説
#5 POPULAR
🎨 awesome-design-md:DESIGN.mdでAIにUI生成させる方法【58+24日本語ブランド対応】
DESIGN.mdをプロジェクトに置くだけでAIエージェントが一貫したUI生成を実現。Vercel・Stripe・Claudeなど58ブランドのデザイン仕様をnpx 1コマンドで導入する方法と、実際の出力差を検証した結果を解説。
← マネーフォワードGitHub不正アクセス事件解説:第一報の事実と過去類似事例から推測する侵入経路 Frontman完全解説:ブラウザでクリックして直すAI Vibe Coding OSS、Next.js/Astro/Vite対応 →