業務用スクリプトの依頼文に入力・出力・エラー処理のルールを入れる
「これを自動化して」を、実行可能な task description に変えます。sensitive data を含まない合成 sample と、手作業で確認した expected result を添えて、team ごとの work logs を集計する script request を完成させます。
AIチャットアシスタントで会議の文字起こしを整理し、すべての決定事項、担当者、期限、アクション項目を元の文字起こしと照合して確認します。小さな合成例とPythonによるチェック方法で、繰り返し使える確認手順を示します。
この翻訳はAIで作成しました。コード、単位、数値は原文と併せて確認してください。各言語のネイティブ話者による校閲は、まだ完了していません。 English
対象読者AIチャットアシスタントで会議内容を要約し、作成された議事録が実際の文字起こしを正確に反映しているか確認したい実務担当者向けです。
AIチャットアシスタントは長い文字起こしを短い議事録に整理できますが、要約の過程で意味が変わることがあります。検討中の提案が確定事項になったり、担当者が別の人に割り当てられたり、誰も明示していない期限が追加されたりすることがあります。議事録は後で担当や期限を確認する記録として使われるため、こうした違いは重要です。
以下は合成した例です。安全な進め方は、AIに文字起こしを整理させた後、すべての決定事項とアクション項目を元の文字起こしまで戻って確認することです。
架空のプロジェクトチームが試験レポートについて話し合ったとします。文字起こしには次の発言があります。
| 発言者 | 文字起こしの抜粋 |
|---|---|
| Mina | Let's use the revised template for the October report. |
| Leo | Agreed. I'll update the template and send it by October 6. |
| Sara | I can review the figures after Leo sends it. |
| Mina | Good. We should decide next week whether to add the appendix. |
| Leo | The supplier data may arrive on October 8, but that is not confirmed. |
この発言から、1つの決定事項は明確です。チームはOctober reportにrevised templateを使うことにしました。アクション項目も1つ明確で、Leoがtemplateを更新し、October 6までに送ると述べています。SaraはLeoが送った後にfiguresを確認するとしていますが、Saraの具体的な日付期限は示されていません。appendixの追加はまだ決定されておらず、October 8はsupplier dataが届く可能性のある日で、確定日ではありません。
AIに議事録を作らせるときは、確定事項と未解決事項を分けるよう指定します。これにより、提案や予想が確定した決定として書き換えられる可能性を下げられます。
妥当なAI回答なら、revised October report templateの使用をconfirmed decisionとして、Leo — update and send the template — October 6をaction itemとして整理できます。Sara — review the figures after Leo sends the templateは別のaction itemですが、deadlineはnot statedにする必要があります。appendixの判断とsupplier dataの時期はunresolved itemsとして残します。
| 議事録の候補 | 確認結果 |
|---|---|
| Use the revised template for the October report. | 決定事項として根拠があります。 |
| Leo will update and send the template by October 6. | アクション、担当者、期限のすべてに根拠があります。 |
| Sara will review the figures by October 8. | 根拠がありません。Saraは確認作業を引き受けていますが、October 8はsupplier dataの到着可能日です。 |
| The appendix will be added. | 根拠がありません。文字起こしでは来週決めると述べています。 |
| Supplier data will arrive on October 8. | 確定表現としては根拠がありません。文字起こしではその日に届く可能性があるものの、未確定とされています。 |
次の標準ライブラリだけを使うスクリプトは、この合成例で確認したい主要な主張と根拠フレーズを使います。transcript.txtに根拠となる表現が含まれているか確認し、結果をoutputs/minutes_check_report.txtに保存します。この方法だけで議事録の正しさを証明することはできませんが、重要な項目ごとに文字起こし上の根拠を確認する手順を作れます。
from pathlib import Path
import sys
TRANSCRIPT_PATH = Path("transcript.txt")
OUTPUT_DIR = Path("outputs")
REPORT_PATH = OUTPUT_DIR / "minutes_check_report.txt"
if not TRANSCRIPT_PATH.is_file():
sys.exit("Missing input file: transcript.txt")
if OUTPUT_DIR.exists():
sys.exit("Stop: outputs folder already exists. Remove or rename it manually first.")
checks = [
{
"item": "Decision: use the revised template for the October report",
"required_phrases": [
"Let's use the revised template for the October report.",
"Agreed."
],
},
{
"item": "Action: Leo updates and sends the template by October 6",
"required_phrases": [
"I'll update the template and send it by October 6."
],
},
{
"item": "Action: Sara reviews the figures after Leo sends the template",
"required_phrases": [
"I can review the figures after Leo sends it."
],
},
{
"item": "Unresolved: appendix decision",
"required_phrases": [
"We should decide next week whether to add the appendix."
],
},
{
"item": "Uncertain date: supplier data may arrive October 8",
"required_phrases": [
"may arrive on October 8",
"not confirmed"
],
},
]
transcript = TRANSCRIPT_PATH.read_text(encoding="utf-8")
transcript_lower = transcript.lower()
lines = []
lines.append("AI MEETING MINUTES CHECK")
lines.append("========================")
for check in checks:
missing = [
phrase for phrase in check["required_phrases"]
if phrase.lower() not in transcript_lower
]
if missing:
lines.append(f"CHECK: {check['item']}")
for phrase in missing:
lines.append(f" Missing evidence phrase: {phrase}")
else:
lines.append(f"PASS: {check['item']}")
lines.append("")
lines.append("Manual checks still required:")
lines.append("- Compare every decision in the minutes with its transcript context.")
lines.append("- Verify each action owner and deadline separately.")
lines.append("- Do not turn tentative wording into confirmed commitments.")
lines.append("- Check whether transcript errors or speaker labels affect attribution.")
OUTPUT_DIR.mkdir()
REPORT_PATH.write_text("\n".join(lines) + "\n", encoding="utf-8")
print(f"Created: {REPORT_PATH}")
文字起こしをtranscript.txt、スクリプトをminutes_check.pyとして保存し、python minutes_check.pyを実行します。スクリプト内のフレーズはこの合成例専用です。実際の会議では、作成された議事録の重要な主張ごとにチェック項目を作り、それを裏付ける文字起こしの発言と対応付けます。
文字起こし自体にも誤りが含まれることがあります。特に氏名、専門用語、数値、複数人が同時に話した箇所では自動文字起こしの誤りが起きやすくなります。そのため、議事録を文字起こしと照合する作業は、利用できる記録と一致するかを確認するものであり、文字起こしが会議内容を完全に正しく記録したことまで証明するものではありません。
実務では、AIが作成した議事録を正式な記録ではなく、構造化された下書きとして扱うのが適切です。決定や約束の影響が大きいほど、元の文字起こしまで戻って表現を確認し、必要に応じて会議参加者にも確認することが重要です。
2026-09-21 · hand-checked example · Python 3.12
説明と例は独自に作成しました。関連する動作や概念は、以下の公式資料で確認できます。