Research
LYR Performance Note #003 計測が導いた旅

品質を測る前に、失格になるAIがある

モデル選定で、品質より先に見るべき"足切り"

2026-07-22 シリーズ第3回 8 min モデル選定レイテンシLLM計測

リアルタイム字幕翻訳では、いちばん賢いモデルが最初に脱落する。品質が低いからではない。答える前に「考えて」しまうからだ。

モデル選定には、品質を測る前の足切りがある——思考を止められるか、決まった形式で必ず返せるか。ここを満たさないモデルは、賢くても使えない。

そして足切りを揃えて測り直すと、常識のほうが崩れた。短い出力では、軽量モデルは速くない。モデル間の生成速度差は、通信と待ちに飲まれて消える。

翻訳に使うモデルを選ぶとき、私は素朴に「品質がいちばん高いものを選べばいい」と思っていた。ベンチマークを回して、いちばん賢いモデルを選ぶ。当然の話に見える。

でも、リアルタイム字幕翻訳では、この当然が通用しなかった。品質を測る前に、多くのモデルが”足切り”で脱落するからだ。しかもその足切り条件は、最初はまったく見えていなかった。

モデルは、翻訳する前に”考えて”いた

第1回で書いたとおり、私はレイテンシを分解して、あるモデルが1行の翻訳に500トークン以上の思考を吐いていたことに気づいた(トークン27倍・コスト5倍・レイテンシ4倍)。賢いモデルは答える前に”考える”——人間には見えない思考の下書きを大量に生成する。難問には有効だが、機械的な1行翻訳では、その思考は完全に無駄だ。

ここで、足切り条件が生まれた

この一件から、モデル選定の必要条件が定まった。品質を測る前に、まずこれを満たすかどうか。

思考(reasoning)をオフにできるか。

これは些細な設定に見えて、実は生死を分ける。

  • あるモデル(Qwen3系)は、思考を完全にオフにする設定があった。1行の翻訳が、思考ゼロで即座に返る。
  • 別のモデル(gpt-oss系)は、思考を「弱・中・強」には設定できても、完全にオフにできなかった。結果、思考が出力枠を食い潰し、100件中26件で生成そのものが失敗した。品質(内容の良し悪し)は悪くないのに、構造的にリアルタイム失格だった。

賢さ(品質)は十分条件。思考オフ(と、決まった形式で必ず出力できること)は必要条件。必要条件を満たさないモデルは、どれだけ賢くても土俵に上がれない。これは、実際に3モデルを本番同型で測って初めて腑に落ちた。

モデルリアルタイム成功率生成 p50判定
思考オフ可・高速なモデル96%242 ms
前・本番モデル94%438 ms⚠ 別の理由で後に退役
賢いが思考オフ不可のモデル71%(※26%が生成失敗)518 ms❌ 失格

※リアルタイム成功率=本番と同じ条件で投げて、締め切り内に有効な訳(空でなく、決まった形式で返る)が得られた割合。「26%が生成失敗」は、思考が出力枠を食い潰し、訳が最後まで返らなかったケースを指す。

「速い=小さいモデル」も、思い込みだった

ついでに、もうひとつの当然も崩れた。「軽いモデルのほうが速いはずだ」というものだ。

そもそも、なぜ最初に軽量モデルを使っていたのか。理由は速さと安さだった。ところが、いざ品質の壁にぶつかってプロンプトや文脈をあらゆる形で12通り試しても、品質は頭打ち(=軽量モデルの天井)。次の一手として、初めてモデルそのものを変えるという選択肢を、完全に公平な条件(300件・同一プロンプト)で測った。

モデル品質(合格率)生成 中央値コスト
軽量モデル69.7%308 ms1.0x
中型モデル(思考オフ)84.3%(+14.7pt)253 ms5.2x
大型モデル87.7%(+18.0pt)320 ms11.6x

驚いたのは、中型モデルが軽量モデルより”速かった”ことだ(253ms < 308ms)。

理由は、ユーザーが待つ時間の作られ方にある。体感の待ち時間は、生成だけで決まらない。

E2E = 待ち行列(Queue) + 通信(Network) + 生成(Inference)

このうちモデルを小さくして削れるのは、最後の1項だけだ。そして短い出力では、その1項が全体の中で最も小さい。

待ち行列 通信(往復) 生成 = モデルを小さくして削れるのはここだけ 待ち+距離 442ms は3モデル共通 軽量 167 275 308 750ms 中型 思考オフ 167 275 253 695ms 大型 167 275 320 762ms モデルを小さくして削れるのは 67ms = E2Eの 9% 生成だけ見れば軽量と大型で 1.27倍。だがE2Eでは 1.02倍——差は待ちと距離に飲まれて消える。 しかも一番速いのは、いちばん小さいモデルではなかった(中型 695ms < 軽量 750ms)。
図1:E2Eの内訳を3モデルで比較。待ち行列167ms + 通信275ms = 442msは3モデル共通で、モデルを小さくして削れるのは生成の項だけ。E2E合計は軽量750ms/中型695ms/大型762ms。生成だけなら1.27倍あった差が、E2Eでは1.02倍に縮む。
注:生成は本記事の公平比較(N=300)、待ち行列・通信は同時期の本番実測。組み合わせは概算。

つまり「軽量=速い」は、E2Eのうち1項だけを見た結論だった。生成だけなら軽量と大型で1.27倍の差があるが、待ちと距離を含めた実際の待ち時間では1.02倍——モデルを小さくしても、ユーザーの体感はほとんど動かない。これは マニフェストの2番目の原則——「まだ、安く・速くできる」。隔離ベンチではなく、本番の全体像で制約を測り直す——の、モデル選定版だ。

軽量モデルの唯一の優位は、安さだけだった(この”安さ”が、のちに思わぬ形で牙を剥く——第4回)。

では、どのモデルを選んだか

足切りを通り、品質でも中型が軽量を+14.7pt上回り、速度でも勝った。では、大型(+18.0pt)まで行くべきか。私は中型を選んだ。大型は品質でさらに+3.4ptだが、コストは中型の2倍以上(5.2x→11.6x)。字幕翻訳では、その3.4ptに倍のコストは見合わない。必要条件(思考オフ)を満たし、品質とコストの釣り合いが最良の一点——それが中型だった。(この「勝者を選ぶのでなく、一長一短の選択肢から自分に合う一点を選ぶ」という考え方は、Paretoで改めて。)

教訓

  1. 品質の前に、足切り条件がある。 「思考をオフにできるか」「決まった形式で必ず返せるか」——リアルタイム用途では、これを満たさないモデルは賢くても失格。必要条件と十分条件を分けて考える。
  2. 賢さは、いつでも正義ではない。 機械的タスクにとって”過剰な賢さ”は、コストとレイテンシの純負債になる。
  3. 「軽い=速い」を疑え。 短い出力では速度差が通信と待ちに飲まれて消え、いちばん速いのはいちばん小さいモデルではなかった。しかもこの足切り条件は、仕様書ではなくログで見つかった。ボトルネックが変わると、常識は反転する。

付録:生データ

項目実測条件・留保
思考の暴発1行翻訳(想定出力18トークン)に思考トレース500超 → トークン27x / コスト5x / レイテンシ4x設定で完全オフにできるモデルと、できないモデルがある
3モデルの足切り(本番同型)リアルタイム成功率 96% / 94% / 71%、生成 p50 = 242 / 438 / 518ms71%のモデルは思考が出力枠を食い、26%が生成失敗
品質の公平比較軽量 69.7% / 中型 84.3%(+14.7pt, 253ms, 5.2x)/ 大型 87.7%(+18.0pt, 320ms, 11.6x)N=300・同一プロンプト・人手校正judge
「軽量=速い」の否定生成 p50 の差 242〜518ms は、通信込みのE2Eでは相対的に縮む短い出力では往復・待ちが支配的