OpenAI: gpt-oss-20b 対 Qwen: Qwen3.7 Flash
api14カタログの最新のUSD料金と機能をもとに、OpenAI: gpt-oss-20b($0.11 / 100万トークン (≈ ¥17))とQwen: Qwen3.7 Flash($0.11 / 100万トークン (≈ ¥17))を並べて比較します。どちらも同じOpenAI互換APIで動作します。
仕様
| OpenAI: gpt-oss-20b | Qwen: Qwen3.7 Flash | |
|---|---|---|
| プロバイダー | OpenAI | Qwen |
| 入力 | $0.11 / 100万トークン (≈ ¥17) | $0.11 / 100万トークン (≈ ¥17) |
| 出力 | $0.45 / 100万トークン (≈ ¥72) | $0.45 / 100万トークン (≈ ¥72) |
| キャッシュ読み取り | $0.11 / 100万トークン (≈ ¥17) | $0.02 / 100万トークン (≈ ¥3) |
| キャッシュ書き込み | - | $0.13 / 100万トークン (≈ ¥21) |
| コンテキストウィンドウ | 131,072 | 1,000,000 |
| 最大出力 | 117,964 | 65,536 |
| 入力 | text | text, image, video |
| 出力 | text | text |
| ツール呼び出し | ||
| 構造化出力 | ||
| 推論の調整 | ||
| 追加日 | 2025/08/05 | 2026/07/27 |
主な違い
- 入力料金はどちらもほぼ同じです。
- Qwen: Qwen3.7 Flashは7.6倍長いコンテキスト(1,000,000トークン)を読み取れます。
- 構造化JSON出力に対応しているのはOpenAI: gpt-oss-20bだけです。
- 入力1,000トークン・出力500トークンのリクエストの費用は、OpenAI: gpt-oss-20bで$0.000333、Qwen: Qwen3.7 Flashで$0.000333です。
詳しく見る
OpenAI: gpt-oss-20b は OpenAI のテキストモデルで、2025-08-05 にリリースされました。Qwen: Qwen3.7 Flash は Qwen のテキストモデルで、2026-07-27 にリリースされました。どちらも api14 を通じて同じ OpenAI 互換のサーフェスで提供されるため、両者の選択は、接続方法の違いではなく、タスクが実際に何を必要としているかによって決まります。
最も明確な違いはコンテキストと入力モダリティです。Qwen3.7 Flash はテキスト、画像、動画の入力を受け付け、コンテキストウィンドウは 1,000,000 トークンで、これは両者の中で大きい方です。gpt-oss-20b はテキストのみを受け付け、コンテキストウィンドウは 131,072 トークンです。価格については、入力と出力の両方で両者はほぼ同じであるため、コストはここでは決め手にはなりません。gpt-oss-20b が際立つのは構造化出力です。構造化出力をサポートしているのはこちらであり、パラメータ一覧も全体としてより広く、両モデルが共通で持つサンプリングとツールの制御に加えて、frequency_penalty、logit_bias、logprobs、min_p、reasoning_effort、repetition_penalty、stop、top_k、top_logprobs を含みます。Qwen3.7 Flash がサポートするのはより小さいセットで、include_reasoning、logprobs、max_tokens、presence_penalty、reasoning、response_format、seed、temperature、tool_choice、tools、top_logprobs、top_p をカバーします。
両者のどちらかを選ぶ開発者にとって、実用的な判断基準はこれらの事実から導かれます。入力が長い場合、または画像や動画を含む場合、Qwen3.7 Flash が自然な選択です。なぜなら、両者の中でそれらのモダリティを受け付ける唯一のモデルであり、100 万トークンのウィンドウを持つ唯一のモデルだからです。タスクがテキスト入力とテキスト出力で、構造化出力に依存している場合、または logit_bias、min_p、top_k、reasoning_effort のようなより細かいサンプリングとペナルティの制御に依存している場合、gpt-oss-20b の方が適しています。どちらもツール呼び出しと推論の制御を公開しているため、エージェント型のワークロードや推論型のワークロードであること自体は、一方を他方より好む理由にはなりません。
どちらのモデルを api14 経由で呼び出す場合も、同じように動作します。クライアントを api14 のベース URL に向け、OpenAI chat completions 形式でリクエストを送信し、model フィールドを設定します。OpenAI のモデルを使うには、model を "openai/gpt-oss-20b" に設定します。Qwen のモデルを使うには、model を "qwen/qwen3.7-flash" に設定します。基本的なケースでは、リクエスト内の他の何も変更する必要はありません。同じ messages 配列、同じヘッダー、同じレスポンス解析です。一方だけが列挙しているパラメータに依存している場合は、そのリクエストをその側に留めてください。サポートされていないパラメータを送信することが、実際に両者が分かれる唯一の点だからです。
それでも、もう一方のモデルが勝つケースはあります。すでに構造化出力と広範なサンプリング制御を中心に構築している場合、Qwen3.7 Flash に切り替えるとそれらを諦めることになるため、短いテキストタスクであっても gpt-oss-20b の方が良い選択であり続けます。逆に、テキストプロンプトが非常に大きい場合、またはパイプラインがテキストと一緒にスクリーンショットやクリップを取り込む場合、gpt-oss-20b はその入力を受け付けられず、Qwen3.7 Flash が両者の中で唯一の選択肢です。
文字列1つで切り替え
どちらのモデルも同じエンドポイントとリクエスト形式を使います。modelの値を"openai/gpt-oss-20b"から"qwen/qwen3.7-flash"に変えるだけで、プロンプト、ストリーミング、ツールはそのまま動きます。
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api14.com/api/v1",
apiKey: process.env.API14_API_KEY,
});
const result = await client.chat.completions.create({
"model": "qwen/qwen3.7-flash",
"messages": [
{
"role": "user",
"content": "Explain vector databases in two sentences."
}
]
});
console.log(result.choices[0].message.content);
その他の比較
- LiquidAI: LFM3-1.7B 対 Ricursive: Ripple 65B Preview
- LiquidAI: LFM3-1.7B 対 Crouton Alpha
- LiquidAI: LFM3-1.7B 対 Tencent: Hy4
- LiquidAI: LFM3-1.7B 対 Z.ai: GLM 5.3 FlashX Legal
- Ricursive: Ripple 65B Preview 対 Crouton Alpha
- Ricursive: Ripple 65B Preview 対 Tencent: Hy4
- Ricursive: Ripple 65B Preview 対 Z.ai: GLM 5.3 FlashX Legal
- Crouton Alpha 対 Tencent: Hy4