ゼロショットプロンプティングとは、例を一切添えず、文章による指示だけで出力の形式、トーン、判断基準を明確に伝え、Claudeに直接結果を出させることを指す。これは few-shot prompting(少数例プロンプティング)と同じスペクトラムの両端にある。few-shot はいくつかの例を先に与え、形式やスタイルを模倣させるもので、例そのものが「何を求めているか」を伝える役割を担う。zero-shot はその役割をすべて指示の文章に押し付ける。模倣する例がない以上、指示がどれだけ明確に書かれているかが出力の精度を直接左右する。これこそ zero-shot が「適当に何か打てばいい」と誤解されやすい理由だ。実際には、例という保険がない分、few-shot より高い指示の質が求められ、低くてよいわけではない。
このニーズが生じるのは、例を用意すること自体にコストがかかり、すべてのタスクに使い回せる既存の例があるわけではないからだ。これまでやったことのないタスクを急に任されたとき(特定形式の競合分析を初めて書く、新製品ラインのFAQを初めて作成するなど)、手元には貼り付けられる「過去のうまくいった例」がそもそも存在しない。時間をかけて探したとしても、見つかる例が今回の要件に完全には合致しないことがあり、無理に当てはめるとかえって Claude を模倣すべきでない細部へと誤って導いてしまう。ゼロショットプロンプティングが存在する理由は、多くの職場のタスクが実際には一度きりで、参照できる過去の例が存在しないという現実を認めている点にある。そうした状況では、合わない例を無理に用意するより、指示を明確に書くことに直接力を注ぐ方が、例を探すより通常速く、しかも不適切な例に含まれる無関係な細部に引きずられるリスクもない。
実務では、ゼロショットプロンプティングの精度はほぼ完全に、指示の中で三つのことが明確に伝えられているかどうかで決まる。第一に出力形式だ。箇条書きか段落か、おおよその長さ、項目の固定順序があるかを明記しなければ、Claudeは一般的な形式を推測するしかなく、それが提出先の場面に合っているとは限らない。第二に判断基準だ。タスクに判断が伴う場合(例えば「この苦情メールの語調は行き過ぎと言えるか」)、判断の実際の根拠を明示すべきであり、曖昧な形容詞を投げて「行き過ぎ」の基準をClaudeに勝手に解釈させてはならない。第三に境界条件だ。どの状況を特別扱いすべきか、情報が欠けている場合どう示すべきか。こうした例外は、模倣できる例がない以上、指示自体で明確にしておく必要があり、そうしなければClaudeは最も一般的なデフォルトの扱いをするしかなく、今回のような特殊な状況でずれが生じる。この三点を明確にすることは、通常、例を探すより速く、しかも合わない例に含まれる無関係な細部に誤って導かれることもない。
あなたにとって、ゼロショットプロンプティングの価値は「手間を省く」ことではなく、「一度きりのタスクごとに例のライブラリを溜め込む必要がない」ことにある。本当に検討すべきなのは、このタスクが今後繰り返し発生するかどうかだ。一度きりのタスクであれば、明確なゼロショット指示を書くことに時間をかける方が、例を探したり作ったりするより割に合う。一方、そのタスクが今後毎月発生するなら、最初にゼロショットで満足のいく出力に調整できた時点で、その出力をそのまま保存し次回の few-shot の例として使う価値がある。以降は毎回、形式をゼロから説明し直す手間を省ける。本当に注意すべきリスクは、ゼロショットプロンプティングが指示の質に対する許容度が非常に低い点だ。曖昧な指示にゼロショットを組み合わせると、しばしば「技術的には答えてはいるが求めていたものではない」結果が返ってくる。しかも比較する例がないため、そのずれにすぐ気づけないこともあり、実際に使おうとした段階で初めて発覚することがある。
2022年にGoogleの研究チームが発表した論文『Large Language Models are Zero-Shot Reasoners』は、プロンプトに「Let's think step by step(一歩ずつ考えてみましょう)」という一文を加えるだけで、例を一切与えなくても数学的推論タスクでのモデルの精度が大幅に向上することを発見した。この結果は、ゼロショットプロンプティングの効果が、例の有無だけでなく指示自体の言い回しに大きく左右されることを示している。
メリットは例を探したり作ったりする時間が不要な点で、一度きりで参照できる過去の素材がないタスクに向いており、合わない例に含まれる無関係な細部に誤って導かれることもない。デメリットは指示の明確さに完全に依存し、曖昧さへの許容度が低い点だ。曖昧な指示にゼロショットを組み合わせると、技術的には答えてはいるが求めていたものではない結果が出やすく、比較する例もないため、その問題は実際に出力を使う段階まで気づかれないことが多い。