AI エージェントの「2週間かかります」は、誰の2週間なのか ― 測定されている事実を並べる

に公開

人が巨大な巻き尺を広げて、床に置かれたごく小さな完成物を測っている図。使っている物差しが対象に合っていない

はじめに

コーディングエージェントに作業を頼むと、着手前に見積もりが返ってくることがあります。「フェーズ1に2〜3日、フェーズ2に1〜2日、合計で5〜8日」。そして実際に走らせると、1時間で終わる。

この現象について、ネット上には体験談が大量にあります。一方で「なぜそうなるのか」を、測定された事実だけで説明した日本語の記事はあまり見かけません。推測と実測が混ざったまま流通しているのが現状です。

この記事では、公開されている研究・提供者の検証・一次報告を整理して、次の3点をはっきりさせます。

  • 何が実際に測定されていて、何がまだ推測なのか
  • 効果が数字で確認されている対策は何か(3つしかありません。うち1つは逆効果でした)
  • どこまでを事実として引用してよいのか

なお筆者は、この現象を「あるある」として消費するのではなく、エージェントを日常的に走らせる立場で扱っています。

まず、3つを分けないと誤診する

議論が噛み合わない最大の原因は、性質の違う3つを1つの話にしていることです。

  1. 自己時間 ― AI が「AI 自身がこの作業をするのに何秒かかるか」を答える
  2. 人間時間 ― AI が「人間がこの作業をするのに何時間かかるか」を答える
  3. 時刻認識 ― AI が現在時刻や会話の経過時間を扱う

体験談の多くは「1を聞いたのに 2 が返ってきた」という構造をしています。そして 3 は、まったく別の問題です。この3つは、後述するようにエビデンスの強さも対策も違います。

何が測定されているか

自己時間の見積もりは、実測の 4〜7 倍

この現象を直接測った研究があります(arXiv:2604.00010、査読前)。7カテゴリ・68タスク・4モデルで、「このタスクに何秒かかるか」を事前に答えさせ、実行してウォールクロックと突き合わせています。

  • 事前見積もりは実測の 4〜7倍(p < 0.001)
  • フロンティアモデルの中央値は 4〜6倍
  • ReAct エージェント設定では誤差が 5〜10倍 に拡大。論文はこれを「分解のせい」ではなく、ツールのレイテンシ・リトライループ・デバッグ時間を予測できないことに帰しています
  • 事後リコールも当たらない。GPT-4o はエージェント設定で実測10分を「30秒」と答えています

reasoning effort を上げると倍率は下がります(GPT-5: Minimal 平均10.01倍 → High 4.94倍)。ただし論文は、これを自己認識の改善ではなく「推論トークンが増えて実時間が伸びた結果」と明記しています。数字が近づいた理由が、モデルが賢くなったからではなく、実測値のほうが伸びたから、というわけです。

ところが、人間時間の推定はかなり正確

同じ AI が「人間ならどれくらいか」を答えると、精度が変わります。Anthropic は 10万件の会話について推定させ、さらに 1,000 件の実際の開発チケットで実績時間と突き合わせています。

  • 順位相関(Spearman)で 人間の開発者本人が 0.50、Claude Sonnet 4.5 が 0.44
  • ただし短いタスクを大きく過大評価し、長いタスクを過小評価する(同社が明記)
  • few-shot で正解例を10個与えると 0.39 に悪化

同社が最も極端な例として挙げているのは、AI なしなら 4.5 時間と見積もられた教材開発の作業が、実際には 11 分で終わった、というものです。

ここが重要な分岐点です。4.5 時間という数字は壊れていません。人が手でやった場合の見積もりとしては妥当です。壊れているのは、その数字が「AI に頼んだ場合」の答えとして返ってきていることのほうです。

時刻認識は、そもそも外部注入

現在日付は、モデルが内在的に知っている情報ではありません。Anthropic は公式ドキュメントで、claude.ai とモバイルアプリが「毎会話の冒頭にシステムプロンプトで現在の日付などを提供する」と記述しています。Claude Code には、UserPromptSubmit フックで毎ターン任意の文字列をコンテキストに注入する仕組みがあり、ここに時刻を入れる運用が可能です。

つまり 3 は、モデルの能力の問題ではなく、プロダクト側の設計事項です。渡せば解決し、渡さなければ去年のカレンダーで話し始めます。

「AI も人間と同じでバッファを盛る」は逆

よく共有されている説明ですが、方向が逆です。

人間の見積もりバイアスは 過小 です。計画錯誤と呼ばれ、ソフトウェア工学のレビューでは平均で3割ほどの工数超過が報告されています。だから納期は遅れます。

AI の自己時間見積もりは 過大 です。しかも、外す理由も違います。人間は過去の類似タスクを実際より短く記憶しているせいで外すので、新規タスクではこの偏りが消えます。AI の場合はそこではなく、論文の言い方を借りれば「所要時間についての命題的知識は訓練から持っているが、自分自身の推論時間への経験的接地がない」ためです。

両者に共通しているのは符号ではなく、レンジの圧縮のほうです。短い時間を長めに、長い時間を短めに言う傾向は、19世紀に人間の時間知覚について記述されたヴィエロルトの法則と方向が一致します。

「AI に時間の感覚はない」も、そのままでは正しくない

これも雑な要約です。

EMNLP 2025 Findings の研究では、2つの応答のうちどちらの生成に時間がかかったかを判定させたところ、時間的手がかりを与えなくても Llama-3.3-70B が 91.3%、QwQ-32B が 91.5% で当てています。論文はこれを Token-Time 仮説、つまりトークン数を離散的な時間単位として扱っているのだと説明しています。

さらに Gurnee & Tegmark は、Llama-2 の内部に線形の時間表現(いわゆる time neurons)を見つけています。ただし対象は歴史的な年代軸で、自分の推論の経過時間ではありません。

証拠に忠実に言うなら、こうなります。トークン数という代理変数を介した相対的な長短の表現はある。実時間の観測はない。

関連して示唆的なのが、60モデルに線形プローブをかけた研究です。「人間にとってこの問題がどれくらい難しいか」はモデル内部に強く符号化されている(AMC で ρ ≈ 0.88)一方、「LLM 自身にとっての難易度」は著しく弱く、しかも GRPO 学習が進むほど劣化してテスト精度と負相関になります。他者の難易度は分かるが、自分の難易度は分からない。時間の話は、その一例と見ることができます。

効果が数字で確認されている対策は3つだけ

ここが実務的に一番使えるところです。「効くと言われている対策」は無数にありますが、効果が数値で報告されているものは、調べた限り3つしかありません。しかもうち1つは悪化しています。

対策 効果 出所
誤差をインコンテキストでフィードバックする GPT-5 の平均過大が 13.2倍 → 2.3倍 arXiv:2604.00010
reasoning effort を上げる GPT-5: 10.01倍 → 4.94倍(ただし実時間が伸びた副作用) 同上
正解例を few-shot で与える 悪化(Spearman 0.50 → 0.39) Anthropic

誤差フィードバックというのは、「あなたは120秒と言ったが、実際は28.8秒だった。4.2倍の過大です」と伝える方式です。ただし論文は、個別誤差が2〜4倍残ること、ベースラインとテストのタスクが異なるため直接比較は交絡していることも明記しています。万能ではありません。

逆に、失敗が報告されている対策

コミュニティでよく提案されるのが「時間ではなく複雑さやトークン量で見積もらせる」という方法です。これについては、実際に設定へ入れたところ モデルに完全に無視されたので外した という報告があります。言い方を変えるだけの対策は、モデルが従うとは限りません。

もう一つよくあるのが「見積もりを一切出すな」と設定に書く方式です。実際にそうしている人は多く、体験報告としては機能しています。ただしこれは、人間時間の推定としては 0.44 の精度を持つ情報を丸ごと捨てる選択でもあります。

現場でどう扱うか

以上を踏まえると、実務での扱いはこうなります。

宛先を明示する。 「これはあなた(エージェント)が実行します」と書く。逆に人間の工数を知りたいなら「人が手でやった場合」と書く。同じ数字でも意味が変わります。なお、AI が実行すると明示しても期間がほとんど縮まなかった、という報告もあるので、これは万能ではありません。

単一の数字を受け取らない。 実装そのものの時間と、人間のレビューや承認を待つ時間と、外部要因の待ち時間は別の軸です。分けて出させれば、混ざった数字を鵜呑みにする余地が減ります。

時刻は注入する。 Claude Code なら UserPromptSubmit フックで毎ターン渡せます。これは対策というより、渡さないほうがおかしい類の設定です。

「あと10分」を待たない。 モデルが自律的にバックグラウンドで処理を続けているわけではないので、待っても進みません。すぐに催促するのが正しい挙動です。

引用するときの注意

最後に、この分野の証拠の弱さを書いておきます。ここを飛ばして数字だけ引用すると、そのうち足をすくわれます。

  • 自己時間を直接測った研究は、事実上1本しかありません。 査読前、68の英語タスク、4モデル、実測レンジは1〜90秒です。「数週間と言われた作業が2分で終わった」という体験談の桁(数百〜数千倍)とは、そもそもスケールが違います。同じ現象として扱うには根拠が足りません。
  • 体験談の「何倍」は、ほぼすべて換算依存の参考値です。 「1週間」を営業日40時間で計算するか暦日168時間で計算するかで、数倍動きます。投稿者が換算前提を明言しているケースはほとんどありません。
  • 投稿バイアスがあります。 面白いズレほど投稿されます。「見積もりが妥当だった」という投稿がわざわざ立つこと自体が、この偏りの存在を示しています。母集団に対する発生率は、誰も測っていません。
  • 方向は一様ではありません。 小型モデルは難しいタスクで過小方向に振れます(OLMo3-7B は very hard で 0.39倍)。thinking モードをオンにすると過小になるケースもあります(Qwen3-8B で 0.59倍)。「AI は必ず過大に言う」は言い過ぎです。

まとめ

  • 自己時間の見積もりは実測の4〜7倍。ただし直接研究は1本で、レンジも限定的
  • 人間時間の推定は担当者本人に近い精度(0.44 対 0.50)。数字が壊れているのではなく、答えている質問が違う
  • 「AI も人間と同じでバッファを盛る」は方向が逆。人間は過小、AI は過大
  • 「AI に時間の感覚はない」も不正確。相対的な長短は9割方当てる。ないのは実時間の観測
  • 効果が数値で確認された対策は3つ、うち1つは悪化。「複雑さで見積もらせる」は無視された報告あり

この現象を「では業務やチームの意思決定にどう影響するか」という視点で整理したものは、運営元の lab note にあります。
https://nihonbashi.ai/blog/why-ai-overestimates-time

Discussion