TL;DR
- OpenRouter の
:freeモデルは 2026 年現在 20 以上存在するが、実用に耐えるのは 8 モデル程度 - 日本語品質・レイテンシ・コンテキスト長の 3 軸で比較すると用途別に明確な適材適所がある
- コスト最適化を本気でやるなら「タスク種別ごとにモデルを切り替えるルーティング」が鍵
はじめに
LLM API のコストは、プロダクト初期フェーズや個人開発者にとって悩みの種です。
OpenRouter は複数プロバイダのモデルを単一エンドポイント (https://openrouter.ai/api/v1) で叩ける API ゲートウェイですが、その中に :free サフィックスが付いた無課金モデル が複数存在します。
無料モデルにありがちな誤解は「どれも似たり寄ったり」というもの。実際は速度・品質・制約が大きく異なり、**雑に使うと「なぜかレスポンスが遅い」「日本語が崩れる」**といった問題が起きます。
本記事では 2026 年 5 月時点で OpenRouter 上で確認できる主要無料モデルを 3 軸で整理し、用途別のおすすめ構成を解説します。
前提知識:OpenRouter :free モデルの制約
OpenRouter の無料モデルは以下の共通制約があります(公式ドキュメントより):
| 制約項目 | 内容 |
|---|---|
| レート制限 | アカウントあたり 20 req/min(有料クレジットがあれば緩和可) |
| キュー | 無料枠はバックエンドで低優先度キューに入ることがある |
| モデル差し替え | プロバイダ側都合でいつでも無効化・差し替えされうる |
| ストリーミング | 対応モデルと非対応モデルが混在 |
無料枠は「プロバイダが試用・宣伝目的で提供しているキャパシティ」なので、SLA は実質ゼロです。本番用途には必ず有料 fallback を用意しましょう。
比較対象モデル(2026年5月時点)
以下の 8 モデルを対象とします。いずれも model パラメータに指定できる ID です。
| # | モデル ID(OpenRouter) | ベースモデル | コンテキスト長 |
|---|---|---|---|
| 1 | google/gemini-2.0-flash-exp:free |
Gemini 2.0 Flash | 1,048,576 tok |
| 2 | meta-llama/llama-4-scout:free |
Llama 4 Scout | 131,072 tok |
| 3 | meta-llama/llama-4-maverick:free |
Llama 4 Maverick | 131,072 tok |
| 4 | qwen/qwen3-8b:free |
Qwen3 8B | 131,072 tok |
| 5 | qwen/qwen3-30b-a3b:free |
Qwen3 30B-A3B (MoE) | 131,072 tok |
| 6 | mistralai/mistral-7b-instruct:free |
Mistral 7B Instruct | 32,768 tok |
| 7 | nousresearch/hermes-3-llama-3.1-8b:free |
Hermes 3 (Llama 3.1 ベース) | 131,072 tok |
| 8 | microsoft/phi-4:free |
Phi-4 14B | 131,072 tok |
注意: OpenRouter のモデルカタログは頻繁に更新されます。本記事の情報は公式カタログ(openrouter.ai/models)で必ず最新状況を確認してください。
3 軸評価
軸 1:日本語品質
日本語での指示追従・自然な文体・漢字かな変換の安定性を 5 段階で評価します。
| モデル | 日本語品質 | 所感 |
|---|---|---|
| Gemini 2.0 Flash | ⭐⭐⭐⭐⭐ | Google の多言語コーパスが強み。口語〜技術文書まで安定 |
| Qwen3 30B-A3B | ⭐⭐⭐⭐⭐ | Alibaba の中日英トレーニング。日本語ネイティブ感が高い |
| Qwen3 8B | ⭐⭐⭐⭐ | 30B より若干硬い表現が残るが実用十分 |
| Llama 4 Maverick | ⭐⭐⭐⭐ | Meta の多言語強化版。英語→日本語混合タスクに強い |
| Llama 4 Scout | ⭐⭐⭐ | Maverick より軽量。日本語は不自然な語順が稀に出る |
| Phi-4 | ⭐⭐⭐ | Microsoft の小型モデル。日本語は及第点だが敬語が崩れる |
| Hermes 3 | ⭐⭐ | 英語特化チューニング。日本語は Llama ベースの素の実力 |
| Mistral 7B | ⭐⭐ | 欧州発モデル。日本語は動くが長文で品質劣化 |
軸 2:レイテンシ(体感 TTFT)
TTFT = Time To First Token。キューの混雑度に依存するため幅があります。
| モデル | TTFT 目安 | 傾向 |
|---|---|---|
| Mistral 7B | 0.5〜2s | キャパシティが大きく空きやすい |
| Qwen3 8B | 0.8〜3s | 小型MoEで高速。混雑時でも安定 |
| Phi-4 | 1〜3s | 14B にしては速い |
| Llama 4 Scout | 1〜4s | 軽量版だが無料枠の競争率が高め |
| Qwen3 30B-A3B | 1.5〜5s | MoE 効果で推論はそこそこ速いが待ちが増える |
| Llama 4 Maverick | 2〜6s | 大型モデル。混雑時は顕著に遅延 |
| Gemini 2.0 Flash | 0.5〜8s | 通常は最速クラスだが、無料枠は気まぐれに遅くなる |
| Hermes 3 | 2〜8s | 無料枠の優先度が低く、外れると 10s 超えも |
TTFT は OpenRouter のダッシュボード(Latency タブ)でリアルタイム確認できます。自動化スクリプトではここを定期ポーリングしてルーティングを切り替えるのが定番テクニックです。
軸 3:コンテキスト長の実用性
「公称値 = 実用値」ではないことに注意が必要です。無料枠では 長いコンテキストを入れるとキューイングが長くなる傾向があります。
| モデル | 公称コンテキスト | 実用上限の目安 |
|---|---|---|
| Gemini 2.0 Flash | 1M tok | 100K〜300K が現実的(それ以上は待ち時間急増) |
| Llama 4 系 | 128K tok | 50K 以内が安定 |
| Qwen3 系 | 128K tok | 64K 以内が安定 |
| Phi-4 | 128K tok | 32K 以内推奨 |
| Mistral 7B / Hermes 3 | 32K tok | 16K 以内推奨 |
用途別おすすめ構成
ケース A:RAG のチャンク要約(コスト最重視)
# 短いチャンク (< 2K tok) をバッチ要約するケース
model = "qwen/qwen3-8b:free"
# 理由:
# - TTFT が速い → 並列処理でスループットを稼げる
# - 日本語品質 ⭐⭐⭐⭐ → 要約タスクには十分
# - 8B で軽量 → 無料枠のキャパが空きやすい
ケース B:長文コード解析(コンテキスト重視)
# リポジトリ丸ごとレビューや大きな diff の解析
model = "google/gemini-2.0-flash-exp:free"
# 理由:
# - 1M コンテキスト(無料モデル中最大)
# - コードの構造理解が得意
# - ただし混雑時は遅いので timeout を 60s 以上に設定
ケース C:日本語カスタマーサポート bot(品質重視)
# エンドユーザーが直接見るテキスト生成
model = "qwen/qwen3-30b-a3b:free"
# 理由:
# - 日本語品質が最高クラス
# - MoE 構造で大型モデルの品質を維持しつつ推論コスト低
# - fallback: google/gemini-2.0-flash-exp:free
ケース D:英語ドキュメント生成(開発者向け)
# README, API ドキュメントの英語生成
model = "meta-llama/llama-4-maverick:free"
# 理由:
# - 英語品質が高い
# - 技術文書のトーンが安定している
# - 128K コンテキストで既存ドキュメントを参照しながら生成可能
OpenRouter でのモデルルーティング実装例
タスク種別でモデルを自動切り替えする最小構成です。
import httpx
import os
OPENROUTER_API_KEY = os.environ["OPENROUTER_API_KEY"] # 環境変数から取得
ROUTING_TABLE = {
"summary": "qwen/qwen3-8b:free",
"long_context": "google/gemini-2.0-flash-exp:free",
"japanese_quality": "qwen/qwen3-30b-a3b:free",
"english_doc": "meta-llama/llama-4-maverick:free",
}
def chat(task_type: str, messages: list[dict]) -> str:
model = ROUTING_TABLE.get(task_type, "qwen/qwen3-8b:free")
response = httpx.post(
"https://openrouter.ai/api/v1/chat/completions",
headers={
"Authorization": f"Bearer {OPENROUTER_API_KEY}",
"HTTP-Referer": "https://your-app.example.com", # OpenRouter 推奨
"X-Title": "My App",
},
json={
"model": model,
"messages": messages,
"max_tokens": 2048,
},
timeout=60.0,
)
response.raise_for_status()
return response.json()["choices"][0]["message"]["content"]
# 使用例
result = chat(
task_type="japanese_quality",
messages=[{"role": "user", "content": "RAGシステムの設計を200字で説明してください"}],
)
print(result)
ポイント:
HTTP-Refererヘッダーは OpenRouter が利用統計に使うため設定を推奨しています(公式ドキュメント参照)。必須ではありませんが、入れておくとレート制限の優先度が上がることがあります。
Fallback 戦略:無料モデルが落ちたときの対処
OpenRouter には モデルフォールバック機能 があります。models パラメータに配列を渡すと、先頭から順に試みます。
# fallback 付きリクエスト例
json_body = {
"models": [
"qwen/qwen3-30b-a3b:free", # 第1候補(無料)
"google/gemini-2.0-flash-exp:free", # 第2候補(無料)
"qwen/qwen3-30b-a3b", # 第3候補(有料・同モデル)
],
"messages": messages,
"route": "fallback", # fallback モードを明示
}
これにより「無料枠が埋まっていたら自動で次の無料モデルを試し、それでも駄目なら有料版にフォールバック」という堅牢な構成が作れます。
コスト感覚の整理
無料モデルをフル活用した場合の試算(20 req/min × 60 min × 24h = 28,800 req/day 上限):
| 用途 | 1 req あたりトークン | 1 日の推定リクエスト数 | 月額コスト |
|---|---|---|---|
| チャット bot(小規模) | 〜500 tok | 200 | $0 |
| RAG 要約パイプライン | 〜2,000 tok | 1,000 | $0(レート制限内) |
| バッチ処理(大規模) | 〜4,000 tok | 5,000 | レート超過 → 有料枠が必要 |
大規模バッチが必要になった段階で、無料モデルと同一 ID の有料版(:free を外したもの)に切り替えるだけでコードを変更せずスケールできます。これが OpenRouter ルーティングの一番の強みです。
まとめ
| 判断軸 | おすすめモデル |
|---|---|
| 日本語品質を最優先 | qwen/qwen3-30b-a3b:free |
| 長いコンテキストが必要 | google/gemini-2.0-flash-exp:free |
| とにかく速い応答が欲しい |
qwen/qwen3-8b:free or mistralai/mistral-7b-instruct:free
|
| 英語ドキュメント生成 | meta-llama/llama-4-maverick:free |
| 数学・コード推論 | microsoft/phi-4:free |
無料モデルは「品質保証なし」という前提のもと、試作・個人開発・コスト最適化の第一段階として非常に有効です。特に Qwen3 シリーズと Gemini 2.0 Flash は 2026 年時点で有料モデルと遜色ない品質を無料で提供しており、使わない手はありません。
モデルのラインナップは月単位で変化するため、定期的に openrouter.ai/models を確認して最新の :free モデルをチェックする習慣をつけましょう。
参考リンク
- OpenRouter 公式ドキュメント
- OpenRouter モデル一覧
- Qwen3 技術レポート(Hugging Face)
- Llama 4 発表ブログ(Meta AI)
- Gemini 2.0 Flash リリースノート(Google)
- Phi-4 技術レポート(Microsoft Research)
✍️ 本記事の著者: 合同会社ジモラボ
ジモラボは、八王子を拠点に AI を活用した SaaS を多数開発しています。本記事の技術検証もそうした開発過程の副産物です。
- 🌐 公式サイト: https://locallab.jp
- 🔍 AI SEO 最適化 SaaS: lookupai.jp
- 📺 YouTube: @locallab_llc
- ✉️ お問い合わせ: info@locallab.jp
興味を持っていただけたら、ぜひ各 SNS のフォローもお願いします!