「会議のたびに議事録作成に30分以上かかる」「長文の報告書を読む時間がない」——こうした悩みは多くの中小企業で共通しています。クラウドの文字起こし・要約サービスは便利ですが、会議の内容には経営戦略や人事情報、顧客データなどの機密情報が含まれることが多く、外部サービスへのデータ送信に抵抗を感じる企業も少なくありません。
本記事では、ローカルLLMを活用して、すべてのデータを社内に留めたまま議事録作成や文書要約を自動化する方法を、具体的な手順とともに解説します。
議事録・要約の自動化がもたらす業務インパクト
議事録作成と文書要約は、多くの企業で日常的に発生する業務です。その工数を定量的に把握することで、自動化のインパクトが見えてきます。
議事録作成にかかる現状コスト
典型的な中小企業(従業員50名規模)の場合を想定します。
| 項目 | 数値 |
|---|---|
| 週あたりの会議数 | 約15〜20回 |
| 1回の議事録作成時間 | 30〜60分 |
| 月間の議事録作成工数 | 約30〜80時間 |
| 人件費換算(時給2,500円の場合) | 月額75,000〜200,000円 |
この工数をローカルLLMで大幅に削減できれば、スタッフはより付加価値の高い業務に時間を使えるようになります。
なぜローカルで処理すべきなのか
会議の内容には以下のような機密情報が含まれることが多く、データの社外送信を避けたいという要望は合理的です。
- 経営戦略や業績に関する議論
- 人事評価や採用に関する話題
- 取引先との交渉内容や契約条件
- 新製品や新サービスの企画情報
- 社内の課題やトラブルの詳細
クラウドLLMと異なり、ローカルLLMではすべての処理が自社のPC上で完結するため、これらの情報が一切外部に送信されません。
議事録自動化システムの全体像
ローカル環境での議事録自動化は、大きく2つのステップで構成されます。
- 音声文字起こし(Speech-to-Text):会議の録音データをテキストに変換する
- テキスト要約(Summarization):文字起こしされたテキストをLLMが構造化・要約する
必要なコンポーネント
| コンポーネント | 役割 | 推奨ツール |
|---|---|---|
| 音声文字起こし | 音声をテキストに変換 | Whisper(OpenAI)のローカル版 |
| LLMモデル | テキストの要約・構造化 | Qwen 3、Gemma 3 |
| 推論エンジン | LLMの実行環境 | Ollama |
| UI(任意) | 操作インターフェース | Open WebUI、自作スクリプト |
Step 1:Whisperによるローカル音声文字起こし
OpenAIが公開したWhisperは、高精度な音声認識モデルです。オープンソースで提供されており、ローカル環境で完全に動作します。クラウドのWhisper APIとは異なり、音声データが外部に送信されることはありません。
Whisperのインストール
# Pythonがインストールされていることを前提
pip install openai-whisper
# より高速なwhisper.cppを使う場合(C++実装、CPU最適化)
# GitHubからwhisper.cppをクローンしてビルド
git clone https://github.com/ggerganov/whisper.cpp
cd whisper.cpp
make
Whisperモデルの選択
Whisperには複数のサイズがあり、PCスペックと精度のバランスで選択します。
| モデル | パラメータ数 | 必要VRAM | 日本語精度 | 処理速度 |
|---|---|---|---|---|
| tiny | 39M | 約1GB | 低い | 非常に速い |
| base | 74M | 約1GB | やや低い | 速い |
| small | 244M | 約2GB | 実用レベル | 普通 |
| medium | 769M | 約5GB | 高い | やや遅い |
| large-v3 | 1550M | 約10GB | 非常に高い | 遅い |
日本語の議事録用途にはmedium以上を推奨します。GPU搭載PCであれば、large-v3でも実用的な速度で処理できます。
文字起こしの実行
# Python版Whisperでの実行
whisper meeting_recording.wav --model medium --language ja --output_format txt
# 出力例:meeting_recording.txt にテキストが保存される
1時間の会議音声の場合、mediumモデル+GPU環境で約5〜15分程度で文字起こしが完了します。CPUのみの環境では処理時間が長くなるため、GPU搭載PCの導入を検討してください。
Step 2:ローカルLLMによる議事録の自動生成
文字起こしテキストが得られたら、ローカルLLMを使って構造化された議事録を生成します。
Ollamaでの議事録生成
まず、Ollamaで日本語対応のLLMモデルを準備します。
# 日本語性能の高いモデルをダウンロード
ollama pull qwen3:7b
次に、Ollamaの API を使って文字起こしテキストから議事録を生成するスクリプトの例です。
import requests
import json
# 文字起こしテキストの読み込み
with open("meeting_recording.txt", "r", encoding="utf-8") as f:
transcript = f.read()
# 議事録生成用のプロンプト
prompt = f"""以下の会議の文字起こしテキストから、構造化された議事録を作成してください。
【出力フォーマット】
■ 会議概要
- 日時:
- 参加者:(文字起こしから推測できる場合)
- 議題:
■ 議論内容
(議題ごとに整理)
■ 決定事項
(番号付きリスト)
■ アクションアイテム
(担当者・期限を明記)
■ 次回予定
(わかる場合)
【文字起こしテキスト】
{transcript}
"""
# OllamaのAPIにリクエスト
response = requests.post(
"http://localhost:11434/api/generate",
json={
"model": "qwen3:7b",
"prompt": prompt,
"stream": False
}
)
# 結果の表示と保存
result = json.loads(response.text)["response"]
print(result)
with open("meeting_minutes.txt", "w", encoding="utf-8") as f:
f.write(result)
Open WebUIを使った手動処理
スクリプトを書かずに手動で処理する場合は、Open WebUIのチャット画面に文字起こしテキストを貼り付け、上記のプロンプトを使って議事録を生成することもできます。少量の会議であればこの方法で十分です。
議事録テンプレートのカスタマイズ
自社の運用に合わせて、議事録のフォーマットやLLMへの指示をカスタマイズすることで、より実用的な議事録を生成できます。
業種・用途別のテンプレート例
営業会議向け:
以下の営業会議の文字起こしから議事録を作成してください。
特に以下の情報を重点的に抽出してください:
- 各案件の進捗状況
- 受注見込み金額と確度
- 競合情報
- 次のアクション(担当者と期限を必ず明記)
プロジェクト進捗会議向け:
以下のプロジェクト進捗会議の文字起こしから議事録を作成してください。
以下の構造で整理してください:
- 前回のアクションアイテムの進捗
- 各タスクの現在のステータス(完了/進行中/遅延)
- 新たに発生した課題とリスク
- 次回までのアクションアイテム(担当者・期限を明記)
- スケジュールへの影響
Ollamaのモデルファイルでテンプレートを固定する
頻繁に使うテンプレートは、OllamaのModelfileとして保存しておくと便利です。
# Modelfile の作成
FROM qwen3:7b
SYSTEM """
あなたは議事録作成の専門アシスタントです。
文字起こしテキストを受け取り、以下のフォーマットで構造化された議事録を生成してください。
■ 会議概要(日時、参加者、議題)
■ 議論のポイント(議題ごとに整理)
■ 決定事項(番号付き)
■ アクションアイテム(担当者と期限を明記)
■ 次回予定
重要:推測や創作は行わず、文字起こしに含まれる情報のみを整理してください。
"""
PARAMETER temperature 0.3
PARAMETER num_ctx 8192
# カスタムモデルの作成
ollama create meeting-assistant -f Modelfile
# 使用
ollama run meeting-assistant
文書要約への応用
議事録の自動生成と同じ仕組みを、さまざまな文書の要約にも応用できます。
長文レポート・報告書の要約
月次報告書、調査レポート、競合分析資料など、長文の文書を要約して要点を抽出できます。
以下の報告書を要約してください。
要約は以下の3段階で構成してください:
1. エグゼクティブサマリー(3行以内)
2. 主要なポイント(箇条書きで5項目以内)
3. アクションが必要な項目(あれば)
メールスレッドの要約
長いメールのやり取りを要約し、現在の状況と次のアクションを把握できます。特に途中から参加するメンバーへの情報共有に効果的です。
日報・週報の集約
チーム全員の日報や週報をLLMに渡し、チーム全体の活動サマリーを自動生成できます。活用事例でも紹介したように、管理者の日報確認業務を大幅に効率化できます。
推奨モデルと必要スペック
議事録・要約用途でのモデル選択のポイントと推奨スペックをまとめます。
推奨モデル
| モデル | 必要VRAM | 日本語要約品質 | 処理速度 | おすすめ度 |
|---|---|---|---|---|
| Gemma 3 4B | 約4GB | 良好 | 速い | 手軽に始めたい場合 |
| Qwen 3 7B | 約6GB | 非常に高い | 普通 | 最もおすすめ |
| Qwen 3 14B | 約10GB | 非常に高い | やや遅い | 品質重視の場合 |
| Gemma 3 12B | 約10GB | 高い | やや遅い | 多言語環境の場合 |
要約タスクは日本語の生成品質が直接的に成果物の品質に影響するため、日本語性能の高いQwen 3が最もおすすめです。
Whisper + LLMの同時実行に必要なスペック
音声文字起こしとLLM要約を同じPCで行う場合、以下のスペックが推奨されます。
- GPU:VRAM 12GB以上(RTX 4070以上推奨)。WhisperとLLMを順次実行する場合は8GBでも可
- RAM:32GB以上
- ストレージ:SSD 50GB以上の空き容量
- CPU:8コア以上を推奨(Whisperの前処理で活用)
PCスペックの詳細ガイドも参考にしてください。
運用を効率化するための自動化テクニック
日常的に議事録の自動化を行うなら、処理をワンクリックで実行できる仕組みを構築しておくと便利です。
バッチ処理スクリプトの作成
音声ファイルの文字起こしからLLM要約までを一括で実行するシェルスクリプトの例です。
#!/bin/bash
# 議事録自動生成スクリプト
INPUT_FILE=$1
OUTPUT_DIR="./minutes"
DATE=$(date +%Y%m%d)
# Step 1: Whisperで文字起こし
echo "文字起こし中..."
whisper "$INPUT_FILE" --model medium --language ja --output_format txt --output_dir "$OUTPUT_DIR"
# Step 2: 文字起こしテキストを取得
TRANSCRIPT_FILE="${OUTPUT_DIR}/$(basename "${INPUT_FILE%.*}").txt"
TRANSCRIPT=$(cat "$TRANSCRIPT_FILE")
# Step 3: OllamaのAPIで議事録生成
echo "議事録を生成中..."
curl -s http://localhost:11434/api/generate \
-d "{
\"model\": \"qwen3:7b\",
\"prompt\": \"以下の会議の文字起こしから構造化された議事録を生成してください。\\n\\n${TRANSCRIPT}\",
\"stream\": false
}" | python3 -c "import sys,json; print(json.load(sys.stdin)['response'])" \
> "${OUTPUT_DIR}/minutes_${DATE}.txt"
echo "議事録を保存しました: ${OUTPUT_DIR}/minutes_${DATE}.txt"
このスクリプトを使えば、音声ファイルを指定するだけで議事録が自動生成されます。
定期実行の設定
特定のフォルダに音声ファイルが保存されたら自動的に処理を開始するよう、ファイル監視を設定することもできます。定例会議の録音データを決まったフォルダに保存するだけで、議事録が自動的に生成される運用フローが実現します。
まとめ:ローカルLLMで安全かつ効率的な議事録・要約の自動化を実現
ローカルLLMを活用した議事録・要約の自動化は、中小企業にとって即効性の高い業務効率化施策です。ポイントを整理します。
- Whisper(ローカル版)+ ローカルLLMの組み合わせで、完全にオフラインで動作
- 会議の機密情報が一切外部に送信されず、情報漏洩リスクゼロを実現
- 議事録作成時間を約75%削減可能(事例より)
- 日本語の要約品質はQwen 3が特に優秀
- バッチスクリプトの作成で、ワンクリックでの自動処理も実現可能
まずはOllamaのセットアップを行い、簡単な文章の要約から試してみてください。効果を実感できたら、Whisperによる音声文字起こしも導入し、議事録作成の完全自動化を目指しましょう。社内文書を活用したRAGシステムや社内チャットボットと組み合わせれば、ローカルLLMを軸とした包括的な業務効率化が実現できます。
関連記事
Claude CodeでREST API開発|設計からテストまでAI駆動で高速構築
Claude Codeでコードレビュー|AIを活用した品質チェックとレビュー効率化
Claude Codeのコンテキスト管理術|大規模プロジェクトで精度を維持する方法
Claude Codeのカスタムスラッシュコマンド作成ガイド|独自ワークフローの自動化
Claude Codeでデータベース移行・マイグレーション|安全なスキーマ変更の実践
Claude Codeでデバッグを効率化|バグ修正・エラー解析の実践テクニック
Claude Codeでドキュメント自動生成|README・API仕様書・技術文書の効率的な作り方
Claude Codeでエラーハンドリング実装|堅牢なアプリケーションを構築するパターン集