効果的なプロンプトの構造 — 指示・文脈・制約・例示の役割を分解する
プロンプトは指示・文脈・制約・例示という4つの要素に分解できる。要素ごとの役割を理解すると、出力のばらつきを減らすテンプレートを再現性高く設計できる。
安定した出力を返すプロンプトは、指示・文脈・制約・例示という4つの要素で構成されています。どれか1つでも欠けると、モデルは残りの空白を学習データの平均的なパターンで埋めてしまい、出力のばらつきが増えます。例示(few-shot)は形式を固定するのに有効ですが、細部を過剰に模倣させてしまう副作用もあるため、使い方には条件があります。
プロンプトは4つの要素でできている
「会議の議事録を要約して」という一文だけを打ち込むと、出力は毎回微妙に違う長さと粒度になります。理由は単純で、モデルに渡っている情報が「指示」しかないからです。生成AIがトークンを1つずつ予測して文章を組み立てる仕組みを踏まえると、指示以外の情報——文脈や制約——が少ないほど、モデルは学習データの中で最も頻度の高いパターンで空白を埋めることになります。
次は、実務でよく使われる議事録要約プロンプトの骨格です。
指示: 「以下の会議メモを要約してください」
文脈: 「これは週次の営業会議で、参加者は営業部の5名です。目的は決定事項の共有です」
制約: 「箇条書き3〜5項目、各項目40字以内、決定事項と保留事項を分けて出力してください」
例示: (実際の議事録と要約のペアを1組貼り付ける)
指示だけのプロンプトと、この4要素を揃えたプロンプトを同じ議事録で試すと、後者は要約の粒度が毎回そろい、箇条書きの数もぶれにくくなります。これは指示文の巧拙の差ではなく、モデルが埋めるべき「余白」がどれだけ残っているかの差です。
文脈を省くと、モデルは何で埋め合わせるのか
文脈がない指示は、モデルが学習データの中央値的なパターンで埋め合わせます。「メールの返信文を書いて」だけでは、宛先が社内なのか取引先なのか、返信のトーンをどう取るべきかをモデルは判断できず、無難で当たり障りのない文面に寄っていきます。文脈を1〜2文足すだけで出力は大きく変わります。たとえば「取引先の担当者からの納期遅延の詫びメールに返信する。当社は納期を了承する立場」と書けば、トーンと結論の両方が固定されます。
文脈は「誰が」「何のために」「どんな状況で」の3点を押さえれば十分で、長い背景説明を書くほど精度が上がるわけではありません。むしろ余計な情報を足すと、モデルがその情報に引きずられて本題からずれた出力を返すことがあります。
制約は否定形より出力形式で指定する
「専門用語を使わないで」のような否定形の制約は、モデルにとって曖昧です。「専門用語」の線引きが人によって違うためです。代わりに「中学生にも分かる言葉で」「1文を40字以内で」のように、判定可能な基準を渡すと出力が安定します。文字数・箇条書きの数・見出しの有無・出力言語——数えられる制約ほど再現性が高くなります。
もっとも、制約を細かく積み上げすぎると、モデルが制約同士の優先順位をつけられず、一部を無視することがあります。制約は3〜4個までにとどめ、それ以上必要な場合はプロンプト自体をタスク別に分けるほうが安定します。
例示が効く場面、逆効果になる場面
例示(few-shot)は、出力の「形式」をモデルに固定させたいときに効果を発揮します。分類ラベルの表記ゆれをそろえたい、決まったフォーマットのJSONを返してほしい、といった場面では、指示文だけより例を1〜2組見せるほうが安定します。この傾向は、大規模言語モデルが少数の例示だけで新しいタスクパターンに適応できることを示した研究(Brown et al., arXiv:2005.14165)の観察とも重なります。
一方で、例示は諸刃の剣でもあります。例に含まれる細部——固有名詞、文体、数値の桁——をモデルがそのまま模倣してしまい、内容ではなく体裁だけを再現することがあります。たとえば「レビュー文の例」として星5の絶賛レビューを1件だけ見せると、評価内容に関わらず出力が絶賛寄りに偏る、といった具合です。例示を使うときは、対象タスクの多様性をカバーする2〜3件を選び、内容面で極端に偏った例を避ける必要があります。
システムプロンプトとユーザープロンプトを分けて使う
ChatGPTのカスタム指示やClaudeのシステムプロンプトは、会話全体に効く「恒常的なルール」を置く場所です。口調、出力言語、避けるべき話題といった、毎回変わらない条件はここに書き、個別のタスク内容——今日要約したい議事録そのもの——はユーザープロンプト(通常のメッセージ)に書き分けると、プロンプトの再利用性が上がります。システムプロンプトに毎回のタスク内容まで詰め込むと、タスクが変わるたびに書き直しが必要になり、テンプレートとして使い回せなくなります。
この役割分担はOpenAIとAnthropicが公開しているプロンプト設計ガイドでも共通して推奨されている考え方です(本稿執筆時点)。指示・文脈・制約・例示の4要素のうち、指示と制約の一部をシステム側に固定し、文脈と例示をユーザー側で可変にする配置が、実務では扱いやすくなります。
テンプレート化の先にある限界
4要素に分解してテンプレート化すると、プロンプトの再現性は大きく上がります。とはいえ、テンプレートが解決するのは「指示の粒度」の問題であり、モデルの知識不足や事実誤認までは直しません。文脈や例示をどれだけ整えても、モデルが持っていない情報について聞けば、もっともらしい誤答が返ってくる可能性は残ります。プロンプトの設計は出力のばらつきを減らす技術であって、正確性を保証する技術ではない、という前提を持っておく必要があります。
この4要素の分解は、要約だけでなく文書を要約・抽出・比較する実務や、定型業務にChatGPTを組み込む場面でも同じ枠組みが使えます。次に必要なのは、テンプレートを個々のタスクに合わせてどこまで固定し、どこを可変にするかという設計判断です。
参考文献
- OpenAI. "Prompt engineering." OpenAI Platform Documentation. 本稿執筆時点(2026年8月)。
- Anthropic. "Prompt engineering overview." Claude Docs. 本稿執筆時点(2026年8月)。
- Brown, T. et al. "Language Models are Few-Shot Learners." arXiv:2005.14165, 2020.