Zero-shot Prompting
ゼロショットプロンプティング
ぜろしょっとぷろんぷてぃんぐ
Definition
Zero-shot prompting is a method that asks a model to perform a task using only instructions, without providing examples. It is useful for quick trials and simple tasks.
LLMに何かを頼むとき、多くの人は無意識にゼロショットプロンプティングを実践しています。ゼロショットプロンプティングとは、具体的な入出力例を一切示さずに、指示文だけでモデルにタスクを実行させるプロンプト手法です。
最もシンプルなプロンプト手法
「この文章を要約してください」「以下のレビューがポジティブかネガティブか判定してください」——これらはすべてゼロショットプロンプティングです。求めるタスクの説明だけを与え、「こういう入力にはこう返してほしい」という例示を一切含めません。LLMが事前学習で獲得した汎用的な知識と推論能力に全面的に頼るアプローチです。
ゼロショットが有効な場面
ゼロショットプロンプティングは、タスクが一般的で、期待する出力形式が自明な場合に最も効果を発揮します。翻訳、要約、感情分析、質問応答といった広く知られたNLPタスクでは、モデルが学習時に大量の類似タスクに触れているため、例を示さなくても高い精度が期待できます。新しいタスクをすばやく試す際のプロトタイピングにも最適です。プロンプトが短いため入力トークン数が少なく、コスト面でも有利です。
限界を知る
しかし、ゼロショットでは対応しきれない場面も多くあります。独自のフォーマットで出力してほしい場合(たとえば社内独自のレポート形式)、判断基準が暗黙的な場合(「良い」コードレビューコメントとは何か)、あるいはモデルが不慣れなドメイン固有のタスクでは、精度が大きく低下します。出力の一貫性が重要な本番環境では、同じプロンプトでも回答のばらつきが大きくなりやすい点も課題です。
Few-shotへの移行判断
ゼロショットで試してみて結果が不十分な場合、次に検討すべきはFew-shotプロンプティングです。判断基準はシンプルで、出力のフォーマットが安定しない、判断基準を言葉だけで説明しきれない、エッジケースでの挙動を制御したい——これらに該当するなら、2〜3個の具体例を加えることで劇的に改善する場合があります。逆に、ゼロショットで十分な結果が出ているなら、わざわざ例を追加してトークンを消費する必要はありません。
効果を高めるコツ
ゼロショットでも、指示の書き方次第で精度は大きく変わります。「要約して」ではなく「3文以内で、技術者向けに、主要な変更点に焦点を当てて要約してください」のように、対象読者・長さ・焦点を明示することがポイントです。また、出力の形式(JSON、箇条書き、表など)を指定するだけでも、回答の品質と一貫性が向上します。