ChatGPTで会議議事録を自動生成する方法|30分で構築【プロンプト付き】
1. この記事でできること
この記事では、会議の音声ファイルをGoogleドライブに入れるだけでChatGPTが自動で議事録を作り、Googleドキュメントに保存してメール通知までしてくれる仕組みを、初心者でも30分で作れるように書いてみました。難しい理論は最小限にして必要なアカウントの作成、設定、動作確認まで一気に行います。まずは「動くもの」を完成させてあとから改善できる設計にしています。
最初は難しそうと思っても作ってみたら理解できてくるはずです。
ちなみに無料プラン中心で進めます。OpenAI APIの利用のみ数十円程度の少額課金が発生します(クレジットカード登録が必要)。この費用は議事録1回あたり数円〜十数円程度を想定(音声の長さや要約量で変動)。
2. 今回作る自動化の仕組みの全体像
今回の自動化は、以下の流れで動きます。音声アップロード以降は完全自動です。
- 会議の録音ファイル(mp3/m4a/wav など)をGoogleドライブの特定フォルダに入れる
- Make(ノーコード自動化ツール)が新規ファイルを検知
- OpenAI Whisper(音声→テキスト)で文字起こし
- ChatGPT(GPT-4o mini推奨)にプロンプトを渡して議事録フォーマットに整形
- Googleドキュメントに議事録を保存
- Gmailで完成通知&ドキュメントURLを送信
ポイントは「最短ルートで自動化を完成させる」こと。最初は録音のアップロードだけ手動にし、精度と流れを確認します。慣れてきたら、録音の自動アップロードやSlack通知なども足せます。
3. 事前に必要なアカウント・準備物
| 項目 | 目的 | 料金/登録要件 | この記事でやること |
|---|---|---|---|
| Googleアカウント(Drive/Docs/Gmail) | 音声の保管・議事録の保存・通知 | 無料(個人アカウントでOK) | 専用フォルダ作成、Docs/Gmail連携 |
| OpenAI アカウント(API) | 文字起こし(Whisper)と要約(ChatGPT) | APIは従量課金。クレジットカード登録が必要 | APIキー発行、モデル選択 |
| Make(Integromat) | ノーコードで各サービス連携 | 無料プランでOK(1,000ops/月目安) | シナリオ作成、各サービス接続 |
| 録音アプリ(スマホ/PC/Zoom等) | 会議音声の取得 | 無料で用意可能 | テスト用に1〜2分の音声を準備 |
プライバシー注意: 機密会議の音声を外部サービスに送る前に、社内規程や参加者の同意を確認してください。最初は匿名・テスト音声で動作確認をおすすめします。
4. 必要なツール、アカウントの設定
4-1. Googleドライブの準備(5分)
自動化の「入口(音声保管)」と「出口(議事録保存)」を決めるためです。
- Googleドライブに「meeting-audio(音声)」というフォルダを作成
- 同階層に「meeting-minutes(議事録)」というフォルダを作成
- テストしやすいよう、音声はmp3/m4a/wavで1〜2分の短いサンプルを用意
4-2. OpenAI APIキーを発行(5分)
MakeからOpenAI(Whisper/GPT)を呼び出すためです。APIはWeb版ChatGPTとは別枠です。
- OpenAIのアカウントを作成し、Billing(支払い)にクレジットカードを登録
- API Keysの画面で新しいシークレットキーを発行し、控える(後でMakeに貼り付け)
- 費用感: Whisper(音声→文字)は数円/分程度、GPT-4o miniの要約は数円以下/回が目安(最新料金はOpenAIのPricingページを確認)
4-3. Makeアカウントを作成(5分)
各サービスをつなぎ、順番どおりに実行させる「土台」です。
- Makeにサインアップ(Googleアカウント連携が簡単)
- FreeプランでOK(1,000オペレーション/月、15分間隔のスケジュールが目安)
5. 自動化ツールの設定
ここからはMakeでシナリオ(ワークフロー)を作ります。失敗しても大丈夫。いつでも手前のモジュールに戻せます。
5-1. シナリオの骨組みを作る
- Makeで「Create a new scenario」を開く
- 最初のモジュールに「Google Drive」を選び、「Watch files in a folder」を選択
新しい音声ファイルが入った瞬間に自動で動かすためです。 - Googleアカウントを接続し、フォルダに「meeting-audio」を指定
- 動作間隔は「Every 15 minutes(無料プラン既定)」でOK。すぐ動かしたい時は手動実行します。
5-2. 音声ファイルをダウンロード
- 次のモジュールに「Google Drive > Download a file」を追加
- File IDに、直前のモジュールから受け取った「ID」をマッピングする
5-3. Whisperで文字起こし
- モジュールを追加し「OpenAI > Create transcription(Speech to text)」を選択
- OpenAI接続にAPIキーを貼り、モデルは「whisper-1」などの音声認識モデルを選択
- File(バイナリ)に、1つ前の「Download a file」の出力をマッピング
- Languageは「ja」推奨(会議が日本語の場合)。未指定でも自動検出されます。
ここで止まったら、音声形式や長さを確認してみてください。長すぎる場合はまず1〜2分で試すと原因切り分けがしやすいです。
5-4. ChatGPTで議事録に整形(プロンプト付き)
- モジュールを追加し「OpenAI > Create a chat completion(Chat Completions)」を選択
- モデルは「gpt-4o-mini」など、コスパの良い軽量モデルを推奨(要約用途に最適)
- Messagesに以下のSystem/Userを設定(必要に応じて微調整):
System(役割):
あなたは日本語の会議議事録を正確かつ簡潔に作るアシスタントです。
必ず日本語で出力し、誤りがある場合は「不明」と明記してください。
体裁は見出し・箇条書きを用いて、3分以内で読める長さにまとめてください。
User(入力):
以下は会議の文字起こしです。内容を要約し、次のフォーマットで議事録を出力してください。
---
タイトル: {推定できる会議名 or 「会議名不明」}
開催日時: {推定 or 「不明」}
参加者: {会話に登場した人物を推定。役職名があれば併記。なければ「不明」}
議題一覧: 箇条書きで最大5件
決定事項: 箇条書き
TODO/担当/期限: 箇条書き(担当者・期限が不明なら「担当: 未定 / 期限: 未定」)
懸念・保留事項: 箇条書き
次回までの準備: 箇条書き
---
【重要】会話が断片的でも無理に補完せず、根拠が薄い推定は「不明」と表記してください。
【元発言の引用】重要な決定の根拠となる発言は、該当箇所を“”で短く引用してください。
文字起こし本文:
{{Whisperのテキスト出力}}
最初から完璧を狙わず誰が読んでも同じ体裁になる「型」を作ることで、チーム導入がスムーズになります。
5-5. Googleドキュメントへ保存
- モジュール「Google Docs > Create a document」を追加
- Titleに「議事録_{{ファイル名}}_{{実行日}}」のような式を入れると後で探しやすい
- Contentに、直前のChatGPTモジュールの出力全文をマッピング
- Folderに「meeting-minutes」を指定
入力と出力の置き場を分けると、トラブル時の切り分けが簡単です。
5-6. 完了メールを送る
- モジュール「Gmail > Send an email」を追加
- Toに自分のメールアドレス(後でチーム宛に変更可)
- Subject例: 「【自動生成】会議議事録が完成しました」
- BodyにGoogleドキュメントのURLを差し込み(Create a documentの返り値にURLあり)
ファイルができたことにすぐ気づけて手作業の抜け漏れを防ぎます。
5-7. 保存とテスト実行
- 右下の「Run once」で手動実行し、meeting-audioに1〜2分のテスト音声を入れる
- 各モジュールが緑チェックになるか確認。失敗したら、その手前のモジュールに戻ってやり直してOK
- 問題なければ「Schedule」をON(無料プランでは約15分間隔で自動実行)
6. 動作確認(実際の質問例)
ここでは、会議っぽい短い内容を自分で録音して試します。スマホのボイスメモでOK。
- 録音例(30〜60秒):
- 「新機能Aのリリース日を6/30に決定。デザインは田中さん、6/10までに最終版。QAは私が6/15までに計画。」
- 「懸念はパフォーマンス。次回までにロード時間を測定し、しきい値を決めたい。」
- 音声ファイルをmeeting-audioにドラッグ&ドロップ
- MakeのシナリオをRun onceで実行(または自動実行を待つ)
- meeting-minutesに新しいGoogleドキュメントが生成され、Gmailに通知が届くのを確認
もし要約が薄いと感じたら、5-4のプロンプトで「決定事項を先頭に」「TODOは期限を強制で付与(不明なら未定と記載)」などの指示を1~2行だけ足してください。細かくしすぎるより、短く明確な指示が効果的です。
7. うまく動かないときのチェックポイント
- OpenAIのAPIキーが無効・未登録: Makeの接続設定を開き、キーの再貼り付けと権限を確認
- 音声形式・サイズ: mp3/m4a/wav推奨。まずは1〜2分でテストし、長尺は後から
- Google Drive権限: meeting-audio/meeting-minutesが同じアカウント配下か確認
- Makeのマッピング漏れ: Download a file → WhisperのFile欄が空になっていないか
- 文字化け・言語ミスマッチ: WhisperのLanguageをja指定に変更して再実行
- 要約が冗長/短すぎる: プロンプトの「3分以内」「箇条書き最大5件」などの閾値を調整
- Gmailで送信失敗: 新規サービス連携時は初回に許可ダイアログが出ることあり。MakeのConnectionを再承認
- コスト不安: OpenAIのUsageダッシュボードで消費量を確認。モデルをgpt-4o-mini等にし、長文出力を控える
- 無料枠超過: Makeの1,000ops/月を超えると停止。まずは重要会議だけで運用開始がおすすめ
どこかで失敗しても大丈夫。失敗したモジュールの手前から再実行できます。原因を1つずつ潰すのが最短です。
8. 次にできる改善アイデア
- Slack通知を追加: Gmailの代わりにSlackへURLを投稿。見逃し防止に効果的
- Googleカレンダー連携: 会議タイトルや参加者をカレンダーから取得し、議事録タイトルを自動命名
- テンプレドキュメント化: Google Docsのテンプレを用意し、見出しやスタイルを統一
- Notion連携: 議事録をNotionデータベースに自動登録し、検索・参照を強化
- 話者分離の前処理: 長時間/複数人会議は「話者: 〇〇」のタグ付けをしたうえで要約精度を向上
- 自動アーカイブ: 音声ファイルを処理後に「processed」フォルダへ移動して整理
- セキュリティ対策: 機密会議は組織ポリシーに沿って匿名化、アクセス権、保存期間を自動で制御
最初はシンプルに「音声→議事録」を完成させ、少しずつ拡張するのが挫折しないコツです。