会議のあと、AIが議事録を作ってくれます。読んでいくと「これ、本当にそう言ったっけ」という一行があり、結局メモや録音を見直すことになります。
全部は信用できません。ただ、架空の会議の文字起こしをClaudeに18回まとめさせると、言い間違いの数字や冗談を決定として書いた出力は0回でした。誤りは、決まっていないことを「決まったこと」の欄に入れる形に集まりました。確認は残りますが、見る場所は3つに絞れます。
Yahoo!知恵袋には、2026年1月に、言っていないことが書かれることがあるので、結局会議の内容をすべてメモしている、という質問がありました。2025年の質問には、間違いや欠落が多い、途中までしか要約されない、という悩みがあります。Qiitaの2026年9月の記事は、発言者の取り違えを挙げています。
この記事では、3通りの頼み方の試験結果と、確認する3か所、根拠つきで作らせる指示文(プロンプト)、引用が本当にあるかを確かめる無料のスクリプト(貼って動かす短いプログラム)を載せます。ZEN AI LABが公開している無料のプロンプトも、試験の1条件に入れました。この記事で売るものはありません。ChatGPTでは試していません。
間違えたのは数字ではなく、「保留を決定と書く」ことだった
試験に使ったのは、ZEN AI LABが作った架空の会議の文字起こしです。24の発言、約660字で、次の内容を入れました。
- 決まったこと4つ(FAQの更新、料金の変更、次回の会議、欠席者への共有)
- 決まっていないこと3つ(告知の時期は「素材次第」、バナーの担当は未定、ロゴは見送り)
- 冗談で言ったことが1つ(山本が否定している)
- 言い間違いが2つ(料金の2,200円→2,080円、アンケートの320件→230件)
頼み方は3つです。Aは「議事録にしてください」だけ。Bは、ZEN AI LABが無料で公開しているプロンプト(議事メモを3点に圧縮するプロンプト)を、一字一句そのまま使いました。このプロンプトは議事メモ向けで、文字起こしの全文向けとは書かれていません。Cは、Bに、根拠の発言をそのまま引用させる指示を足したものです。
それぞれ、Claudeの中型と小型の2つのモデルに、3回ずつ頼みました(3条件×2モデル×3回で、計18回)。採点は、Claudeが、先に決めた正解表で行いました。さらに、別のClaudeが、頼み方とモデルを伏せて、同じ基準で採点し直しました。
採点で気をつけた点が2つあります。Aには「決まったこと」の決まりを渡していないので、Aの結果は参考です。ロゴの見送りは、「決まったこと」と「決まらなかったこと」のどちらに入れても、誤りにしていません。
| 頼み方 | 回数 | 誤りがあった回 | 誤りの中身 |
|---|---|---|---|
| A 議事録にして | 6 | 3 | 決まっていないことを「決定」の欄に入れた4件、発言にない補足(数え方で1〜3件) |
| B 無料プロンプトそのまま | 6 | 0 | なし |
| C Bに根拠の引用を足す | 6 | 2 | 決まっていないことを「決まったこと」に入れた2件、次回の会議の欠落1件 |
誤りがあった回は、2回の採点で一致しました。誤りがあった回は、Aは小型モデルの3回、Cは小型モデルの2回です。Bは6回とも誤りがありませんでした。回数が少ないので、差は偶然かもしれません。
誤りの例です。Aの小型モデルは、「決定:素材の状況に応じて、来月または再来月に判断する」と書きました。Cの小型モデルは、同じ項目を「決まったこと」に入れ、根拠として「素材の状況はまた見ましょう」という山本の発言を引用しました。試した2例では、引用を読むと、これが決まったことではないと分かりました。誤った数字(2,200円、320件)を使った出力も、冗談を決定として書いた出力も、18回のうち0回でした。
Cの引用は、全部で70件ありました。すべて文字起こしに実在し、発言者も合っていました。
確認する場所は3つ。BとCの使い分け
まずはBで足ります。この試験では、Bは6回とも誤りがありませんでした。会議の内容が重要で、あとから「どの発言が根拠か」を示したいときは、Cで作らせます。ただし、Cは小型モデルで誤りが出たので、引用を見て確認する前提で使ってください。
Cの指示文は、試験で使った形のまま、次のとおりです。文字起こしを「議事メモ:」のあとに貼ります。
次の議事メモを、①決まったこと ②決まらなかったこと ③誰が何をするか の3点だけに圧縮してください。メモに書かれていないことは足さないでください。曖昧な発言を「決まったこと」に入れないでください。議事メモ:(ここに文字起こしを貼る)
追加の指示:①〜③の各項目に、根拠になった発言を、発言者名つきでそのまま「」で引用してください。根拠になる発言が見つからない項目は書かないでください。担当や期限が発言にない場合は「未定(発言なし)」と書いてください。
出てきた議事録は、次の3か所だけ見ます。
- 「決まったこと」の根拠が、言い切った発言になっているか。「〜次第」「また見ましょう」「あとで」は、決まったことではありません
- 担当と期限が、発言の中にあるか。「未定(発言なし)」のものを、AIが埋めていないか
- 決まったことが、落ちていないか。AIの答えにない決定は、この方法では見つかりません。文字起こしで「お願いします」「やります」を検索して、見つけます
会社の会議の内容をAIに貼ってよいかは、先に会社のルールを確認してください。
引用が本当にあるかは、スクリプトに任せられる
上の1と2のうち、「引用が本当に文字起こしにあるか」「発言者が合っているか」「根拠に言い切っていない言い方がないか」は、機械が確かめられます。この記事の末尾に、Windows PowerShell(スタートメニューで「PowerShell」と検索すると開ける、文字でコマンドを打つ道具)に貼るスクリプトを載せました。ファイルは書き換えず、読むだけです。
使い方は次のとおりです。
- 文字起こしと、AIが作った議事録を、メモ帳で別々のファイルに保存します。「名前を付けて保存」の画面で、文字コードが「UTF-8」になっていることを確かめます。文字起こしは、「山本: こんにちは」のように、1行に1発言、名前とコロンで始まる形にします。先頭に「会議日: …」のような行は入れません
- この記事の末尾の「付録:スクリプト全文」を全部コピーして、メモ帳に貼り付けます
- エクスプローラーで文字起こしのファイルを1回クリックして選び、キーボードのCtrlキーとShiftキーとCキーを同時に押します。ファイルの場所がコピーされます。メモ帳のスクリプトの1行目で、シングルクォーテーション(’)の中身を全部消して、貼り付けます。貼り付けた場所の前後には二重引用符(”)がついているので、これだけ消します。2行目は、議事録のファイルで同じことをします
- メモ帳のスクリプト全体をコピーして、PowerShellに貼り付け、Enterキーを押します
動くと、次のように表示されます。これは、Cの小型モデルの出力(根拠に「また見ましょう」が入っていたもの)を使った、実際の表示です。
引用 8 件を調べました。
引用は、すべて文字起こしにあり、発言者も合っていました。
注意: 「決まったこと」の根拠に、言い切っていない言い方があります
素材の状況はまた見ましょう (「また見」を含む)
※書かれていない決定の見落とし・引用のない項目・文字起こしそのものの誤りは、この確認では分かりません。
試験の結果と、できないことは次のとおりです。
- Cの6回の出力(引用70件)に使うと、作られた引用は0件でした。見つかったのは、私たちが混ぜた2件(文字起こしにない文と、発言者の取り違え)だけです
- 「決まったこと」の根拠への注意は、3回の出力に出ました。そのうち2回は、決まっていないことが入っていた2回です。残りの1回は、ロゴの「見送り」で、これは誤警告でした
- スクリプトは、同じ6本の出力を使って、1度直しています。見出しに「決まったこと」「決まらなかったこと」「誰が何を」を含む出力にだけ、注意が出ます
それでも残ること
- ChatGPT、Gemini、Teams、Meet、Zoom、議事録アプリの要約では、試していません。結果は、Claudeの2モデルと、1つの短い架空の文字起こしの範囲です
- 実際の録音の聞き間違いや誤字、長い会議、複数の人が同時に話す場面は、入れていません
- 採点は、2回ともClaudeです。人による採点はしていません。引用があると確認の時間が短くなるかも、人の時間を測っていないので分かりません
議事録ではなく文章を書かせる場合の確かめ方は、AIに体験談を書かせた40回の試験にまとめました。
まとめ
見る場所は3つです。根拠が言い切った発言か、担当と期限が発言にあるか、落ちた決定がないか(文字起こしの検索で拾います)。次の順で試してください。
- 会社のルールを確認して、確認用に、短い会議の文字起こしを1つ用意します
- 上の指示文(BかC)で、議事録を作らせます
- 「決まったこと」の根拠が、言い切った発言になっているかを見ます
- 引用の実在を確かめたいときは、スクリプトを貼ります
付録:スクリプト全文
最初の2行を、自分のファイルの場所に書き換えて使います。
$transcript = 'C:\Users\あなた\Documents\会議の文字起こし.txt' # 文字起こし(「山本: 発言」の形の行)
$minutes = 'C:\Users\あなた\Documents\AIの議事録.txt' # AIが作った議事録(根拠の引用つき)
& {
$squash = { param($s) ($s -replace '[\s ]', '') }
$raw = @(Get-Content -LiteralPath $transcript -Encoding UTF8)
$turns = foreach ($r in $raw) { if ($r -match '^\s*(.{1,10}?)\s*[::]\s*(.+)$') { [pscustomobject]@{ Name = $Matches[1]; Text = (& $squash $Matches[2]) } } }
$names = @($turns | ForEach-Object Name | Select-Object -Unique)
$all = & $squash (($turns | ForEach-Object Text) -join '')
$hedge = '次第','また見','あとで','後で','検討','見送','できれば','かもしれ','たぶん','いったん','一旦','考え','思い'
$mode = ''; $count = 0; $fake = @(); $other = @(); $warn = @()
foreach ($l in @(Get-Content -LiteralPath $minutes -Encoding UTF8)) {
if ($l -match '決まらなかったこと') { $mode = 'undecided' } elseif ($l -match '決まったこと') { $mode = 'decided' } elseif ($l -match '誰が何を') { $mode = 'todo' }
foreach ($m in [regex]::Matches($l, '「([^」]+)」')) {
$q = & $squash ($m.Groups[1].Value.TrimEnd('。')); if (-not $q) { continue }
$count++
if (-not $all.Contains($q)) { $fake += $m.Groups[1].Value; continue }
$before = $l.Substring([Math]::Max(0, $m.Index - 8), [Math]::Min(8, $m.Index))
$after = $l.Substring($m.Index + $m.Length)
$who = $names | Where-Object { $before.EndsWith($_) -or $before.EndsWith($_ + ':') -or $before.EndsWith($_ + ':') } | Select-Object -First 1
if (-not $who) { $who = $names | Where-Object { $after -match ('^[\s]*[((]' + [regex]::Escape($_) + '[))]') } | Select-Object -First 1 }
if ($who -and -not ($turns | Where-Object { $_.Name -eq $who -and $_.Text.Contains($q) })) { $other += ('{0}「{1}」' -f $who, $m.Groups[1].Value) }
if ($mode -eq 'decided') { foreach ($h in $hedge) { if ($q.Contains($h)) { $warn += ('{0} (「{1}」を含む)' -f $m.Groups[1].Value, $h); break } } }
}
}
Write-Host ("引用 {0} 件を調べました。" -f $count)
if ($fake) { Write-Host 'NG: 文字起こしにそのままは無い引用(言い換え、または作られた可能性)'; $fake | ForEach-Object { Write-Host " $_" } }
if ($other) { Write-Host 'NG: 別の人の発言として書かれている引用(発言者の取り違え)'; $other | ForEach-Object { Write-Host " $_" } }
if (-not $fake -and -not $other) { Write-Host '引用は、すべて文字起こしにあり、発言者も合っていました。' }
if ($warn) { Write-Host '注意: 「決まったこと」の根拠に、言い切っていない言い方があります'; $warn | ForEach-Object { Write-Host " $_" } }
Write-Host '※書かれていない決定の見落とし・引用のない項目・文字起こしそのものの誤りは、この確認では分かりません。'
}
試験の記録
- 場所と日付:2026年10月1日、Windows 11 Pro(10.0.26200)、Windows PowerShell 5.1。試験は標準入力から同じ内容を流して行い、公開前に、付録のスクリプトの最初の2行を書き換えてコンソールへ実際に貼り付ける形も、1回確認しました(本文の表示例と同じ「引用 8 件・注意1件」が出ました)。PowerShell 7と、MeetやTeamsが出す時刻つきの文字起こしの形では試していません
- 試験の実行:Claude Codeのサブエージェントで、モデルの指定は「sonnet」(中型)と「haiku」(小型)です。2026年11月6日に実行の記録を読み直すと、18本を書いたモデルの名前は、「sonnet」の9本が「claude-sonnet-5-5」、「haiku」の9本が「claude-haiku-4-5-20251001」でした。全条件の末尾に「ツールは使わず、議事録の本文だけを返す(ファイルへの保存はWriteで)」という指示を足しました
- 試験の素材:冒頭に書いた曜日が、実際の暦と合っていませんでした(2026年10月1日は木曜日)。日付への換算は、誤りにも補足にも数えていません。「来週の水曜」などの言い換えが合っているかだけを見ています
- 採点の経緯:試験の前に、正解表(決まったこと・決まっていないこと・言い間違い)を固定しました。1回目の採点(Claude)は、この正解表で全文を読んで行いました。日付への換算を数えない、ロゴはどちらに入れても誤りにしない、という基準は、1回目の結果を見たあとに文章にして固定し、1回目の採点を直しました。2回目は、別のClaudeが、頼み方とモデルを伏せて、この基準で採点し直しました。ただし、引用がある出力はC、見出しのない出力はA、というように、出力の形から頼み方は推測できます。誤りがあった回の数(A3・B0・C2)、見落とし、決まっていないことの誤入れ、数字の誤りの件数は、18本すべてで一致しました。発言にない補足の数え方は、3本で違いました(Aの小型の2本は、2回目の採点者だけが「次回確認予定」などを補足と数えました。Cの小型の1本は、1回目の採点者だけが、意味の崩れた項目を補足と数えました)
- 引用の数え方:スクリプトは、「」で囲まれた文字列をすべて数えます(Cの6本で70件)。発言者の名前がついた引用だけを数えると67件で、差の3件は文中の強調の「」です。70件はすべて文字起こしに実在しました
- スクリプトの癖:文字起こしの先頭に「会議日: …」の行があると、これも発言として読み込みます。このため、先頭にそのような行は入れない手順にしています。スクリプトは、Cの6本の出力で、発言者の判定を1度直しています(直す前は、直後に出てくる別の人の名前を拾い、誤警告が出ました)
- 自社の無料プロンプト:Bは、このページの文面を一字一句そのまま使いました。同ページは「議事メモ」向けです

