今回のコラムでは、役に立つと一般に考えられてきた一方で、その有用性を裏づける堅固な研究がほとんど、あるいはまったく存在しなかったプロンプトエンジニアリングの手法を取り上げる。もっぱらの風聞は「その手法には実証的な価値がない」というものだった。
ところが、話は新たな局面を迎える。うれしい方向へ、前向きな方向へだ。最近公表された研究が、そのプロンプトエンジニアリング手法は十分に価値があり、活用してよいことを示したのである。私が指している手法は何かといえば、「プロンプト反復(prompt repetition)」だ。
プロンプト反復とは、プロンプトを入力したら、同じプロンプトを直ちに連結し、プロンプト自体を二重にするという考え方である。たとえば「25の平方根を教えて」と書く代わりに、「25の平方根を教えて。25の平方根を教えて。」と2回書く。確かに奇妙に見える。ばかげている、ひょっとすると不条理だと思うかもしれない。
そう見えるかもしれないが、概してAIからより良い回答が得られるという結果がある。いつでもそうなるわけではない。また、役に立たないどころか、結果を損ねかねない状況もある。心配は無用だ。具体的な条件を示していく。
話を進めよう。
このAIのブレークスルー分析は、AIの最新動向を扱う私のForbes連載の一環であり、影響の大きいAIの複雑性を見つけ出し説明することも含む(こちらのリンク参照)。
プロンプトエンジニアリングの要点
読者は、私が以前、80を超えるプロンプトエンジニアリングの手法と方法を詳細にまとめた記事を投稿したことを思い出すかもしれない(こちらのリンク参照)。経験豊富なプロンプトエンジニアは、研究と実証に裏づけられた幅広いプロンプト手法を学ぶことが、生成AIや大規模言語モデル(LLM)を最大限に活用する最善の道だと理解している。
プロンプトエンジニアリングの重要な論点のひとつは、プロンプトの言い回しである。
有能なプロンプトエンジニアは、LLMがこちらの意図を把握できるよう、プロンプトを慎重に言語化しなければならないことを知っている。言葉を1つ2つ足すだけで、AIがあなたの質問や指示をどう解釈するかが激変することがある。生成AIは、プロンプトで何を言ったかに過敏な場合がある。しばしば、綱渡りのような性質を帯びる。
さらに、コストの問題もあり得る。つまり、LLMの利用が有料であれば、プロンプトがニーズに合っていなければ、意図が伝わったかどうかに関係なく、代金を支払って的外れな回答を受け取ることになる。古い言い回しに「返品不可」があるが、誤解されたプロンプトにも同じことが言える。
カジュアルユーザーは、いら立たしい試行錯誤をかなり重ねてようやく、この「プロンプトの書き方」という論点に気づくことがある。多くのユーザーは、プロンプト作成にとくに熟達することはない。頭に浮かんだことをそのまま入力するだけだ。AIをたまにしか使わないカジュアルユーザーなら、それで問題ないだろう。
しかし、真剣なプロンプトエンジニアにとってはそうではない。
プロンプト反復という手法
同じプロンプトを2回繰り返し、しかも1つの文章として入力すると、AIからより良い結果が得られるという、長らく曖昧な信念があった。ここで注意してほしいのは、同じプロンプトを2行に分けて繰り返すことを言っているのではないという点だ。私は、元のプロンプトと同じ行の中で同じプロンプトを繰り返すことを指している。
明確にしよう。
こうする。
- ユーザーが入力したプロンプト:「世界で最も足が速い人間は誰? 世界で最も足が速い人間は誰?」
こうはしない。
- ユーザーが入力したプロンプト:「世界で最も足が速い人間は誰?」
- ユーザーが入力したプロンプト:「世界で最も足が速い人間は誰?」
狙いは、プロンプトの二重化を1回の入力で起こすことだ。そうすれば、AIは反復された言い回しを一度に利用できる。プロンプトの豪華な盛り合わせである。
余談だが、同一のプロンプトを正確に2回使うことを怠ってはいけない。そうするとプロンプト反復を実行したことにならない。代わりにAIは、1行に2つの異なるプロンプトが含まれていると解釈してしまう。
たとえば、こうしてはいけない。
- ユーザーが入力したプロンプト:「世界で最も足が速い人間は誰? 世界で最も優れて足が速い人間は誰?」
同じプロンプトの2つ目に「優れて」という語を入れてしまうと、AIは2つ目の言い回しを1つ目と同じだとは解釈しない。異様に細かいと思うかもしれないが、現実はそういうものだ。
純粋なプロンプト反復を行いたいなら、完全に同一の文言で繰り返すことだ。以上、それで終わりである。
プロンプト反復のメリットとデメリット
プロンプト反復は、いくつかの重要な要因によって「使うべきかどうか」のグレーゾーンに放置されてきた。
第一に、語数という意味でプロンプトのサイズが増える。元が10語なら20語になる。元が100語なら200語に倍増する。AIはより多くの語を処理しなければならない。語は通常、数値のトークンに変換され、内部処理を経て回答が生成される。トークン化についての私の解説はこちらのリンクを参照されたい。
プロンプト内の語数が2倍になれば、必要な計算処理量も増える。AIの利用が有料の場合、課金の一部が処理されたトークン数に基づくことが多い。プロンプト反復は、トークン使用量を増やし、請求額を上げる行為に等しい。
プロンプト反復が生成される回答に実用的な利益をもたらすのか、誰にも確信がなかったため、入力語数(トークン)の二重化による追加コストが見合うかどうかは、信仰にも似た跳躍を必要としていた。あるプロンプトエンジニアは「きっと価値がある」という内なる信念にしがみついた。直感がそう告げたのだ。別の人々はROIに懐疑的で、この手法をほとんど、あるいはまったく使わなかった。
もうひとつのねじれは、処理時間の増加がレイテンシーを生み得る点である。AIの回答を待っているのに、追加の処理負荷のせいで出力が遅れるかもしれない。通常これは軽微で、プロンプトが数千語に及ぶ場合を除けば問題になりにくい。そうした使い方をする人は少ない。
証拠は結果にある
Googleの研究者による最近の研究は、プロンプト反復が「金の重さに値する」ほど有効であることを示唆する興味深い実験結果を提示した(もちろん金ほどではないかもしれないが、役に立つ傾向はある)。
Yaniv Leviathan、Matan Kalman、Yossi Matiasによる2025年12月17日付の研究「Prompt Repetition Improves Non-Reasoning LLMs」では、次のような重要点が示されている(抜粋):
- 「主要なLLMプロバイダーの7つの人気モデル(規模はさまざま)でプロンプト反復をテストした。Gemini 2.0 FlashおよびGemini 2.0 Flash Lite、GPT-4o-miniおよびGPT-4o、Claude 3 HaikuおよびClaude 3.7 Sonnet、そしてDeepSeek V3である」
- 「7つのベンチマーク(複数の構成)で各モデルをテストした。ARC(Challenge)、OpenBookQA、GSM8K、MMLU-Pro、MATH、そして2つのカスタムベンチマーク(NameIndex、MiddleMatch)である」
- 「推論なしの場合、プロンプト反復は、テストしたすべてのLLMとベンチマークで精度を向上させる」
- 「加えて、レイテンシーへの影響はない。影響を受けるのは並列化可能なプリフィル段階のみである」
- 「プロンプト反復を、2つの追加バリアント(Prompt Repetition(Verbose)とPrompt Repetition×3)と比較した。多くのタスクとモデルで同様の性能を示し、場合によっては通常のプロンプト反復を上回る。したがって、バリアントの追加研究には価値があるように思われる」
これらの注目点を解きほぐしていこう。
分析の性質
主要な側面を順に見ていく。
第一に朗報なのは、研究者が実験で複数のLLMを使ったことだ。なぜ朗報かというと、研究によっては1つのLLM、あるいは単一ブランドのLLMだけを使うことがあるからだ。そうなると、その結果が他のLLMにも当てはまるとは必ずしも言えない。この研究では、異なる複数のLLMで結果が概ね同等だったため、(すぐ後で注意点を述べるが)この手法は主要なLLMのほぼすべてでうまく機能すると、かなり合理的に主張できるだろう。
第二に、研究者は多数のベンチマークを用いた。これも朗報である。LLMを1つのベンチマーク、あるいは1種類のベンチマークだけでテストすると、結果が極端に狭くなる可能性がある。そのベンチマークに含まれる質問の種類だけが、一般化の対象となってしまう。多様なベンチマークを用いたことで、さまざまなプロンプト、さまざまな問い方に結果が適用されると考えるうえで安心材料になる。
結論も朗報である。テストされたベンチマークに基づく限り、検証したLLMの精度はすべて改善した。手を叩いて踊りたくなる話だ。改善に加えて、レイテンシーの増加も無視できる程度だった(これも、プロンプトが平均的な長さで、特別に長いものではなかったことが主因だろう)。
推論という落とし穴
注意深い人なら、結果の改善がAIの「推論(reasoning)」が働く場合には当てはまらないことに気づいたかもしれない。これは決定的に重要な点である。この制約は必ず念頭に置いてほしい。
要点はこうだ。最近のLLMには、プロンプトで質問すると自動的に一種の「推論」を行うものがある。推論は、LLMによる段階的な作業を伴う。生成AIに段階的に考えさせるよう、プロンプトエンジニアリングのコマンドや手法を使って指示することもできる。私はこれをこちらのリンクとこちらのリンクで詳細に述べている。
プロンプト反復の実験では、LLMに推論モードを呼び出すよう指示した場合、あるいはLLMが自動的に推論を行う場合には、結果が目立って改善しないことが示された。プロンプトを二重にしても何も得られない。追加の語数(トークン)に料金を払っているなら、自分に不利なことをしている。
なぜ推論モードは、これほど効果を削ぐのか。
説明は競合しており、真因を断言できる者はいないが、私が最もしっくりくる説明を共有したい。推論なしの状況で二重の言い回しが効く理由は、モデルが最初の言い回しでプロンプトを文脈化し、その上で2回目の言い回しに臨むため、よりよいコンテキストが得られるからだ。いわば、呼び水を差す。
一方、推論を行うモデルは、すでに似たようなことをしている。推論モードはAIに、内部でプロンプトを言い換えさせる。この再符号化は文脈化を助ける。つまり、推論モードは裏側で、ある種の「語の二重化」に似たことをしていると考えられる。ゆえに、推論モードが関与する場合に二重の文言を与える意味はない(「二重の二重化」のようなものだ)。利益なしに余計な作業をしているにすぎない。ポンプはすでに呼び水を差されているのだ。
多ければ多いほど良いのか
鋭い人なら、実験にプロンプト反復の3つのバリエーションが含まれていたことにも気づいただろう。
- (1)バニラ。 プロンプト反復は文言を2倍にする。
- (2)冗長(Verbose)。 途中に文言を挟むプロンプト反復。
- (3)トリプル。 プロンプト反復は文言を3倍にする。
それぞれの状況を示そう。
すでに見たバニラは次のとおりだ。
- ユーザーが入力したプロンプト:「世界で最も足が速い人間は誰? 世界で最も足が速い人間は誰?」
元の文言を、正確にそのまま反復するだけである。
次に冗長版はこうだ。
- ユーザーが入力したプロンプト:「世界で最も足が速い人間は誰? 繰り返すが:世界で最も足が速い人間は誰?」
冗長版とは、プロンプトを繰り返していることを明示する「介在する文言」を挿入することを指す。この場合の文言は「繰り返すが」だ。意図的に反復しているのだとAIに明確な手がかりを与える。
これは、AIに「プロンプトを繰り返しています」と指摘されるのを防ぐ手段として有用かもしれない。そうしたことは時折起こり得る。AIが、あなたがプロンプトを繰り返したことで計算上混乱するかもしれない。あなたがミスしたのではないか、あるいは何か別の意図があるのにAIに示していないのではないか、と疑う可能性がある。その結果、AIがプロンプト処理を遅らせ、プロンプトについて問い返してくることがある。これは良くない。
ただし概して、結果が大きく前進したわけではないので、現時点では冗長版は見送ってよいだろう。今後の研究が、本当に割に合うと示すなら採用すればよい。私としては、正確なプロンプトを繰り返すだけのバニラで十分だと思う。余計な飾りは不要である。
トリプル版は想像どおりで、プロンプトを3回繰り返す。
- ユーザーが入力したプロンプト:「世界で最も足が速い人間は誰? 世界で最も足が速い人間は誰? 世界で最も足が速い人間は誰?」
このトリプルは一定の効果を示した。だがトークン課金が増える点を考えると、私は判断が揺れている。私の見解はこうだ。x4、x5、x10などの研究を見たい。少しの反復が良いなら、たくさんの反復はもっと良いのか、という発想である。私はそれに強い疑いを持っている。逓減点は非常に早く現れると予想する。現時点では、二重反復にとどめるべきだと考える。
ただし、あなたのラッキーナンバーが3なら話は別だ。その場合は好きにすればよい。
まだ祝杯を上げるな
AIが推論モードにあるときはプロンプト反復を使うのは賢明ではないと述べた。これは心に留めるべき重要な制約である。
ほかにも注意点がある。
研究が実施されたのは2025年2月と3月である。これは、テスト対象のLLMを見れば推測できるだろう。GPT-5はテストされていない。Gemini 3もテストされていない。残念なのは、実験としてはやや古い点だ。生成AIの進歩は電光石火の速度で進むことを、あなたも知っているはずである。
私は、最新のLLMでもプロンプト反復は使ってよいと合理的に推測している。繰り返しになるが、推論を呼び出さない、あるいは推論が自動的に呼び出されないことが前提だ。より新しい研究を見つけたら知らせたい。
別の論点として、ベンチマークは主に「決定的な答え」がある質問を対象にしていた。複数選択、正誤、または代数のように、最終的に唯一の答えへと収束する問題を想起してほしい。AIに対する質問の多くが、決定的な答えを必要とする領域に関わるのは確かだろう。その一方で、決定的な答えがあるわけではない、自由度の高い質問も多いはずだ。
たとえば、LLMに卵の調理法を尋ねたとしよう。唯一無二の決定的な答えがあるだろうか。ない。もっともらしい答えは数多い。問題は、プロンプト反復が「決定的ではない答え」に対して実質的な改善をもたらすかどうかである。私のAIラボでは、その種のプロンプトでも効果があるか見極めるためのテストを行っている。近く投稿する記事で詳しく述べるつもりだ。続報を待ってほしい。
二重に見えるのは悪くない
プロンプト反復がついに正面から評価される日を迎えたことに、私は安堵し、喜んでいる。私はこの手法を信じてきた。昔も、今もだ。
プロンプト反復を、人間の思考や行動になぞらえて過剰に持ち上げる人もいる。子どもに同じことを2度言い聞かせて理解させようとするだろう、と彼らは言う。パートナーに対しても同じことをするかもしれない。だからAIにも効くはずだ、と。私はそうした擬人化が好きではない。LLMに文脈化の機会を2度与えているのだ、とだけ合意しておけばよい。SFめいた「生きている」演出にする必要はない。
さて、プロンプト反復を使い始めたとして、ときに効果がないように見えることもあるだろう。私は、あなたが節度をもって使っていると信じたい。これに全面的にのめり込んではいけない。いずれにしても、使いどころに気を配っても、あの古びた車があまり追加の価値を出してくれないことはある。
もうひとつ覚えておくべき重要点がある。どんなプロンプトを使おうとも、生成AIはチョコレートの箱のようなものだ。どんな回答が返るかは分からない。プロンプト反復は、改善をもたらす鉄板の保証ではない。有名な言い回しのとおり、人生で保証されているのは死と税金だけである。
当面は、プロンプト反復をプロンプトエンジニアリングのツールキットと技能の一部として取り入れておくべきだ。そうしてよかったと思うはずだ。そうしてよかったと思うはずだ。



