【議事録完全自動化】Faster-Whisper × LLMによる話者分離・要約・タスク抽出パイプライン アイキャッチ

Icons: CDNT Nature & Engineering Photos(MIT)

フィールド分析
公開: 2026.09.02読了目安 8分

【議事録完全自動化】Faster-Whisper × LLMによる話者分離・要約・タスク抽出パイプライン

録音音声ファイルから高速・高精度にテキストを起こし、発言者ごとの分離(ダイアライゼーション)、重要決定事項およびTODOタスクを自動抽出するローカル議事録システムを解説します。

はじめに:社内機密音声のクラウド送信リスクを避ける

ZoomやTeams、対面会議の録音音声から議事録を作成する際、外部のSaaSサービスに音声をアップロードすることは、社内セキュリティ規程や守秘義務(NDA)の観点から制限されるケースが多くあります。

オープンソースの高速音声認識エンジン Faster-Whisper と話者分離ライブラリ PyAnnote.audio、そしてローカルLLMを組み合わせることで、完全オフライン・社内完結型の議事録自動生成パイプラインを構築できます。


1. システム構成図

[ 会議録音 (m4a / mp3 / wav) ]
          │
          ├──▶ 【1. 高速文字起こし】Faster-Whisper (large-v3, CTranslate2最適化)
          │
          └──▶ 【2. 話者分離 (Diarization)】PyAnnote.audio → 話者A / 話者B のタイムスタンプ
                                │
                                ▼
【3. タイムスタンプ統合エンジン】
  ・「誰が」「いつ」「何を話したか」の完全な発言録を生成
                                │
                                ▼
【4. LLM構造化要約 (Qwen 2.5 / Llama 3.3)】
  ・会議の目的とアジェンダ
  ・決定事項(Decisions Made)
  ・保留・次回検討事項(Pending Items)
  ・担当者別TODOアクションアイテム(Action Items with Assignee)

2. Pythonによるコア実装例

from faster_whisper import WhisperModel
import json

def transcribe_audio(audio_path):
    # GPU (cuda) と float16 で高速実行
    model = WhisperModel("large-v3", device="cuda", compute_type="float16")
    
    segments, info = model.transcribe(
        audio_path,
        beam_size=5,
        language="ja",
        vad_filter=True, # 無音区間の自動スキップ
        vad_parameters=dict(min_silence_duration_ms=500)
    )
    
    transcript = []
    for s in segments:
        transcript.append({
            "start": round(s.start, 2),
            "end": round(s.end, 2),
            "text": s.text.strip()
        })
        
    return transcript

60分の会議音声であっても、RTX 4070等の一般的なGPU環境で約2〜3分で文字起こしから構造化議事録の生成までが完了します。

公式データ・仕様参照元について

本記事に掲載している製品仕様、規格データ、および識別情報(JANコード・型番)は、各社公式製品カタログ・公開仕様書および照合データベース(CDNT)に基づき、正確性を検証の上掲載しています。最新の仕様や実売相場につきましては各公式情報または提携ショップ詳細ページをご参照ください。