読んだモデル比較の記事は、誰も再現できないベンチマーク表か、著者がもともと好きな2つのモデルのフィーリングレビューかのどちらかだ。そこで2026年9月2日、私たちは地味な方法を選んだ。同じ3つのプロンプトを、NinjaChat自身のAPIを通じて12の現行モデルに各1回送信し、ストリームの時間を計測し、NinjaChatのキーが実際に支払う価格で課金した。以下の内容は、より良く見せるために編集、選別、再実行したものは一切ない。
簡単にまとめると。12モデルすべてが、自身のテストに合格する正しい区間マージ関数を書いた。GPT-5.6 Terraは平均の最初のトークン到達時間が最速で、コーディングでも3秒未満とぶっちぎりの首位だった。GPT-5.6 Lunaとgpt-oss-120bは最安値タイで、3つの回答すべて合わせて約0.1セントだった。その日の最も高額な単一回答トップ2は、Kimi K3のファウンダー向けアドバイス(1,034推論トークン、27秒)と、Claude Opus 5のコード(全モデル中最も丁寧なコードでもある)だった。その間に位置するモデル群の興味深い違いは、正確さとはまったく関係がない。各モデルが話し始めるまでにどれだけ考えるか、どのホストがサービスを提供したか、そしてその両方のコストに関するものだった。
測定方法
- 日時と場所: 2026年9月2日、ある午後、米国内の家庭用回線に接続した1台のノートパソコン。
- 経路: すべてのリクエストはNinjaChat APIへ送信(
POST /api/v1/chat/completions)、通常のプレイグラウンドキーを使用。表示されるレイテンシには、私たちのルーティング、選択したプロバイダー、およびプロバイダー自身の処理時間が含まれる。「Served by」列は、各回答ごとにそのプロバイダーを示している。 - モデル: Claude Opus 5、GPT-5.5、GPT-5.6 Sol、GPT-5.6 Terra、GPT-5.6 Luna、Kimi K3、Gemini 3.7 Flash、GLM-5.2、GLM-4.7、MiniMax M3、gpt-oss-120b、Qwen 3.8 Flash。
- 設定: temperature 0.7、出力上限2,500トークン、使用量レポート付きでストリーミング有効、その他のパラメータはモデルのデフォルト設定。これらのモデルのほとんどはデフォルトで推論を行い、私たちのAPIは推論トークンを可視出力とは別に報告するため、両方の列がすべての表に含まれている。2つのホスト(GLM-4.7のDeepInfraとGLM-5.2のFireworks)は出力カウント内に推論を含めて報告するため、それらの行は出力数が大きく、推論列はゼロを示している。
- タイミング: 最初のトークン到達時間は、隠れた推論の後に回答の最初の可視文字が届いた時点。合計時間はストリームが閉じるまで。リクエストは並行せず1件ずつ実行し、各モデルへのウォームアップリクエスト後に計測を開始したため、以下の数値にはこちら側のコールドスタートは含まれていない。
- コスト: そのリクエストに対してAPIが報告した課金額(0.0001ドル単位)。価格表からの推定値は一切使用していない。
- 1セルにつき1回実行。 リトライなし、3回のうちベストなし。2回目の実行では、これらの数値を小数点以下まで再現することはできない。順位は再現されるはずだ。
3つのプロンプトは、私たちのモデルページの「実際の出力」セクションからそのままコピーしたもので、ここで見るものはそのページが示すものと同じタスクだ。
- 「重複する区間をマージするPython関数を、短いテスト3つとともに書いてください。回答全体を40行以内のコードに収めてください。」
- 「約120語で、初めてのファウンダーにモノリスとマイクロサービスのどちらを選ぶべきかを伝え、分割の時期を示す1つのシグナルを教えてください。」
- 「この文を3通りに書き直してください。それぞれ明確に異なるトーン(平易・遊び心・エグゼクティブ)で:『Our app makes budgeting easy.』各バージョンにラベルを付けてください。」
プロンプト1:重複区間のマージ
合計時間順にソート。以下のすべての回答は、コードを実行したところ自身のテストに合格した。
| モデル | Served by | 最初のトークン到達時間 | 合計時間 | 出力トークン | 推論トークン | この回答の課金額 |
|---|---|---|---|---|---|---|
| GPT-5.6 Terra | OpenAI | 1.5秒 | 2.9秒 | 184 | 0 | $0.0023 |
| Gemini 3.7 Flash | 2.8秒 | 3.3秒 | 232 | 445 | $0.0052 | |
| MiniMax M3 | Fireworks | 3.3秒 | 4.9秒 | 285 | 271 | $0.0008 |
| gpt-oss-120b | Fireworks | 4.4秒 | 6.3秒 | 280 | 434 | $0.0006 |
| GPT-5.6 Luna | OpenAI | 5.9秒 | 7.2秒 | 171 | 374 | $0.0007 |
| Claude Opus 5 | Anthropic | 3.7秒 | 8.6秒 | 621 | 89 | $0.0180 |
| Qwen 3.8 Flash | Novita | 8.1秒 | 9.1秒 | 175 | 757 | $0.0005 |
| GPT-5.6 Sol | OpenAI | 8.8秒 | 10.7秒 | 194 | 26 | $0.0046 |
| GLM-5.2 | Fireworks | 12.9秒 | 14.6秒 | 989 | 0 | $0.0045 |
| Kimi K3 | Fireworks | 16.5秒 | 21.7秒 | 309 | 771 | $0.0166 |
| GPT-5.5 | OpenAI | 9.5秒 | 29.4秒 | 196 | 60 | $0.0079 |
| GLM-4.7 | DeepInfra | 60.6秒 | 67.1秒 | 1363 | 0 | $0.0031 |
12モデル中12モデル全員が正解し、現行モデルにとってこれは解決済みの問題であることがわかる。違いは好み、トークンの使い方、そして1つのケースでは「テスト」の意味にある。
最もコンパクトな回答はGLM-4.7だ。14行、コメントなし、空入力チェックも別途設けていない(ループが処理するため)。
def merge_intervals(intervals):
intervals.sort(key=lambda x: x[0])
merged = []
for start, end in intervals:
if not merged or start > merged[-1][1]:
merged.append([start, end])
else:
merged[-1][1] = max(merged[-1][1], end)
return merged
Claude Opus 5はその逆を行った。ドキュメント文字列を持つ唯一のバージョンを書き、空入力・単一要素・接触・未ソート・ネストされた入力をカバーする3つの名前付きテスト関数を用意し、比較がクローズドであるため接触する区間もマージされるという説明と、半開区間セマンティクスが必要な場合の1文字の変更箇所まで記した。厳格な読者を最も苛立たせそうな回答でもある。コードブロックはちょうど40行で、プロンプトが求めた「40行未満」を満たしていない。Kimi K3は次に丁寧なバージョンを書き、コメント付きの3ケースと未ソート・ネストされた入力を持つ1つのテスト関数を記述した。
GPTファミリーはほぼ同じ関数を4回書いた。Terraは推論トークンもドキュメント文字列もなく2.9秒でこなし、このプロンプト最速の回答となった。Solはドキュメント文字列を追加しタプルを返した。Lunaは374推論トークンを経て最短のGPT回答にたどり着いた。GPT-5.5はSolと同じ関数を書いたが、ストリームが途中で止まった。最初のトークンが9.5秒、最後のトークンが29.4秒で、196出力トークンという結果になった。これは1回限りの出来事であり、2回目の実行ではおそらく繰り返されない種類のものだ。そのためそう断っておく。
MiniMax M3の行は2度読む価値がある。3つの「テスト」は各行にコメントで期待値を書いたprint文であるため、失敗することができない。コードは正しく実際に実行したが、このモデルは問われた質問とは別の質問に答えた。4つのモデル(Gemini 3.7 Flash、GLM-4.7、MiniMax M3、Qwen 3.8 Flash)は呼び出し元のリストをインプレースでソートするが、スニペットとしては問題なく、ライブラリとしてはバグになる。
遅い行はホストの問題だ。DeepInfraが提供するGLM-4.7は最初の文字が届くまでまる1分かかり、ホストは報告した1,363出力トークンの中に推論を含めてカウントしている。Kimi K3はFireworks上で771推論トークンを使い22秒かかった。
総評: この種の関数にはTerra。何かを教えてくれる回答が欲しく40行を受け入れられるならOpus 5。
プロンプト2:モノリスかマイクロサービスか
| モデル | Served by | 最初のトークン到達時間 | 合計時間 | 出力トークン | 推論トークン | この回答の課金額 |
|---|---|---|---|---|---|---|
| MiniMax M3 | Fireworks | 2.5秒 | 4.0秒 | 177 | 76 | $0.0004 |
| GPT-5.6 Luna | OpenAI | 2.6秒 | 4.4秒 | 165 | 75 | $0.0003 |
| GPT-5.6 Terra | OpenAI | 2.4秒 | 4.6秒 | 167 | 0 | $0.0021 |
| Gemini 3.7 Flash | 4.3秒 | 4.6秒 | 160 | 901 | $0.0081 | |
| GPT-5.5 | OpenAI | 2.7秒 | 5.0秒 | 163 | 31 | $0.0061 |
| gpt-oss-120b | Fireworks | 5.5秒 | 6.5秒 | 180 | 70 | $0.0003 |
| Claude Opus 5 | Anthropic | 2.7秒 | 7.5秒 | 332 | 23 | $0.0092 |
| GPT-5.6 Sol | OpenAI | 7.0秒 | 10.0秒 | 164 | 238 | $0.0082 |
| GLM-5.2 | Fireworks | 15.0秒 | 16.5秒 | 1259 | 0 | $0.0057 |
| Kimi K3 | Fireworks | 23.8秒 | 26.9秒 | 170 | 1034 | $0.0185 |
| Qwen 3.8 Flash | Novita | 29.9秒 | 30.9秒 | 162 | 3810 | $0.0019 |
| GLM-4.7 | DeepInfra | 78.9秒 | 86.2秒 | 1063 | 0 | $0.0024 |
すべてのモデルが同じ見出しアドバイスを与えた。「まずモノリスから始めよ」だ。これは正しい見出しアドバイスである。問題は本当に後半部分にあった。分割の時期を示す1つのシグナルを挙げよ、という問いだ。回答は2つの陣営に分かれた。
組織派は、シグナルは「人」だと言った。Kimi K3:「チームが独立してデプロイできなくなったとき」、誤った境界で分割すると「分散モノリス——運用コストはすべて、独立性はゼロ」になると警告した。Gemini 3.7 Flashはそれを「組織的ボトルネック」と呼び、「マイクロサービスは人間の組織とデプロイ速度をスケールさせるためのツールであり、初期段階のコードベースのためのものではない」という一文を付け加えた。GLM-5.2は「デプロイの競合」と呼んだ。GLM-4.7は「組織的摩擦」と言い、テストを提示した。システム全体を1人で把握できる人がいなくなったら、モノリスを卒業したサインだ。
ボトルネック派は、シグナルはシステムの特定の部分にあると言った。Claude Opus 5は具体的に示した。「CPUを大量に消費する動画トランスコーダーがAPIを圧迫しているとき」そして、その日最高の一文で締めた。「それ以外の理由——『ごちゃごちゃしてきた』『Netflixがやっている』——はシグナルではない。」GPT-5.6 Sol:「製品のある明確に定義された部分が繰り返しデプロイやスケールを必要とし、モノリスが測定可能な形でそれを妨げているとき」に分割せよ、そして「その境界だけを切り出し、明確なインターフェースとオーナーを与え、残りはすべてそのままにしておけ」と続けた。Lunaは他が忘れた一文を付け加えた。切り出したら「改善を測定し」、そこで止めよ。MiniMax M3は同じ考えをより少ない言葉と1つの印象的な一文にまとめた。「時期尚早の分割は、バッドコードよりも多くのスタートアップを殺す。」
表は本文が隠すものを加えている。Opus 5は120語という目標に対して162語に及び、このプロンプト中最長の回答だった。Qwen 3.8 Flashは3,810推論トークンを使い、書いた内容の20倍以上を費やし、まともなことを言うのに31秒かかった。Solは238推論トークンを使い10秒かかり、Terraの回答コストのほぼ4倍の料金を請求されたが、得られたのは1文だけ優れた段落だった。
総評: ファウンダーに転送したい回答が欲しければOpus 5。秒あたりのベスト段落を求めるならGPT-5.5かTerra。コストが0.04セントであることがポイントならMiniMax M3。
プロンプト3:3つのトーン
| モデル | Served by | 最初のトークン到達時間 | 合計時間 | 出力トークン | 推論トークン | この回答の課金額 |
|---|---|---|---|---|---|---|
| gpt-oss-120b | Fireworks | 1.6秒 | 1.8秒 | 62 | 41 | $0.0002 |
| GPT-5.6 Luna | OpenAI | 1.6秒 | 2.1秒 | 44 | 0 | $0.0001 |
| GPT-5.6 Sol | OpenAI | 2.2秒 | 3.2秒 | 47 | 0 | $0.0011 |
| GPT-5.6 Terra | OpenAI | 2.4秒 | 3.3秒 | 54 | 0 | $0.0008 |
| GPT-5.5 | OpenAI | 2.2秒 | 3.4秒 | 47 | 0 | $0.0016 |
| MiniMax M3 | Fireworks | 3.0秒 | 3.4秒 | 55 | 191 | $0.0004 |
| Gemini 3.7 Flash | 3.3秒 | 3.4秒 | 57 | 429 | $0.0037 | |
| Claude Opus 5 | Anthropic | 2.8秒 | 3.9秒 | 101 | 28 | $0.0035 |
| Qwen 3.8 Flash | Novita | 6.3秒 | 6.7秒 | 44 | 48 | $0.0001 |
| Kimi K3 | Fireworks | 9.2秒 | 10.2秒 | 69 | 413 | $0.0076 |
| GLM-5.2 | Fireworks | 10.8秒 | 11.3秒 | 747 | 0 | $0.0034 |
| GLM-4.7 | DeepInfra | 68.6秒 | 69.7秒 | 1049 | 0 | $0.0024 |
このプロンプトは、雑な読み方を露わにする。gpt-oss-120bとQwen 3.8 Flashはどちらも、元の文をそのまま「平易」バージョンとして返した。「平易(plain)」という言葉の解釈としては一応成り立つが、「書き直す(rewrite)」という言葉の見落としは明らかだ。gpt-oss-120bはこのテストを過去に何度か実行した際にも同じことをしており、これは偶発的な出来事ではなく習慣だ。
実際に声を持つ遊び心ある一文を書いたモデルが2つあった。Kimi K3:「家計管理って、実はめちゃ簡単。数字の計算はアプリに任せて、あなたはラクしよう!」Claude Opus 5:「家計管理はかつて面倒な作業だった——今はタップとスワイプ数回で完了だ。」Opus 5はまた、具体的な主張を含む唯一のエグゼクティブ向けの一文も書いた。「月の財務管理を数分に短縮する」という表現で、他のモデルは抽象的な表現に終始した。12モデル中7モデルがどこかで「a breeze」を使い、11モデルがエグゼクティブ向けの一文で「streamlines」を使った。Geminiのエグゼクティブバージョン「seamless budget optimization and fiscal clarity(シームレスな予算最適化と財務の透明性)」は、マーケティングチームへの反面教師として見せるべき一文だ。
コストの話が本題だ。GLM-4.7は32語を生成するのに70秒かかった。ホストが報告したのは1,049出力トークンで、その大半は個別に示されていない推論だ。LunaとQwen 3.8 Flashはそれぞれ0.01セントでこのタスクをこなし、Lunaは2秒で完了した。製品として文章の書き直しを大規模に行うなら、これはコストの問題であり、品質の問題ではない。Opus 5やKimi K3の文体を特に求めない限りは。
総評: 人間が読むコピーにはOpus 5かKimi K3。パイプラインが読むコピーにはLuna。
1日の全結果を1つの表に
各モデルが3つの回答すべてに対して課金された金額を、最安値順に。サービスを提供したプロバイダーと、2026年9月2日時点でのNinjaChatのAPIにおける各モデルの定価も記載する。
| モデル | 3回答合計課金額 | 平均最初のトークン到達時間 | 最も遅い回答 | Served by | 100万トークンあたりの入力/出力価格 |
|---|---|---|---|---|---|
| GPT-5.6 Luna | $0.0011 | 3.4秒 | 7.2秒 | OpenAI | $0.2 / $1.2 |
| gpt-oss-120b | $0.0011 | 3.8秒 | 6.5秒 | Fireworks | $0.35 / $0.75 |
| MiniMax M3 | $0.0016 | 2.9秒 | 4.9秒 | Fireworks | $0.3 / $1.2 |
| Qwen 3.8 Flash | $0.0025 | 14.8秒 | 30.9秒 | Novita | $0.15 / $0.47 |
| GPT-5.6 Terra | $0.0052 | 2.1秒 | 4.6秒 | OpenAI | $2 / $12 |
| GLM-4.7 | $0.0079 | 69.4秒 | 86.2秒 | DeepInfra | $0.6 / $2.2 |
| GLM-5.2 | $0.0136 | 12.9秒 | 16.5秒 | Fireworks | $1.4 / $4.4 |
| GPT-5.6 Sol | $0.0139 | 6.0秒 | 10.7秒 | OpenAI | $4 / $20 |
| GPT-5.5 | $0.0156 | 4.8秒 | 29.4秒 | OpenAI | $5 / $30 |
| Gemini 3.7 Flash | $0.0170 | 3.5秒 | 4.6秒 | $1.5 / $7.5 | |
| Claude Opus 5 | $0.0307 | 3.1秒 | 8.6秒 | Anthropic | $5 / $25 |
| Kimi K3 | $0.0427 | 16.5秒 | 26.9秒 | Fireworks | $3 / $15 |
3つのパターンが浮かび上がる。
推論は隠れたコストだ。 Kimi K3はフロンティアモデル3つより低い価格帯に位置しながら、その日最も高額なモデルとなった。書き直しプロンプトも含め、すべてのプロンプトで400〜1,000トークンの推論を行ったからだ。Gemini 3.7 Flashが同じ理由でGPT-5.5より高くなった。Solの最も高額な回答は最長のものではなく、最も思考を費やしたものだった。あるタスクに思考の連鎖が不要なら、デフォルトでそれを行わないモデルを選ぶか、APIで許可されている場合は推論の強度を下げよう。
安さは今や本物の品質を伴う。 Luna、gpt-oss-120b、MiniMax M3は正しいコード、まともなアドバイス、使えるコピーを3つのプロンプト合わせて0.1〜0.16セントで書いた。2年前、この価格帯のモデルはコーディングプロンプトで失敗していただろう。
ホストはレイテンシの一部だ。 GLM-4.7はスペック上は高速なモデルだが、このテストでは最も遅かった。その午後にサービスを提供したホストが、各回答を開始するまでに1分かかったからだ。FireworksのKimi K3とGLM-5.2は、書き始めてからは速かったが、書き始めるまでが遅かった。OpenAI、Google、Anthropicのモデルは各ラボから直接回答した。そのため私たちのAPIでは稼働率とレイテンシをモデル単位ではなくプロバイダー単位で表示しており、上記のすべての表に「Served by」列を設けている。
用途別モデル選択
- 最高の回答が欲しく、コストは二の次: Claude Opus 5。最も丁寧なコード、実際に転送したくなるファウンダー向け回答、具体的な主張を含む唯一の書き直し、そして平均3秒という最初のトークン到達時間。
- 中程度のコストでフロンティア品質: GPT-5.6 Terra。全体で最速の最初のトークン到達時間、必要なければ推論なし、その日のSolの請求額の半分以下。
- コスト度外視でOpenAIの最高性能モデル: GPT-5.5。ただし、長い生成に使う前に32K出力上限を確認のこと。
- 大量処理パイプラインを運用している: GPT-5.6 LunaかMiniMax M3。全体で0.1〜0.16セント、2つの散文プロンプトは5秒以内。
- 長いコンテキストを持つ大型オープンウェイトモデルが欲しい: 文章にはKimi K3、価格にはGLM-5.2。どちらも推論時間のコストを念頭に置くこと。
- 人間が読むコピーが欲しい: Opus 5、次いでKimi K3。元の文をそのまま返した2つのモデルはスキップ。
自分で試す
上記のすべてのモデルは、NinjaChat API上でmodel文字列1つで切り替えられる。OpenAI互換。電話番号認証済みのアカウントには$0.50のスターター残高が付与され、チャージするまでカードは不要。モデルIDを変えて、この記事のプロンプトを再実行しよう。レスポンスには課金額とどのプロバイダーが処理したかが報告される。
curl https://www.ninjachat.ai/api/v1/chat/completions \
-H "Authorization: Bearer $NINJACHAT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.6-terra",
"messages": [{"role": "user", "content": "In about 120 words, tell a first-time founder when to choose a monolith over microservices, and the one signal that means it is time to split."}],
"max_tokens": 2500,
"temperature": 0.7,
"stream": true,
"stream_options": {"include_usage": true}
}'
import time
from openai import OpenAI
client = OpenAI(base_url="https://www.ninjachat.ai/api/v1", api_key="YOUR_KEY")
for model in ["claude-opus-5", "gpt-5.6-terra", "minimax-m3"]:
t0 = time.perf_counter()
first = None
stream = client.chat.completions.create(
model=model,
messages=[{"role": "user", "content": "Rewrite three ways (plain, playful, executive): Our app makes budgeting easy."}],
max_tokens=2500,
temperature=0.7,
stream=True,
stream_options={"include_usage": True},
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content and first is None:
first = time.perf_counter() - t0
if chunk.usage:
print(model, "reasoning tokens:", chunk.usage.completion_tokens_details.reasoning_tokens)
print(model, "first token", round(first, 2), "s, total", round(time.perf_counter() - t0, 2), "s")
すべてのモデルのライブ価格はキー不要でGET https://www.ninjachat.ai/api/v1/modelsで確認できる。コンシューマー向けは同じモデルをチャットウィンドウで利用可能。/modelsでどれでも選べる(有料プランが必要)。
よくある質問
このテストで最も速かったAIモデルはどれですか? GPT-5.6 Terra。平均最初のトークン到達時間2.1秒で、コーディングプロンプトの完全回答も2.9秒と最速だった。MiniMax M3とClaude Opus 5が続き、どちらも平均最初のトークン到達時間は約3秒だった。
最も安かったAIモデルはどれですか? GPT-5.6 LunaとGPT-oss-120bが同着で、2026年9月2日のNinjaChat APIの課金で3つの回答すべて合わせて約0.1セント。MiniMax M3がわずかな差で続いた。
コーディングタスクで間違えたモデルはありましたか? なし。12モデル全員が、自身のテストに合格するマージ関数を生成した。Claude Opus 5はちょうど40行に達し、MiniMax M3はアサーションの代わりにprint文を使い、4つのモデルは呼び出し元のリストをインプレースでソートした。コードをライブラリにコピーする際は知っておく価値がある点だ。
GLM-4.7とKimi K3は表の中でなぜこんなに遅いのですか? 推論とホスティング、その両方が重なっている。どちらも書き始める前に長く考え、その午後にGLM-4.7を提供したホストは各回答の開始に約1分かかり、推論を出力カウントの中に含めて報告した。別のホストで、または推論強度を下げると、どちらも中位に入るだろう。
同じモデルがプロンプトによってコストが異なるのはなぜですか? 推論トークンが出力として課金されるからだ。GPT-5.6 Solはコーディングプロンプトで26推論トークン、ファウンダープロンプトで238推論トークンを使ったため、ファウンダーの回答はより短いにもかかわらず、コードの回答の約2倍のコストになった。
この結果を再現できますか? できる。3つのプロンプトは上記に一字一句そのまま掲載されており、設定は「測定方法」の下に記載されている。Pythonのスニペットは私たちと同じ方法でどのモデルも計測し、推論トークンを出力する。絶対値は実行ごとに変動するが、順位は維持されるはずだ。
