「AI 開発してます」を見極める 10 の質問 — 素人のための解説|2026-08 版
第 10 章Q8

Q8 モデル選定の判断基準

レイテンシ・品質・コストの三角形。測らずに選ぶのは勘で選ぶのと同じ

Q8. モデル選定の判断基準

タスクごとにモデルを選ぶとき、レイテンシ・品質・コストのどれを優先してどう判断していますか? 実際にA/Bテストや簡易ベンチで比較した例を教えてください。

出典: @voidwarriorchan の投稿(2026-08-25)
この章で分かること

この質問は何を聞いているのか

レイテンシ(latency)は、プロンプトを送ってから応答が返るまでの遅延で、モデルの大きさやプロンプト・出力の複雑さに左右される。品質は各社で呼び方が違い、Anthropicは「capabilities(能力)」、OpenAIは「accuracy(精度)」と呼ぶが、いずれも「タスクをどれだけ正しくこなせるか」を指す。コストは一見シンプルだが、後述のとおり「トークン単価」と「タスク完了あたりの実際の支払い」は別物である。

A/Bテストは本番トラフィックをモデル間で分けて挙動を比較する手法、簡易ベンチは本番投入前に正解付きのgolden setで候補を走らせる事前のオフライン評価を指す(型は実務の節で扱う)。どちらも「候補を実測して比較する」という点で共通し、直感や公開ベンチマーク(= 各社が共通の問題で性能を測り公表する評価指標)だけで決めることの対極にある。

つまりこの質問は、複数の候補モデル、および同じモデル内のeffort(= 思考量やトークン消費を段階的に変える設定。次節で説明する)の中から、レイテンシ・品質・コストのどれを優先してタスクに割り当てているか、そしてその判断を勘や公開スコアだけでなく自分たちのタスクを使った比較実験で裏付けた経験があるかを尋ねている。候補者がモデル選定を「1回選んで終わり」ではなく「測り続ける仕組み」として扱っているかを、この質問への回答から測ることができる。

レイテンシ・品質・コストの三角形と、effortという第4の軸

Anthropicは「capabilities(能力)・speed(速さ)・cost(コスト)のバランス」がモデル選定だと説明し、OpenAIも「accuracy(精度)・latency(レイテンシ)・cost(コスト)のバランス」と同じ構造を示す。基本則はシンプルで、上位モデルほど遅く高くなる。Anthropicの比較表(2026-08 時点)ではHaiku 4.5→Sonnet 5→Opus 5→Fable 5の順にComparative latency(相対的な速さ)が「Fastest→Fast→Moderate→Slower」、料金(入力/出力・100万トークンあたり)が「$1/$5→$2/$10→$5/$25→$10/$50」と並ぶ。OpenAIもLuna・Terra・Sol、GoogleもFlash-Lite・Flash・Pro(Preview)と、料金と能力が段になる同じ階層構造を持つ。

モデル階層は上ほど遅く高い 品質↑ コスト↑ レイテンシ↑ Claude Fable 5 $10 / $50(100万トークンあたり) Claude Opus 5 $5 / $25(100万トークンあたり) Claude Sonnet 5 $2 / $10(100万トークンあたり) Claude Haiku 4.5 $1 / $5(100万トークンあたり) 同じモデルの中の effort(第4の軸) Claude Opus 5 既定 low medium high xhigh max ← 効率重視・低コスト 能力重視・高コスト →
図 10-1 モデルは階層が上がるほど遅く高価になる(Comparative latency: Slower→Fastest、料金はAnthropicの例、2026-08 時点)。同じモデル(Opus・Sonnet系。Haiku 4.5は非対応)の中でも effort(思考量やトークン消費を段階的に変えるパラメータ)を動かせば、モデルを替えずにコストとレイテンシを調整できる。

Anthropicはこのeffort(Opus・Sonnet系のモデルが対応し、Haiku 4.5は非対応)を「モデル切替よりも有効なことが多いレバー」と位置づけ、5段階(low / medium / high / xhigh / max)で提供する。OpenAIもreasoning.effortという同種のパラメータ(none〜max、モデル依存)を持ち、Googleは thinking level(low / medium / high)という形で似た調整軸を持つ。下表の用途欄に出てくるエージェント(= モデルがツールを呼びながら複数の手順を自律的に進める使い方)とサブエージェント(= その中で下請けとして小さな作業を担う別のモデル呼び出し)も、この後の節で繰り返し使う言葉である。

段階効果想定用途
low最も効率的。トークン消費を大きく抑えるが能力はやや落ちるサブエージェントなど、速さとコストを優先する単純なタスク
medium速さ・コスト・性能のバランス型で、程よいトークン節約速さとコストと性能のバランスが要るエージェント作業
high(既定)高い能力。パラメータを指定しない場合と同じ複雑な推論、難しいコーディング、エージェントタスク
xhigh長時間タスク向けに能力を拡張。トークン予算は数百万規模30分を超える長時間のエージェント・コーディング作業
maxトークン消費に制約を設けない最大の能力最も深い推論が必要なタスク

トークン単価ではなく「タスク完了あたりのコスト」で見る

料金表は100万トークンあたりの単価で書かれているため、単価だけを見るとFable 5はSonnet 5より何倍も高く見える。だがAnthropicは「実際に払っているのはタスク完了ぶんのコストであって、トークン単価ではない」と明言する。より能力の高いモデルは、少ないやり取り(ターン数)・少ない探索・少ない読み直しでタスクを終えられるため、単価の高さが「作業量の少なさ」で相殺されることがある。

単価だけで比べると 単価は5倍(計算例) Claude Sonnet 5 $2 / $10 Claude Fable 5 $10 / $50 価格表とは逆転 タスク完了あたりで比べると 少ターンの方が逆転して安い Claude Sonnet 5 (作業量が多い) Fable 5(low) (少ターンで完了)
図 10-2 トークン単価だけで見るとFable 5はSonnet 5よりずっと高く見えるが、DeepResearch Bench II(調査レポート作成のベンチマーク)の実測ではFable 5をlow effortで動かした方が中位モデルより高精度で、タスク完了あたりのコストは約10%安かった。Anthropicの説明では、ターン数・やり直しの少なさが単価の差を吸収する。

ただし、上位モデルが常に勝つわけではない。SWE-bench Pro(コーディング課題のベンチマーク)のサブセットでは、Opus 5単体がFable 5単体と同水準の精度(91.7%対91.3%、実測のばらつきの範囲内)を約60%のコストで達成しており、この場合は単価の安いモデルがタスク完了あたりのコストでも安かった。GPQA Diamond(大学院レベルの専門知識を問う問題集)では、Haiku 4.5はOpus 5の約10分の1のコストだったが、精度は63%対92%と大きく落ちた——こちらは安いモデルが安いまま、精度だけが下がった例である。「順位はワークロードによって反転し、価格表だけではどちらが勝つか分からない」——だからこそAnthropicは、候補のすべてを自分のトラフィックで「タスク完了あたりのコスト」に換算して測ることを求めている。

比較は中央値ではなく「テール(一番難しい1割)」で見ることも重要だ。典型的なタスクではどのモデルも似た結果になり一番安いモデルが最良に見えるが、実際の請求額を決めるのは安いモデルが失敗するタスクの方で、失敗した分のトークン・再試行・後始末のコストが乗ってくる。あるベンチマークでは20問中たった2問が支出全体の43%を占めた。

実務では何をするのか

golden setを作り、候補を並べ、表にする

Anthropicは選定の4ステップを示す。①ユースケース専用のベンチマークを作る(最重要とされる)。②実際のプロンプトとデータでテストする。③精度・応答品質・エッジケースへの対応を候補間で比較する。④性能とコストのトレードオフを検討する。golden set(正解付きの評価用データセット)の作り方は出典によって起点が違う。Anthropicの手順は本番ログから実トラフィックの比率で抜き出す。LangSmithはまず5〜10件の手作り例から始め、10〜20件で主要シナリオとエッジケースを網羅してから、本番投入後の実トレースを取り込んでいくことを勧める。件数の目安はOpenAIが約100件。原則は「質より量」——少数の高品質な人手評価より、自動採点できる問いを多く集める方がよい。極端に長い・曖昧・無関係な入力といったエッジケースを含めることも欠かせない。

始める起点は2通りある。「効率優先」はまず下位モデルから実装し、性能が要件を満たすかテストしてから能力不足の箇所だけ引き上げる。「能力優先」はまず上位モデルから実装し、プロンプトを最適化してワークフローが安定してからコストを下げていく。低レイテンシ・低コストが必須なら前者、複雑な推論や高い正確さが必要なら後者が向く。

精度の目標は損益分岐で決めると説得力が出る。OpenAIのニュース分類の例では、正しい分類は$50の節約、誤分類は$300のコストになると仮定すると損益分岐は85.8%で、目標は90%以上に設定される。

オフライン評価(参照出力あり) 本番(参照出力なし) 失敗例をgolden setへ追加 成功基準を 先に決める golden set を作る 候補×effort オフライン実行 表で判定 閾値と合否 shadow運用/AB 本番投入 基準→データ 候補を流す 集計 勝者を投入
図 10-3 オフライン評価(参照出力があるgolden setで事前に測る)で候補を絞り込み、shadow運用やA/Bテスト(参照出力のない本番トラフィックで測る)で最終確認してから切り替える。本番で見つかった失敗例はgolden setへ戻し、次の比較に使う。

比較結果は「品質×コスト×レイテンシ」を表にまとめ、目標値との合否で判断する。OpenAIの公式ガイドが型として示す実例(GPT-4o世代のデータで現行モデルの推奨ではない点に注意)は、zero-shot(例を1つも見せずに指示だけで答えさせる)・few-shot(正解例を数件プロンプトに添えて答えさせる)・fine-tuning(特定タスク向けにモデルを追加学習すること)という3手法を、目標を精度90%以上・コスト1,000記事あたり$5未満・レイテンシ2秒未満として比較したものだ。

手法精度コスト(1,000記事)目標達成
例なし(zero-shot)84.5%$1.72精度が未達
例5件(few-shot)91.5%$11.92コストが超過
小型モデルを追加学習(fine-tuning)91.5%$0.213項目とも達成

fine-tuningした小型モデルは、同等の精度を元のコストの2%未満で達成した。表にすれば、どの候補がどこで妥協しているかが一目で分かる。

採点方法を選ぶ — コード・LLM・人手をどう使い分けるか

Anthropicは採点方法を「最速・最も信頼できる・最もスケールする順」に選べと言う。3方式のうちコードベース採点(完全一致や特定の語句を含むかの判定)は最速で信頼性も高く第一候補になるが、ニュアンスの判定には向かない。LLM採点(LLM-as-a-judge)は速くて柔軟だが、まず信頼性を検証してから拡大させる必要がある。人手採点は柔軟で質は高いが遅く高コストで、公式は「可能なら避ける」とする。したがって実務の優先順位はコード採点→LLM採点→人手採点になる。

LLM採点の妥当性を調べた研究では、強力なモデルの判定は人間同士の一致率(81%)と同水準かそれ以上(引き分け票を除いて集計すると85%)だった。ただし3つの偏りが報告されている。位置バイアスは先に提示した回答を優れていると判定しやすい偏りで、対策は順序を入れ替えて2回判定し、両方で同じ勝者になった時だけ採用することだ。冗長性バイアスは長い回答を高く評価する偏りで、水増しした回答への実験ではあるモデルが91.3%騙されたのに対し別のモデルは8.7%しか騙されなかった。自己選好バイアスは判定役が自分と同系統のモデルの出力を優遇する偏りで、実験ではGPT-4は自分の勝率を10%高く、Claude-v1は25%高く判定したが、論文自身は「データが少なく差も小さいため、自己選好バイアスがあるとは断定できない」としている。参照解を判定役に先に独立して作らせてから採点させると、判定の誤りが大幅に減ることも報告されている。

簡易ベンチ(offline)とA/Bテスト・shadow運用(online)を使い分ける

オフライン評価はデプロイ(本番投入)前に、正解(参照出力)付きのgolden setで候補を比較する——ベンチマーク・回帰テスト(新版で品質が落ちていないかの確認)・バックテスト(過去の本番データで新版を試す)がこれにあたる。オンライン評価は本番投入後に、参照出力のない実際のトレース(やり取りの記録)を継続的に見る——リアルタイム監視・異常検知・フィードバック収集がこれにあたる。参照出力の有無で「何を測れるか」が変わり、offlineは正解との一致を測れるが、onlineは品質のパターンや安全性など参照なしでも測れるものに限られる。

A/Bテストは本番トラフィックの一部を使い、既存モデルや以前のバージョンとの比較を行う定量的な手法として位置づけられている。Anthropicの選定手順の最終段は「オフラインで勝った候補を、切り替え前に本番トラフィックの一部でshadow運用(結果は使わず記録だけ取る運用)し、その後も評価の仕組みを回し続ける」ことだ。本番で見つかった問題(悪いフィードバック、長いレイテンシ、エラー等)はoffline側のgolden setに追加され次の比較に使われる——このoffline→online→offlineの往復が選定を継続的な仕組みにする。

比較を大量に安く回す手段としてBatch API(結果をすぐ必要としない場合の一括処理API)が使える。Anthropicの場合(2026-08 時点)1回で最大10万件・256MBまで送れ、多くは1時間以内に終わるが、24時間以内に処理が終わらない分は期限切れになる。結果は29日間残る。通常の半額で使え、公式も「大規模な評価——何千件ものテストケースの処理」に向くと明記している。

コストを実測するには応答の使用量(usage)フィールドを見る。Anthropicのレスポンスには次の4種類のトークン数が入り、それぞれの単価は通常入力・出力のほか、キャッシュ読み取り(後述のプロンプトキャッシングで使い回した分。通常入力の0.1倍)とキャッシュ書き込み(新規にキャッシュへ保存する分。1.25〜2倍)に分かれる。これらを掛けて合計すれば1回のやり取りの実コストが出せる。全リクエストで積み上げれば「タスク完了あたりのコスト」になる。

{
  "input_tokens": 105,
  "output_tokens": 6039,
  "cache_read_input_tokens": 7123,
  "cache_creation_input_tokens": 7345
}

モデルやeffortの引き下げのように品質と引き換えにコストを下げる手段を検討する前に、Anthropicは品質を落とさずコストだけを下げる「無料の勝ち」——プロンプトキャッシング(第3章Q2で扱った、プロンプトの共通部分の計算結果を使い回す仕組み)、不要なトークンの整理、24時間待てる作業へのBatch処理、支出上限の設定——を先に使い切ることを勧める。実測では、プロンプトキャッシングだけでエージェントループのコストを2.5〜3.7分の1に下げ、ある小さな振り分けエージェントの請求を83%(入力削減も加えると88%)削減したと報告されている。

失敗が判定できるタスクは、低effort全件→失敗だけ再実行が効く

タスクの成否を機械的に判定できる(テストが通る、チケットが閉じる等)場合、固定の設定で全件を流すより、まず全件をlow effortで流し失敗した分だけより高いeffortで再実行する方が効率がよい。SWE-bench Proのサブセットでの計測では、Opus 5をlow effortで流すと16%が失敗したが、その分だけdefaultで再実行すると約93%が合格し1問あたり約$0.70、全件を最初からdefaultで流した場合は91.7%の合格で$1.39だった——ほぼ同じ合格率を半分のコストで達成している。条件は2つある。失敗を機械的に見抜ける判定器(テストなど)が必要で、判定器が悪い出力を素通りさせれば機能しない。また1回目に失敗したタスクは2回分の処理時間がかかるため、節約できるのはコストであってレイテンシではない。

低effort全件 → 失敗のみ再実行 16%が失敗 100タスク(計算例)をlow effortで実行 失敗分だけ 失敗分(16%)をdefaultで再実行 低→再実行: 93%・$0.70/問 全件default: 91.7%・$1.39/問 時間 →
図 10-4 まず全件を low effort で流し、失敗した分だけ default(高いeffort)で再実行する(図は100件に正規化した計算例。実測はSWE-bench Proのサブセットで16%が失敗)。Anthropicの計測ではOpus 5でこの方式が1問あたり約$0.70で93%合格し、全件をdefaultで流した場合の$1.39・91.7%合格とほぼ同じ合格率を半分のコストで達成した。ただし失敗を判定する仕組み(チェッカー)が要り、再実行した分は待ち時間が2倍になる。

回答を見極めるポイント

良い回答に含まれる要素
弱い回答のサイン

深掘り質問の例

つまずきポイント

「一番高いモデルが常に一番良い」「一番安いモデルで十分」と思い込んでいる。ワークロードによって順位が反転するため、価格表や公開スコアだけでは決まらない。自分のタスクで実測しないと、どちらが得か分からない。

max_tokens(1回の応答で使える最大トークン数の上限)を下げればコストが下がると思っている。実際は安全弁でしかなく、下げても必要なやり取りが打ち切られるだけで、打ち切られた分の課金は発生する。

effortの水準を会話の途中で変えて比較している。設定を変えるとその時点でキャッシュが無効になり、後半のリクエストのコストや速さが歪んで、比較そのものが成立しなくなる。水準ごとに別セッション(= 会話をいちど新しく始め直すこと)で測る必要がある。

LLM-as-judgeの判定を無条件に信頼している。回答を出す順序や長さで判定が偏ることがあり、検証なしにそのままスケールさせるのは危険。まず少数サンプルで人間の判断と突き合わせる必要がある。

理解度チェック

Q1. なぜ「トークン単価が高いモデル」の方が「タスク完了あたりのコスト」では安くなることがあるのですか?

能力の高いモデルは、少ないやり取り(ターン数)・少ない読み直し・少ない手戻りでタスクを終えられるためである。単価の高さが、作業量の少なさによって相殺・逆転することがある。

Q2. Anthropicがモデル選定で挙げる「効率優先」と「能力優先」という2つの出発点の違いは何ですか?

効率優先は下位モデルから実装を始め、要件を満たすかテストしたうえで能力不足の箇所だけ引き上げる進め方。能力優先は上位モデルから実装を始め、プロンプトを最適化してワークフローが安定してからコストを下げていく進め方である。

Q3. golden set(評価用データセット)を作るとき、Anthropicが示す抽出方法は何ですか?

本番のログから、実際のトラフィックの比率に合わせてタスクを抽出する方法。加えてエッジケースを含め、少数の高品質な人手評価より、自動採点できる問いを多く集めることが推奨されている(LangSmithは手作り例から始めることを推奨しており、出典によって起点が異なる)。

Q4. LLM-as-a-judgeの「位置バイアス」とは何で、どう対処しますか?

先に提示した回答の方を優れていると判定しやすい偏りのこと。対処法は、2つの回答の順序を入れ替えて2回判定し、両方の順序で同じ勝者が出た場合だけ採用し、食い違えば引き分け扱いにすることである。

Q5. オフライン評価とA/Bテスト(オンライン評価)の決定的な違いは何ですか?

参照出力(正解)があるかどうかである。オフライン評価は事前にgolden setの正解と突き合わせられるが、A/Bテストは本番トレースに正解が付いていないため、参照出力なしで測れる範囲でしか評価できない。

まとめ

次章のQ10「プロンプトインジェクション防御」では、ユーザー入力や外部データという「区別のつかない文字列」がコンテキストに混ざり込む危険と、その対策を見ていく。

参考リンク