プロンプト設計は「気持ちのこもった文章を書く」のではなく、出力のばらつきを構造で抑える作業 である。案件で実際に効いた10個のテクニックを整理する。
1. 役割を明示する
「あなたは経験15年のセキュリティエンジニアである」のように役割を与えると、前提知識の深さが揃う。抽象論を避けたいときほど効く。
2. 出力形式を固定する
JSON スキーマを文字列で貼り付け、「このスキーマに厳密に従え。余計な文章は出すな」と書く。後続処理でパースが安定する。
出力は以下のJSONのみ:
{"intent": "...", "entities": ["..."], "confidence": 0.0}
3. Few-shot で期待形式を見せる
説明より例示のほうが速い。2〜5個の入出力例を与えるだけで、指示の抜けを吸収してくれる。
4. Chain of Thought を誘導する
難しい推論は「まず前提を整理し、次に計算し、最後に答えを出せ」と段階を切ると精度が上がる。Claude / GPT の新しいモデルは内部で推論するので CoT 指示は不要なケースも増えているが、プロセスを出力して欲しいとき には依然有効。
5. XML タグで入力の境界を明示する
Claude は XML タグに特に強い。ユーザー入力と指示を混同されたくないとき有効。
<instruction>以下の文章を3行で要約せよ</instruction>
<document>{text}</document>
6. 否定より肯定で書く
「〜するな」より「〜せよ」のほうが従いやすい。禁止事項を書く場合は、代わりにどう振る舞うかをセットで指定する。
7. 出力の先頭を指定する
アシスタントの応答の先頭を { や <answer> で始めさせると、余計な前置きを封じられる。API なら assistant prefill、ChatGPT なら「{ から書き始めよ」と明示する。
8. 制約をリストで並べる
「守るべき制約:」と箇条書きにすると順守率が上がる。長文の段落に埋め込むより明らかに効く。
9. 自己チェックを挟む
「回答を出す前に、制約違反が無いか検査し、違反があれば書き直せ」と入れると、ルール遵守率が改善する。精密な業務用途では有効。
10. 温度と max_tokens を意識する
プロンプトではないが並べておく。分類・抽出は temperature=0、創造的生成は 0.7〜1.0 が目安。max_tokens が短すぎると途中で切れるので、想定出力長の1.5倍を確保する。
実務で効く順位
1〜3と5が労力対効果で抜群に高い。CoT や自己チェックは精度要件が厳しい場合に追加する。プロンプトの良し悪しは評価セットでしか測れない ので、入力10件程度のミニベンチを最初に用意してから改善に入るのが結局いちばん速い。