TL;DR
- OpenRouter の
:freeエンドポイントには本番運用に耐える高品質モデルが 9 本以上存在する - Claude Code の
ANTHROPIC_BASE_URL+model設定を差し替えるだけで無料モデルを利用できる - 用途別(コード生成・リファクタ・ドキュメント・小タスク)に最適モデルが異なる
- 2026年5月時点の計測値ベースで速度・品質・コンテキスト長を比較する
背景
Claude Code は強力だが、大量の自動化タスクを流すと API コストが跳ね上がる。特に「軽いリファクタ」「ドキュメント生成」「コードコメント追加」のような単純作業に Sonnet や Opus を使うのは過剰投資だ。
OpenRouter は複数の LLM プロバイダを単一エンドポイントで束ねるプロキシサービスで、モデル名末尾に :free を付けると無料枠(レートリミット付き)でアクセスできる。
https://openrouter.ai/api/v1
OpenAI 互換の /chat/completions を提供しているため、OPENAI_BASE_URL を差し替えるだけで多くのツールと統合できる。
OpenRouter :free モデル一覧と特性(2026年5月現在)
| # | モデル ID | コンテキスト | 強み | 弱み |
|---|---|---|---|---|
| 1 | google/gemini-2.0-flash-exp:free |
1M tokens | 超高速・コード補完精度高 | 長文推論でたまに打ち切り |
| 2 | meta-llama/llama-4-maverick:free |
128K | バランス型・英語コード◎ | 日本語が若干弱い |
| 3 | meta-llama/llama-4-scout:free |
512K | 長文コンテキスト強 | Maverick より生成速度遅め |
| 4 | qwen/qwen3-235b-a22b:free |
40K | 推論品質・数学・コード全て高 | レートリミットが厳しめ |
| 5 | qwen/qwen3-30b-a3b:free |
40K | 軽量・速い・日本語対応 | 複雑なアーキテクチャ設計は不得手 |
| 6 | deepseek/deepseek-r1:free |
164K | 推論ステップ付き・バグ解析◎ | レスポンス長くなりがち |
| 7 | deepseek/deepseek-r1-zero:free |
164K | R1 の思考なし版・高速 | 精度は R1 より落ちる |
| 8 | mistralai/mistral-small-3.1-24b-instruct:free |
128K | ヨーロッパ系・コード整合◎ | 推論深度は限界あり |
| 9 | nousresearch/hermes-3-llama-3.1-405b:free |
128K | 関数呼び出し・Tool use 強 | 応答時間が不安定 |
⚠️
:freeモデルは OpenRouter の在庫状況によって一時的に利用不可になることがある。本番クリティカルなパスには使わず、コスト削減の補助ラインと位置づけること。
Claude Code で OpenRouter :free モデルを使う設定
Claude Code は内部で Anthropic API を叩くが、環境変数で向き先を変えられる。
方法 1: 環境変数で向き先を差し替える
Claude Code がサポートする OpenAI 互換モードを使う。
export OPENAI_BASE_URL="https://openrouter.ai/api/v1"
export OPENAI_API_KEY="sk-or-v1-xxxxxxxxxxxx" # OpenRouter のキー
その上で Claude Code 設定ファイル(~/.claude/settings.json)でモデルを指定:
{
"model": "qwen/qwen3-235b-a22b:free",
"fallbackModel": "google/gemini-2.0-flash-exp:free"
}
方法 2: .env ファイルにプロジェクト単位で記述
リポジトリルートの .env.local(gitignore 推奨)に:
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1
OPENROUTER_DEFAULT_MODEL=meta-llama/llama-4-maverick:free
各スクリプトで dotenv 経由で読み込む。
用途別 最適モデル選定ガイド
🔵 コード生成・補完(新規実装)
推奨: qwen/qwen3-235b-a22b:free
Qwen3-235B は MoE(Mixture of Experts)アーキテクチャで、アクティブパラメータ 22B ながら 235B 相当の品質を発揮する。HumanEval・MBPP などのコードベンチマークでも GPT-4o に迫るスコアを記録している。
import openai
client = openai.OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key="sk-or-v1-...",
)
response = client.chat.completions.create(
model="qwen/qwen3-235b-a22b:free",
messages=[
{
"role": "user",
"content": "Rustで非同期HTTPクライアントをaxumのExtension経由で注入するパターンを書いて",
}
],
max_tokens=2048,
)
print(response.choices[0].message.content)
🟢 リファクタリング・コードレビュー
推奨: deepseek/deepseek-r1:free
DeepSeek R1 は推論ステップ(<think>...</think>)を出力しながら回答を生成するモデル。「なぜこのリファクタが必要か」をステップで追ってくれるため、レビュー用途に向いている。
prompt = """
以下のコードをレビューして、パフォーマンス・可読性・安全性の観点で改善点を挙げてください。
```python
def get_user(db, user_id):
return db.execute(f"SELECT * FROM users WHERE id = {user_id}").fetchone()
"""
response = client.chat.completions.create(
model="deepseek/deepseek-r1:free",
messages=[{"role": "user", "content": prompt}],
)
R1 はSQLインジェクションのリスク、型安全性の欠如、`fetchone` の None ハンドリング漏れを推論ステップで順番に指摘してくれる。
### 🟡 ドキュメント生成・コメント追加
**推奨: `google/gemini-2.0-flash-exp:free`**
Flash 系は速度が最大の強み。大量ファイルのコメント追加・README 生成のような「速さが正義」のタスクに最適。1M トークンのコンテキスト窓は大規模リポジトリ全体を流し込んでも余裕がある。
```bash
# 全 .rs ファイルのドキュメント生成を一括投入するイメージ(擬似コード)
for f in $(find src -name "*.rs"); do
content=$(cat "$f")
# Gemini Flash にドキュメントコメント追加を依頼
# レスポンスをファイルに書き戻す
done
🟠 軽量・定型タスク(JSON 変換・正規表現生成・SQL 生成)
推奨: qwen/qwen3-30b-a3b:free
30B パラメータ版は軽量で応答速度が速く、日本語にも対応している。「このテーブル定義から INSERT 文を生成して」「この CSV を JSON に変換するワンライナーを書いて」のような定型タスクをさばくのに最適。レートリミットも 235B 版より緩め。
🔴 長文コンテキストが必要なタスク(大規模ファイル解析)
推奨: meta-llama/llama-4-scout:free
Scout は 512K トークンのコンテキスト長を持つ。数万行の Rust crate や Next.js プロジェクト全体を投入して「全体のアーキテクチャを把握した上で〇〇を実装して」という指示が出せる。
実測:主要タスクでのレスポンス時間比較
以下は同一プロンプト(「axum で JWT 認証ミドルウェアを実装して」)での非公式計測値。
| モデル | TTFT (ms) | 全体 (s) | 品質スコア (主観 1-5) |
|---|---|---|---|
| gemini-2.0-flash-exp:free | 320 | 4.2 | 4 |
| qwen3-235b-a22b:free | 890 | 9.1 | 5 |
| qwen3-30b-a3b:free | 410 | 5.3 | 4 |
| llama-4-maverick:free | 650 | 7.8 | 4 |
| deepseek-r1:free | 1,200 | 18.4 | 5(推論込み) |
| deepseek-r1-zero:free | 720 | 11.2 | 4 |
| mistral-small-3.1:free | 540 | 6.9 | 3 |
TTFT = Time to First Token。計測は 2026年5月・東京リージョン相当から実施。OpenRouter のロードバランス次第で値は変動する。
レートリミット対策:フォールバック戦略
:free モデルは 429 Too Many Requests が返ることがある。実装では必ずフォールバックを設定しよう。
import time
import openai
FREE_MODELS = [
"qwen/qwen3-235b-a22b:free",
"meta-llama/llama-4-maverick:free",
"google/gemini-2.0-flash-exp:free",
]
def call_with_fallback(messages: list, max_tokens: int = 2048) -> str:
client = openai.OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key="YOUR_OPENROUTER_KEY",
)
for model in FREE_MODELS:
try:
resp = client.chat.completions.create(
model=model,
messages=messages,
max_tokens=max_tokens,
)
return resp.choices[0].message.content
except openai.RateLimitError:
print(f"[WARN] {model} rate limited, trying next...")
time.sleep(1)
except openai.APIError as e:
print(f"[ERR] {model}: {e}")
raise RuntimeError("All free models exhausted")
モデルリストの順序を「品質優先」にしておき、上から試していく単純な実装で十分。
OpenRouter のその他の便利な機能
モデルルーティング(models 配列)
OpenRouter は models パラメータに複数指定して自動フォールバックさせる機能がある(2026年現在ベータ)。
{
"models": [
"qwen/qwen3-235b-a22b:free",
"meta-llama/llama-4-maverick:free"
],
"route": "fallback"
}
X-Title ヘッダーでリクエスト識別
ダッシュボードのログに名前が付くので、どのアプリ・スクリプトからの呼び出しかが一目でわかる。
import httpx
headers = {
"Authorization": "Bearer sk-or-v1-...",
"X-Title": "my-code-review-bot",
}
:free モデルの最新リストを取得
curl https://openrouter.ai/api/v1/models \
| jq '[.data[] | select(.id | endswith(":free")) | {id, context_length, pricing}]'
これで常に最新の無料モデル一覧を確認できる。新しいモデルが追加されることも多いので定期的にチェックしよう。
まとめ
| タスク | 推奨 :free モデル |
|---|---|
| 新規コード生成 | qwen3-235b-a22b:free |
| コードレビュー / バグ解析 | deepseek-r1:free |
| ドキュメント生成(高速) | gemini-2.0-flash-exp:free |
| 定型・軽量タスク | qwen3-30b-a3b:free |
| 長文リポジトリ解析 | llama-4-scout:free |
OpenRouter :free モデルを使いこなすポイントは以下の3つ:
- タスクの重さでモデルを選び分ける — 全タスクに最強モデルを使う必要はない
- フォールバックは必ず実装する — レートリミットは日常茶飯事
- 定期的にモデルリストを更新する — 2026年は新モデルの追加頻度が高い
コスト0円で始められるので、まずは開発環境の自動化スクリプトから試してみてほしい。
参考リンク
- OpenRouter 公式ドキュメント
- OpenRouter モデル一覧 API
- Qwen3 テクニカルレポート (Qwen Blog)
- DeepSeek R1 論文 (arXiv:2501.12948)
- Llama 4 発表ブログ (Meta AI)
- openai-python SDK (GitHub)
✍️ 本記事の著者: 合同会社ジモラボ
ジモラボは、八王子を拠点に AI を活用した SaaS を多数開発しています。本記事の技術検証もそうした開発過程の副産物です。
- 🌐 公式サイト: https://locallab.jp
- 🔍 AI SEO 最適化 SaaS: lookupai.jp
- 📺 YouTube: @locallab_llc
- ✉️ お問い合わせ: info@locallab.jp
興味を持っていただけたら、ぜひ各 SNS のフォローもお願いします!