Zero-shot Prompting:例示なしでLLMの力を引き出す基本技法
例示を一切使わずにLLMへタスクを指示するZero-shot Promptingの原理、実践例、効果的な使い方と限界を解説します。
Zero-shot Prompting とは
Zero-shot Prompting は、プロンプトに入出力の例示(デモンストレーション)を一切含めず、タスクの指示だけでLLMに回答させる最もシンプルなプロンプティング手法です。モデルが事前学習とInstruction Tuning/RLHFで獲得した知識のみを頼りに推論を行います。
「ゼロショット」という名前は機械学習の用語に由来し、「学習時に見たことのないタスクを、例示なしで遂行する」という意味です。GPT-3以降の大規模言語モデルは、膨大なテキストデータで訓練されているため、明確な指示さえあれば多くのタスクをゼロショットでこなせます。
なぜゼロショットが機能するのか
ゼロショットが実用的に機能するようになった背景には、2つの技術的進歩があります。
- Instruction Tuning:タスクを自然言語の指示文で記述したデータセットでモデルをファインチューニングする手法。これによりモデルは「指示に従う」能力を獲得しました。
- RLHF(人間のフィードバックによる強化学習):人間の好みに沿った出力を生成するようモデルを調整する手法。ChatGPTやClaudeの対話能力の基盤です。
具体的なプロンプト例
例1:感情分析(テキスト分類)
以下のテキストの感情をポジティブ・ネガティブ・ニュートラルに分類してください。
テキスト: 「今日の会議は予想以上に建設的で、新しいアイデアがたくさん出ました。」
分類:
出力例:ポジティブ
シンプルな分類タスクでは、例示なしでも高い精度が得られます。GPT-3の研究ではSuperGLUEベンチマークで81.5 F1スコアを達成しています。
例2:構造化データの抽出
以下のメールから、送信者名・日時・要件を抽出してJSON形式で返してください。
---
お疲れ様です。営業部の山田です。
4月15日の14時から会議室Aで、来期の予算についてのミーティングを
お願いしたいのですが、ご都合いかがでしょうか。
---
出力例:
{
"sender": "山田",
"department": "営業部",
"datetime": "4月15日 14:00",
"location": "会議室A",
"subject": "来期の予算ミーティング"
}
出力フォーマットを明示することで、ゼロショットでも構造化された出力が得られます。
例3:コードレビュー
以下のPython関数のバグを指摘し、修正案を提示してください。
def calculate_average(numbers):
total = 0
for n in numbers:
total += n
return total / len(numbers)
このようなコード解析タスクも、指示が明確であればゼロショットで十分に対応できます。
効果を高めるベストプラクティス
1. 指示を明確かつ具体的に書く
曖昧な指示はゼロショットの最大の敵です。「良い感じにまとめて」ではなく、「3つの箇条書きで要約してください」のように具体的に指示しましょう。
2. 出力フォーマットを指定する
「JSON形式で」「箇条書きで」「表形式で」など、期待する出力の形式を明示すると精度が上がります。
3. 役割(ロール)を付与する
あなたはシニアセキュリティエンジニアです。
以下のコードにセキュリティ上の脆弱性がないか確認してください。
ロール指定により、モデルの応答の専門性と深さが向上します。
いつ使うべきか
- 単純で明確なタスク:要約、翻訳、感情分析、テキスト分類など
- モデルの事前知識で対応可能なタスク:一般常識、広く知られた技術的知識に基づく質問
- 出力フォーマットが標準的なタスク:JSON変換、箇条書き要約など
- プロトタイピング段階:まずゼロショットで試し、精度が不足したらFew-shotに移行する
ゼロショットは常に最初に試すべきベースラインです。例示の作成コスト(時間・トークン)がゼロなので、十分な精度が出るなら最もコスト効率の良い手法です。
注意点・限界
複雑な推論タスクには不向き
多段階の論理的推論や数学的計算では、ゼロショットの精度は大幅に低下します。Wei et al.(2022)の研究では、算術推論タスクにおいてゼロショットとChain-of-Thought(CoT)の間に最大+18%の精度差が確認されています。
出力フォーマットの不安定さ
例示がないため、モデルが期待と異なるフォーマットで回答する場合があります。特に複雑な構造の出力では、Few-shotで「こういう形式で」と示した方が安定します。
モデルサイズへの依存
ゼロショット能力はモデルの規模に強く依存します。小規模モデルではゼロショットの精度が著しく低下するため、Few-shotやファインチューニングが必要になるケースが増えます。
2026年時点の位置づけ
Claude 3.5、GPT-4o、Gemini 2.0などの最新モデルでは、Instruction TuningとRLHFの進化により、ゼロショット能力が大幅に向上しています。以前はFew-shotが必須だったタスクの多くが、今ではゼロショットで十分な精度を出せるようになりました。ただし、ドメイン固有のフォーマットや専門的な判断基準が必要なタスクでは、依然としてFew-shotが有効です。