Feat : Gitbook

This commit is contained in:
decolua
2026-05-11 11:50:24 +07:00
parent 7ad538bcf2
commit fd92af77a0
124 changed files with 34154 additions and 4 deletions
+537
View File
@@ -0,0 +1,537 @@
# コンボ - カスタムフォールバックチェーン
自動フォールバック付きのカスタムモデル組み合わせを作成。コンボを使って、コスト、品質、可用性に基づく独自のルーティング戦略を定義できます。
---
## コンボとは?
コンボはダッシュボードで作成する**カスタムフォールバックチェーン**です。単一モデルを使う代わりに、9Routerが順番に試すモデルのシーケンスを定義します。
**例:**
```
コンボ名: premium-coding
モデル:
1. cc/claude-opus-4-5-20251101 (最初に試行)
2. glm/glm-4.7 (#1のクォータ消費時)
3. minimax/MiniMax-M2.1 (#2のクォータ消費時)
```
**CLIでの使用:**
```
Model: premium-coding
```
9Routerは成功するまで各モデルを順番に自動的に試します。
---
## なぜコンボを使うのか?
### 1. サブスクリプション価値を最大化
```
cc/claude-opus → glm/glm-4.7 → if/kimi-k2-thinking
→ サブスクリプション優先、低価格バックアップ、無料緊急時
→ すでに支払っているサブスクリプションから完全な価値を得る
```
### 2. コストを最小化
```
glm/glm-4.7 → minimax/MiniMax-M2.1 → if/kimi-k2-thinking
→ 最安の有料オプションから開始 (100万あたり$0.60)
→ さらに安いものへフォールバック (100万あたり$0.20)
→ 緊急時の無料階層
→ 総コスト: 月$5〜10 vs ChatGPT APIの$2000
```
### 3. 24時間可用性を確保
```
cc/claude-opus → cx/gpt-5.2-codex → glm/glm-4.7 → if/kimi-k2-thinking
→ 最後に常に無料階層を含める
→ クォータ切れにならない
→ いつでもどこでもコーディング
```
### 4. 品質に最適化
```
cc/claude-opus-4-5 → cx/gpt-5.2-codex → gc/gemini-3-pro
→ 最高のモデルが最初
→ 他のプレミアムモデルへフォールバック
→ フォールバックチェーン全体で高品質を維持
```
---
## コンボの作成方法
### ステップ1: ダッシュボードを開く
```
http://localhost:20128
→ パスワードでログイン
```
### ステップ2: コンボへ移動
```
Dashboard → Combos → Create New Combo
```
### ステップ3: コンボを設定
**コンボ名:**
```
premium-coding
```
**説明(任意):**
```
サブスクリプション優先、低価格バックアップ、無料緊急時
```
**モデルを選択:**
```
1. cc/claude-opus-4-5-20251101
2. glm/glm-4.7
3. minimax/MiniMax-M2.1
```
**ドラッグで並べ替え** - 上から下へ優先順位。
### ステップ4: 保存
```
「Save Combo」をクリック
→ コンボがモデルリストに表示
```
### ステップ5: CLIで使用
```
Cursor/Cline/任意のツール:
Model: premium-coding
```
---
## コンボの例
### 例1: プレミアムコーディング (サブスク → 低価格 → 無料)
**目標**: サブスクリプション価値を最大化、追加コストを最小化。
```
Dashboard → Combos → Create New
Name: premium-coding
Models:
1. cc/claude-opus-4-5-20251101
2. glm/glm-4.7
3. minimax/MiniMax-M2.1
```
**使用法:**
```
Cursor IDE:
Model: premium-coding
```
**動作:**
```
朝 (新鮮なクォータ):
Request → cc/claude-opus-4-5 ✅
午後 (Claudeクォータ切れ):
Request → glm/glm-4.7 ✅ (自動切替)
夕方 (GLMクォータ切れ):
Request → minimax/MiniMax-M2.1 ✅ (自動切替)
```
**月コスト (1億トークン):**
```
Claude Code経由で8000万: $0 (サブスクリプション)
GLM経由で1500万: $9
MiniMax経由で500万: $1
合計: $10 + サブスクリプション
```
**節約**: ChatGPT API ($2000) に対して約99%。
---
### 例2: バジェットコンボ (低価格 → 無料)
**目標**: コストを最小化、バックアップに無料階層を使用。
```
Dashboard → Combos → Create New
Name: budget-combo
Models:
1. glm/glm-4.7
2. minimax/MiniMax-M2.1
3. if/kimi-k2-thinking
```
**使用法:**
```
Cline:
Provider: OpenAI Compatible
Base URL: http://localhost:20128/v1
Model: budget-combo
```
**動作:**
```
Request → glm/glm-4.7
✅ 日次クォータ利用可 → GLMを使用 (100万あたり$0.60)
❌ クォータ消費 → MiniMaxを試行 (100万あたり$0.20)
❌ MiniMaxクォータ切れ → iFlowを使用 (無料)
```
**月コスト (1億トークン):**
```
GLM経由で7000万: $42
MiniMax経由で2000万: $4
iFlow経由で1000万: $0
合計: $46 vs ChatGPT APIの$2000
```
**節約**: 97%。
---
### 例3: フリーコンボ (ゼロコスト)
**目標**: 100%無料、コストはゼロ。
```
Dashboard → Combos → Create New
Name: free-combo
Models:
1. if/kimi-k2-thinking
2. qw/qwen3-coder-plus
3. kr/claude-sonnet-4.5
```
**使用法:**
```
Claude Desktop:
Model: free-combo
```
**動作:**
```
Request → if/kimi-k2-thinking
✅ 利用可 → iFlowを使用
❌ エラー → Qwenを試行
❌ エラー → Kiroを試行
```
**月コスト:**
```
無料プロバイダー経由で1億トークン: $0
合計: 永久に$0
```
**ユースケース**: 個人プロジェクト、学習、実験。
---
### 例4: 品質優先 (プレミアムモデルのみ)
**目標**: 最高の品質、低価格フォールバックなし。
```
Dashboard → Combos → Create New
Name: quality-first
Models:
1. cc/claude-opus-4-5-20251101
2. cx/gpt-5.2-codex
3. gc/gemini-3-pro-preview
```
**使用法:**
```
Codex CLI:
export OPENAI_BASE_URL="http://localhost:20128"
Model: quality-first
```
**動作:**
```
Request → cc/claude-opus-4-5
❌ クォータ切れ → cx/gpt-5.2-codex
❌ クォータ切れ → gc/gemini-3-pro-preview
❌ すべて切れ → エラーを返す (低価格フォールバックなし)
```
**ユースケース**: クリティカルな本番コード、複雑なリファクタリング。
---
### 例5: マルチサブスクリプション (すべてを最大化)
**目標**: 追加料金前にすべてのサブスクリプションを利用。
```
Dashboard → Combos → Create New
Name: multi-sub
Models:
1. gc/gemini-3-flash-preview (月18万無料)
2. cc/claude-opus-4-5-20251101 (Proサブスクリプション)
3. cx/gpt-5.2-codex (Plusサブスクリプション)
4. gh/gpt-5 (Copilotサブスクリプション)
5. glm/glm-4.7 (低価格バックアップ)
6. if/kimi-k2-thinking (無料緊急時)
```
**月コスト (2億トークン):**
```
Gemini CLI経由で5000万: $0 (無料プラン)
Claude Code経由で8000万: $0 (サブスクリプション)
Codex経由で4000万: $0 (サブスクリプション)
Copilot経由で2000万: $0 (サブスクリプション)
GLM経由で800万: $4.80
iFlow経由で200万: $0
合計: $4.80 + 既存サブスクリプション
```
**結果**: サブスクリプションから1.9億トークン使用、わずか$4.80の追加料金。
---
### 例6: クォータリセット最適化
**目標**: リセット時間に基づいて使用量を分散。
```
Dashboard → Combos → Create New
Name: reset-optimized
Models:
1. cc/claude-opus-4-5 (5時間リセット、朝に使用)
2. gc/gemini-3-flash (1K/日、午後に使用)
3. glm/glm-4.7 (毎日午前10時リセット、夕方に使用)
4. minimax/MiniMax-M2.1 (5時間ローリング、夜に使用)
5. if/kimi-k2-thinking (無制限、緊急時)
```
**日課:**
```
08:00 - 13:00: Claude Code (新鮮な5時間クォータ)
13:00 - 18:00: Gemini CLI (1K/日クォータ)
18:00 - 22:00: GLM (翌朝10時リセット)
22:00 - 08:00: MiniMax (5時間ローリング) または iFlow
```
**結果**: 最小コストで24時間コーディング。
---
## CLIツールでコンボを使用
### Cursor IDE
```
Settings → Models → Advanced:
OpenAI API Base URL: http://localhost:20128/v1
OpenAI API Key: [ダッシュボードから取得]
Model: premium-coding
```
### Claude Desktop
`~/.claude/config.json`を編集:
```json
{
"anthropic_api_base": "http://localhost:20128/v1",
"anthropic_api_key": "your-9router-api-key",
"model": "budget-combo"
}
```
### Codex CLI
```bash
export OPENAI_BASE_URL="http://localhost:20128"
export OPENAI_API_KEY="your-9router-api-key"
codex --model quality-first "your prompt"
```
### Cline / Continue / RooCode
```
Provider: OpenAI Compatible
Base URL: http://localhost:20128/v1
API Key: [ダッシュボードから取得]
Model: free-combo
```
### APIリクエスト
```bash
curl http://localhost:20128/v1/chat/completions \
-H "Authorization: Bearer your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "premium-coding",
"messages": [
{"role": "user", "content": "Write a function to..."}
],
"stream": true
}'
```
---
## ベストプラクティス
### 1. 常に無料階層を含める
```
✅ 良い:
cc/claude-opus → glm/glm-4.7 → if/kimi-k2-thinking
❌ 悪い:
cc/claude-opus → glm/glm-4.7
(無料フォールバックなし、クォータ切れの可能性)
```
**理由**: 24時間可用性を確保、クォータでブロックされない。
### 2. コスト順に並べる (安価→高価)
```
✅ 良い:
glm/glm-4.7 → minimax/MiniMax-M2.1 → cc/claude-opus
❌ 悪い:
cc/claude-opus → glm/glm-4.7
(シンプルなタスクにサブスクリプションクォータを浪費)
```
**例外**: サブスクリプション価値を最大化したい場合は、サブスクリプションを最初に。
### 3. 品質要件に合わせる
```
本番コードの場合:
cc/claude-opus → cx/gpt-5.2-codex → glm/glm-4.7
クイックタスクの場合:
glm/glm-4.7 → if/kimi-k2-thinking
実験用:
if/kimi-k2-thinking → qw/qwen3-coder-plus
```
### 4. クォータリセット時間を考慮
```
朝のコンボ (新鮮なクォータ):
cc/claude-opus → cx/gpt-5.2-codex
夕方のコンボ (クォータが消費されている可能性):
glm/glm-4.7 → minimax/MiniMax-M2.1 → if/kimi-k2-thinking
```
### 5. 異なるユースケース用に複数のコンボを作成
```
premium-coding: 複雑なタスク用
budget-combo: シンプルなタスク用
free-combo: 実験用
quality-first: 本番コード用
```
**タスク要件に基づいてコンボを切り替え**ます。
### 6. コンボパフォーマンスをモニター
```
Dashboard → Analytics → Combo Usage:
premium-coding:
80% cc/claude-opus経由 (良好、サブスクリプション使用)
15% glm/glm-4.7経由 (許容バックアップ)
5% minimax経由 (まれなフォールバック)
```
**最適化**: フォールバック使用が多すぎる場合、プライマリクォータを増やすかモデルを並べ替え。
---
## 高度な設定
### コンボごとに予算上限を設定
```
Dashboard → Combos → Edit → Budget:
Daily limit: $5
Monthly limit: $50
```
上限に達すると、9Routerは有料モデルをスキップして無料階層のみを使用。
### コンボ内のモデルを有効/無効
```
Dashboard → Combos → Edit → Models:
✅ cc/claude-opus-4-5 (有効)
❌ glm/glm-4.7 (一時的に無効)
✅ if/kimi-k2-thinking (有効)
```
**ユースケース**: コンボを削除せずに高価なモデルを一時的に無効化。
### 既存のコンボを複製
```
Dashboard → Combos → Clone "premium-coding"
→ "-copy" サフィックス付きのコピーを作成
→ 変更して新しいコンボとして保存
```
**ユースケース**: 異なるシナリオ用のバリエーションを作成。
---
## トラブルシューティング
**問題: コンボがモデルリストに表示されない**
**解決策:**
1. ダッシュボードを更新
2. コンボが保存されていることを確認 (緑のチェック)
3. CLIツールを再起動してモデルリストを更新
**問題: コンボが常に最後のモデル (無料階層) を使用**
**解決策:**
1. プライマリモデルのクォータを確認 (Dashboard → Quota)
2. APIキーが有効か確認 (Dashboard → Providers)
3. 予算上限を超えていないか確認
**問題: コンボのコストが予想より高い**
**解決策:**
1. Dashboard → Analytics → コンボ使用量を確認
2. プライマリモデルがクォータ切れか確認
3. モデルを並べ替え (安価を先に)
4. 予算上限を設定
---
## 関連
- [スマートルーティング](./smart-routing.md) - 自動フォールバックの仕組み
- [クォータトラッキング](./quota-tracking.md) - 使用量とコストを監視
@@ -0,0 +1,687 @@
# クォータトラッキングと使用量モニタリング
リアルタイムのトークン消費を追跡し、クォータ制限を監視し、コストを見積もり、不足前にアラートを取得。サブスクリプションクォータを無駄にしたり、予算上限を超えたりすることはありません。
---
## 概要
9Routerはすべてのプロバイダーに対して包括的なクォータトラッキングを提供:
- **リアルタイムトークン消費** - リクエストごとの使用トークンを表示
- **クォータ上限と残量** - 使用量 vs 上限を追跡
- **リセットカウントダウン** - クォータが更新されるタイミング
- **コスト見積もり** - 有料階層の支出を計算
- **月次レポート** - 使用パターンを分析
- **アラートと通知** - 上限前に警告を取得
---
## ダッシュボード概要
### クォータサマリー
```
Dashboard → Home → Quota Overview
┌─────────────────────────────────────────────┐
│ Claude Code (cc/) │
│ ████████████░░░░░░░░ 2.5h / 5h (50%) │
│ Resets in: 2h 30m │
│ Cost: $0 (subscription) │
└─────────────────────────────────────────────┘
┌─────────────────────────────────────────────┐
│ Gemini CLI (gc/) │
│ ████████░░░░░░░░░░░░ 450 / 1000 (45%) │
│ Daily reset in: 18h 30m │
│ Monthly: 45K / 180K (25%) │
│ Cost: $0 (free tier) │
└─────────────────────────────────────────────┘
┌─────────────────────────────────────────────┐
│ GLM-4.7 (glm/) │
│ ██████████████░░░░░░ 7M / 10M tokens (70%) │
│ Resets: Daily 10:00 AM (in 5h 35m) │
│ Cost today: $4.20 │
└─────────────────────────────────────────────┘
┌─────────────────────────────────────────────┐
│ MiniMax M2.1 (minimax/) │
│ ████████████████░░░░ 4M / 5M tokens (80%) │
│ Rolling 5h window │
│ Cost (5h): $0.80 │
└─────────────────────────────────────────────┘
┌─────────────────────────────────────────────┐
│ iFlow (if/) │
│ ████████████████████ Unlimited │
│ Cost: $0 (free forever) │
└─────────────────────────────────────────────┘
```
---
## リアルタイムトークン消費
### リクエストごとのトラッキング
各リクエストに詳細なトークン使用量が表示されます:
```
Dashboard → Activity → Recent Requests
Request #1234
Model: cc/claude-opus-4-5-20251101
Timestamp: 2026-02-04 04:15:32
Tokens:
Input: 1,250 tokens
Output: 850 tokens
Total: 2,100 tokens
Cost: $0 (subscription quota)
Duration: 3.2s
Status: ✅ Success
```
### ライブ使用量モニター
```
Dashboard → Live Monitor
Current request:
Model: glm/glm-4.7
Tokens streamed: 450 / ~800 estimated
Cost so far: $0.0009
Duration: 1.8s
```
### モデル別のトークン内訳
```
Dashboard → Analytics → Token Usage
Today (Feb 4, 2026):
cc/claude-opus-4-5: 15M tokens ($0, subscription)
glm/glm-4.7: 8M tokens ($4.80)
if/kimi-k2-thinking: 3M tokens ($0, free)
Total: 26M tokens
Cost: $4.80
```
---
## クォータ上限とリセット時間
### サブスクリプションプロバイダー
**Claude Code (Pro/Max)**
```
クォータタイプ: 時間ベース (5時間ローリング)
上限: 5時間の使用
リセット: 5時間ローリングウィンドウ + 週次更新
追跡: モデルごとの使用時間
ダッシュボード表示:
Opus: 2.5h / 5h 使用
Sonnet: 1.2h / 5h 使用
Haiku: 0.8h / 5h 使用
週次リセット: 毎週月曜00:00 UTC
```
**OpenAI Codex (Plus/Pro)**
```
クォータタイプ: 時間ベース (5時間ローリング)
上限: 5時間 (Plus) / 10時間 (Pro)
リセット: 5時間ローリングウィンドウ + 週次更新
ダッシュボード表示:
GPT-5.2 Codex: 3.5h / 5h 使用
Resets in: 1h 30m
```
**Gemini CLI (無料)**
```
クォータタイプ: リクエスト数 + 月次トークン
日次上限: 1,000 リクエスト
月次上限: 180,000 コンプリーション
リセット: 日次 00:00 UTC + 月次 1日
ダッシュボード表示:
Today: 450 / 1,000 requests (45%)
This month: 45K / 180K completions (25%)
Daily reset in: 18h 30m
Monthly reset in: 26 days
```
**GitHub Copilot**
```
クォータタイプ: 月次使用量
上限: プランによる
リセット: 各月1日
ダッシュボード表示:
Usage: 60% of monthly quota
Resets: March 1, 2026 (in 25 days)
```
### 低価格プロバイダー
**GLM-4.7**
```
クォータタイプ: 日次トークン上限
上限: 10Mトークン/日 (Coding Plan)
リセット: 毎日午前10時 北京時間 (UTC+8)
ダッシュボード表示:
Used: 7M / 10M tokens (70%)
Remaining: 3M tokens
Resets in: 5h 35m
Cost today: $4.20
```
**MiniMax M2.1**
```
クォータタイプ: 5時間ローリングウィンドウ
上限: 5時間あたり5Mトークン
リセット: 連続ローリングウィンドウ
ダッシュボード表示:
Used (5h): 4M / 5M tokens (80%)
Oldest usage expires in: 45m
Cost (5h): $0.80
```
**Kimi K2**
```
クォータタイプ: 月次サブスクリプション
上限: 10Mトークン/月 ($9固定)
リセット: サブスクリプション日に月次
ダッシュボード表示:
Used: 6M / 10M tokens (60%)
Resets: Feb 15, 2026 (in 11 days)
Cost: $9/month (prepaid)
```
### 無料プロバイダー
**iFlow / Qwen / Kiro**
```
クォータタイプ: 無制限 (レート制限)
上限: ハード制限なし
リセット: なし
ダッシュボード表示:
Used today: 5M tokens
Cost: $0 (free forever)
Status: ✅ Available
```
---
## コスト見積もり
### リアルタイムコストトラッキング
```
Dashboard → Costs → Today
Subscription providers: $0
Claude Code: 15M tokens ($0, included)
Gemini CLI: 3M tokens ($0, free tier)
Paid providers: $4.80
GLM-4.7: 8M tokens ($4.80)
Input: 6M × $0.60/1M = $3.60
Output: 2M × $2.20/1M = $4.40
Total: $4.80
Free providers: $0
iFlow: 3M tokens ($0)
Total today: $4.80
```
### 月次支出レポート
```
Dashboard → Costs → This Month (February 2026)
Week 1 (Feb 1-7):
Subscription: $0 (80M tokens)
Paid: $15.20 (25M tokens)
Free: $0 (10M tokens)
Total: $15.20
Week 2 (Feb 8-14):
Subscription: $0 (75M tokens)
Paid: $12.80 (20M tokens)
Free: $0 (8M tokens)
Total: $12.80
Month to date: $28.00
Projected (30 days): ~$120
Breakdown by provider:
GLM-4.7: $22.00 (78%)
MiniMax M2.1: $6.00 (22%)
Average cost per 1M tokens: $0.62
Savings vs ChatGPT API: 97% ($4,000 → $120)
```
### コスト予測
```
Dashboard → Costs → Projections
Based on last 7 days usage:
Daily average: 50M tokens
Daily cost: $4.50
Monthly projection:
Tokens: 1,500M (1.5B)
Cost: $135
Breakdown:
Subscription: 900M tokens ($0)
GLM-4.7: 450M tokens ($90)
MiniMax: 120M tokens ($24)
Free: 30M tokens ($0)
Budget status:
Daily limit: $5 → 90% used today
Monthly limit: $150 → 90% projected
⚠️ Warning: May exceed monthly budget
```
---
## 使用量ダッシュボード
### 概要統計
```
Dashboard → Analytics → Overview
Today (Feb 4, 2026):
Requests: 1,234
Tokens: 26M
Cost: $4.80
Avg response time: 2.1s
This week:
Requests: 8,456
Tokens: 180M
Cost: $28.00
Success rate: 99.2%
This month:
Requests: 15,234
Tokens: 320M
Cost: $52.00
Top model: cc/claude-opus-4-5 (45%)
```
### モデル別使用量
```
Dashboard → Analytics → Models
Top models (this month):
1. cc/claude-opus-4-5: 145M tokens (45%)
2. glm/glm-4.7: 95M tokens (30%)
3. if/kimi-k2-thinking: 50M tokens (16%)
4. minimax/MiniMax-M2.1: 20M tokens (6%)
5. gc/gemini-3-flash: 10M tokens (3%)
Cost breakdown:
cc/claude-opus: $0 (subscription)
glm/glm-4.7: $45.00
if/kimi-k2-thinking: $0 (free)
minimax/MiniMax-M2.1: $7.00
gc/gemini-3-flash: $0 (free)
```
### 時間別使用量
```
Dashboard → Analytics → Timeline
Hourly usage (today):
00:00 - 01:00: 0.5M tokens
01:00 - 02:00: 0.2M tokens
...
08:00 - 09:00: 3.2M tokens (peak)
09:00 - 10:00: 2.8M tokens
...
23:00 - 00:00: 0.8M tokens
Peak hours: 08:00 - 12:00 (morning coding)
Low hours: 00:00 - 06:00 (night)
```
### コンボ別使用量
```
Dashboard → Analytics → Combos
premium-coding:
Requests: 456
Tokens: 12M
Cost: $2.40
Breakdown:
cc/claude-opus: 8M tokens (67%, $0)
glm/glm-4.7: 3M tokens (25%, $1.80)
minimax/MiniMax-M2.1: 1M tokens (8%, $0.20)
budget-combo:
Requests: 234
Tokens: 6M
Cost: $1.20
Breakdown:
glm/glm-4.7: 4M tokens (67%, $2.40)
if/kimi-k2-thinking: 2M tokens (33%, $0)
```
---
## アラートと通知
### クォータアラート
```
Dashboard → Settings → Alerts
Quota warnings:
✅ Alert at 80% quota used
✅ Alert at 90% quota used
✅ Alert when quota exhausted
✅ Notify when quota resets
Delivery:
✅ Dashboard notification
✅ Email (optional)
✅ Webhook (optional)
```
**通知例:**
```
⚠️ Claude Code quota 80% used
2.5h remaining (resets in 1h 30m)
⚠️ GLM-4.7 quota 90% used
1M tokens remaining (resets in 5h)
✅ Gemini CLI quota reset
1,000 requests available (daily limit)
```
### 予算アラート
```
Dashboard → Settings → Budget Alerts
Daily budget: $5
✅ Alert at 80% ($4)
✅ Alert at 100% ($5)
✅ Auto-switch to free tier when exceeded
Monthly budget: $150
✅ Alert at 50% ($75)
✅ Alert at 80% ($120)
✅ Alert at 100% ($150)
```
**通知例:**
```
⚠️ Daily budget 80% used
$4.00 / $5.00 spent today
⚠️ Monthly budget 50% reached
$75 / $150 spent this month
Projected: $135 (within budget)
🚨 Daily budget exceeded
$5.20 / $5.00 spent today
Auto-switched to free tier
```
### コスト異常検知
```
Dashboard → Settings → Anomaly Detection
✅ Detect unusual spending patterns
✅ Alert on cost spikes (>2× daily average)
✅ Warn on quota exhaustion patterns
Example alert:
⚠️ Cost spike detected
Today: $12.50 (2.5× daily average)
Reason: High GLM-4.7 usage (20M tokens)
Suggestion: Check if primary models quota-exhausted
```
---
## ベストプラクティス
### 1. クォータを毎日モニター
```
日課:
1. ダッシュボードクォータ概要を確認 (30秒)
2. リセット時間を確認
3. クォータ可用性に合わせて使用量を計画
```
**例:**
```
朝の確認:
✅ Claude Code: 5時間利用可 (新鮮なリセット)
✅ Gemini CLI: 1Kリクエスト利用可
⚠️ GLM-4.7: 2Mトークン残 (午前10時リセット)
アクション: 朝の作業にClaude Codeを使用
```
### 2. 予算上限を設定
```
Dashboard → Settings → Budget:
Daily: $5 (使いすぎ防止)
Monthly: $150 (予算に整合)
```
**結果**: 上限到達時に自動的に無料階層へ切替。
### 3. コンボ使用を最適化
```
Dashboard → Analytics → Combos:
どのモデルが最もよく使われているか確認
コストを最小化するためにコンボ順序を調整
```
**例:**
```
現在: cc/claude-opus → glm/glm-4.7
80% Claude経由 (良好)
20% GLM経由 ($12/月)
最適化後: gc/gemini-3-flash → cc/claude-opus → glm/glm-4.7
50% Gemini経由 (無料)
40% Claude経由 (サブスクリプション)
10% GLM経由 ($6/月)
節約: $6/月
```
### 4. リセット時間を追跡
```
Dashboard → Quota → Reset Schedule:
Claude Code: 5時間ローリング + 週次月曜
Gemini CLI: 日次 00:00 UTC + 月次 1日
GLM-4.7: 毎日午前10時 北京時間
MiniMax: 5時間ローリングウィンドウ
```
**戦略**: クォータが新鮮な時にプロバイダーを使用。
### 5. 月次レポートを確認
```
Dashboard → Analytics → Monthly Report:
Total tokens: 1.5B
Total cost: $120
Savings: 97% vs ChatGPT API
インサイト:
- 60% サブスクリプション経由の使用 ($0)
- 30% GLM経由 ($90)
- 10% 無料階層経由 ($0)
最適化:
- Gemini CLI使用を増やす (無料)
- GLM使用を減らす (高価)
```
---
## APIアクセス
### クォータステータスを取得
```bash
GET http://localhost:20128/api/quota
Authorization: Bearer your-api-key
Response:
{
"providers": [
{
"id": "cc",
"name": "Claude Code",
"quota": {
"used": 2.5,
"limit": 5,
"unit": "hours",
"percentage": 50
},
"reset": {
"type": "rolling",
"window": "5h",
"nextReset": "2026-02-04T06:45:00Z"
},
"cost": {
"today": 0,
"month": 0,
"currency": "USD"
}
},
{
"id": "glm",
"name": "GLM-4.7",
"quota": {
"used": 7000000,
"limit": 10000000,
"unit": "tokens",
"percentage": 70
},
"reset": {
"type": "daily",
"time": "10:00 AM UTC+8",
"nextReset": "2026-02-04T10:00:00+08:00"
},
"cost": {
"today": 4.20,
"month": 52.00,
"currency": "USD"
}
}
]
}
```
### 使用統計を取得
```bash
GET http://localhost:20128/api/usage?period=today
Authorization: Bearer your-api-key
Response:
{
"period": "today",
"date": "2026-02-04",
"summary": {
"requests": 1234,
"tokens": 26000000,
"cost": 4.80
},
"byModel": [
{
"model": "cc/claude-opus-4-5",
"requests": 456,
"tokens": 15000000,
"cost": 0
},
{
"model": "glm/glm-4.7",
"requests": 234,
"tokens": 8000000,
"cost": 4.80
}
]
}
```
---
## トラブルシューティング
**問題: クォータが0%を表示するがリクエストが失敗**
**解決策:**
1. プロバイダー接続を確認 (Dashboard → Providers)
2. APIキーが有効か確認
3. プロバイダーがダウンしているか確認 (ステータスページ)
4. OAuthプロバイダーを再接続してみる
**問題: コスト見積もりが正しくない**
**解決策:**
1. Dashboard → Settings → Pricing
2. プロバイダーごとの料金が現在のレートと一致するか確認
3. プロバイダーがレートを変更した場合は料金を更新
4. 不一致が続く場合はサポートに連絡
**問題: リセット時間が更新されない**
**解決策:**
1. ダッシュボードを更新 (F5)
2. システム時刻が正しいか確認
3. タイムゾーン設定を確認
4. 問題が続く場合は9Routerを再起動
**問題: アラートが受信されない**
**解決策:**
1. Dashboard → Settings → Alerts
2. メールアドレスが正しいか確認
3. スパムフォルダを確認
4. 通知をテスト (Send Testボタン)
---
## 関連
- [スマートルーティング](./smart-routing.md) - クォータに基づく自動フォールバック
- [コンボ](./combos.md) - カスタムフォールバックチェーンを作成
@@ -0,0 +1,407 @@
# スマートルーティングと自動フォールバック
9Routerは3階層フォールバックシステムを使用して、最適な利用可能なプロバイダーへリクエストを自動的にルーティングします。クォータ制限やレート制限でコーディングが止まることはありません。
---
## 動作の仕組み
9Routerは、既存のサブスクリプションを最大化し、コストを最小化し、24時間可用性を確保するため、インテリジェントなルーティングを使用します:
```
Request → 9Router → Tier 1を確認 (サブスクリプション)
↓ クォータ消費
Tier 2を確認 (低価格)
↓ 予算上限
Tier 3を確認 (無料)
Response
```
### 3階層フォールバックシステム
**Tier 1: サブスクリプション (プライマリ)**
- Claude Code (Pro/Max)
- OpenAI Codex (Plus/Pro)
- Gemini CLI (月18万無料)
- GitHub Copilot
- Antigravity (Google)
**目標**: すでに支払っているサブスクリプションから価値を最大化。
**Tier 2: 低価格 (バックアップ)**
- GLM-4.7 (入力100万あたり$0.60)
- MiniMax M2.1 (入力100万あたり$0.20)
- Kimi K2 (月$9固定)
**目標**: サブスクリプションクォータ切れ時の超低価格バックアップ (ChatGPT APIより約90%安い)。
**Tier 3: 無料 (緊急時)**
- iFlow (8モデル)
- Qwen (3モデル)
- Kiro (Claude無料)
**目標**: 無制限コーディング用のゼロコストフォールバック。
---
## 自動切替
9Routerはクォータをリアルタイムでモニターし、プロバイダーを自動的に切り替えます:
### シナリオ1: サブスクリプションクォータ消費
```
ユーザーリクエスト → cc/claude-opus-4-5
↓ クォータ消費 (5時間制限到達)
自動切替 → glm/glm-4.7
↓ 日次クォータ消費
自動切替 → minimax/MiniMax-M2.1
↓ 5時間クォータ消費
自動切替 → if/kimi-k2-thinking (無料)
レスポンス配信 ✅
```
**結果**: ダウンタイムゼロ、シームレスな体験。
### シナリオ2: レート制限
```
ユーザーリクエスト → cx/gpt-5.2-codex
↓ レート制限 (リクエストが多すぎ)
自動切替 → glm/glm-4.7
レスポンス配信 ✅
```
### シナリオ3: プロバイダー利用不可
```
ユーザーリクエスト → cc/claude-opus-4-5
↓ プロバイダーエラー (503)
自動切替 → 次の利用可能なモデル
レスポンス配信 ✅
```
---
## モデル選択ロジック
9Routerは以下に基づいて最適なモデルを選択します:
1. **クォータ可用性** - プロバイダーに残量があるか確認
2. **コスト階層** - サブスクリプション → 低価格 → 無料を優先
3. **リセットタイミング** - クォータリセット時を考慮
4. **プロバイダー健全性** - エラーのあるプロバイダーをスキップ
### 優先順位の例
`cc/claude-opus-4-5` へのリクエストの場合:
```
1. Claude Codeクォータを確認
✅ 利用可 → cc/claude-opus-4-5を使用
❌ 消費 → ステップ2へ
2. フォールバック階層を確認 (設定されている場合)
✅ GLMクォータ利用可 → glm/glm-4.7を使用
❌ 消費 → ステップ3へ
3. 無料階層を確認
✅ iFlow利用可 → if/kimi-k2-thinkingを使用
❌ すべて消費 → クォータエラーを返す
```
---
## 設定オプション
### ダッシュボード設定
**1. 自動フォールバックを有効/無効化**
```
Dashboard → Settings → Smart Routing
→ 「Auto Fallback」をオン/オフに切替
```
- **オン** (デフォルト): 自動階層切替
- **オフ**: 厳格モード、プライマリモデル利用不可時にエラーを返す
**2. 予算上限を設定**
```
Dashboard → Settings → Budget Control
→ 日次上限: $5
→ 月次上限: $50
```
予算到達時、9Routerは自動的に無料階層へ切替。
**3. フォールバック順序を設定**
```
Dashboard → Settings → Fallback Priority
→ 各階層内でプロバイダーをドラッグして並べ替え
```
カスタム順序の例:
```
Tier 1: Gemini CLI → Claude Code → Codex
Tier 2: MiniMax → GLM → Kimi
Tier 3: iFlow → Kiro → Qwen
```
**4. クォータリセット通知**
```
Dashboard → Settings → Notifications
→ クォータリセット時にメール
→ 80%クォータ使用時にアラート
```
---
## 例
### 例1: 基本的な自動フォールバック
**セットアップ:**
```
Model: cc/claude-opus-4-5-20251101
Fallback: 自動 (デフォルト3階層)
```
**動作:**
```
朝 (新鮮なクォータ):
Request → cc/claude-opus-4-5 ✅
午後 (クォータ消費):
Request → glm/glm-4.7 ✅ (自動切替)
夕方 (GLMクォータ切れ):
Request → minimax/MiniMax-M2.1 ✅ (自動切替)
深夜 (すべての有料クォータ切れ):
Request → if/kimi-k2-thinking ✅ (無料階層)
```
**コスト**: 月$5〜10の追加料金 (主にサブスクリプションでカバー)。
### 例2: 予算意識のルーティング
**セットアップ:**
```
Dashboard → Settings:
Daily budget: $2
Monthly budget: $20
Fallback: 有効
```
**動作:**
```
1〜15日 (予算内):
Requests → glm/glm-4.7 (低価格階層)
コスト: $1.50/日
16日 (予算到達):
Requests → if/kimi-k2-thinking (無料階層)
コスト: $0
翌月 (予算リセット):
Requests → 再びglm/glm-4.7
```
**結果**: 月$20を超えない、常に利用可能。
### 例3: サブスクリプションのみモード
**セットアップ:**
```
Dashboard → Settings:
Auto Fallback: オフ
Strict mode: オン
```
**動作:**
```
Request → cc/claude-opus-4-5
✅ クォータ利用可 → 成功
❌ クォータ消費 → エラーを返す (フォールバックなし)
```
**ユースケース**: 有料サブスクリプションのみを使用したい場合、追加コストなし。
### 例4: 無料のみモード
**セットアップ:**
```
Model: if/kimi-k2-thinking
Fallback: qw/qwen3-coder-plus → kr/claude-sonnet-4.5
```
**動作:**
```
すべてのリクエスト → 無料階層のみ
コスト: 永久に$0
```
**ユースケース**: 個人プロジェクト、学習、実験。
---
## ベストプラクティス
### 1. サブスクリプション価値を最大化
```
戦略:
- サブスクリプションモデルをTier 1に設定
- ダッシュボードでクォータ使用量をモニター
- サブスクリプション消費時のみ低価格階層を使用
```
**コンボ例:**
```
cc/claude-opus-4-5 → glm/glm-4.7 → if/kimi-k2-thinking
```
### 2. コストに最適化
```
戦略:
- Gemini CLI無料階層を最初に使用 (月18万)
- GLM/MiniMaxへフォールバック (超低価格)
- 緊急時: iFlow (無料)
```
**コンボ例:**
```
gc/gemini-3-flash-preview → glm/glm-4.7 → if/kimi-k2-thinking
```
### 3. 品質に最適化
```
戦略:
- 最高のモデルを使用 (Claude Opus、GPT-5.2)
- 良質な低価格モデルへフォールバック (GLM-4.7)
- 最後の手段: 無料階層
```
**コンボ例:**
```
cc/claude-opus-4-5 → cx/gpt-5.2-codex → glm/glm-4.7
```
### 4. 24時間可用性
```
戦略:
- フォールバックに常に無料階層を含める
- クォータリセット時間をモニター
- プロバイダー間で使用量を分散
```
**コンボ例:**
```
cc/claude-opus-4-5 → glm/glm-4.7 → minimax/MiniMax-M2.1 → if/kimi-k2-thinking
```
**結果**: クォータ切れにならない、いつでもコーディング。
---
## クォータリセット戦略
クォータリセット時間に合わせて使用量を計画:
| プロバイダー | クォータリセット | 戦略 |
|----------|-------------|----------|
| **Claude Code** | 5時間 + 週次 | 朝、新鮮なクォータを使用 |
| **Codex** | 5時間 + 週次 | Claudeクォータ切れ後に使用 |
| **Gemini CLI** | 日次 (1K) + 月次 (18万) | 一日中使用 |
| **GLM-4.7** | 毎日午前10時 | 夕方使用、翌朝リセット |
| **MiniMax M2.1** | 5時間ローリング | いつでも使用、ローリングウィンドウを追跡 |
| **iFlow/Qwen/Kiro** | 制限なし | 緊急時バックアップ |
**日課の例:**
```
08:00 - 13:00: Claude Code (新鮮な5時間クォータ)
13:00 - 18:00: Gemini CLI (1K/日クォータ)
18:00 - 22:00: GLM-4.7 (低価格、午前10時リセット)
22:00 - 08:00: MiniMaxまたはiFlow (5時間ローリングまたは無料)
```
---
## モニタリングとアラート
### ダッシュボードクォータトラッカー
```
Dashboard → Quota Overview:
Claude Code: 2.5h / 5h 残 (50%)
Gemini CLI: 今日 450 / 1000 リクエスト
GLM-4.7: 5M / 10M トークン (8時間後リセット)
MiniMax: 3M / 5M トークン (5時間ローリング)
```
### リアルタイム通知
```
Dashboard → Notifications:
⚠️ Claude Codeクォータ80%使用 (1時間残)
✅ GLM-4.7クォータリセット (10Mトークン利用可)
💰 日次予算50%使用 ($2.50 / $5)
```
### 使用統計
```
Dashboard → Analytics:
今日: 5000万トークン
- 3000万 Claude Code経由 (サブスクリプション)
- 1500万 GLM-4.7経由 ($9)
- 500万 iFlow経由 (無料)
コスト: $9 (vs ChatGPT APIの$1000)
節約: 99%
```
---
## トラブルシューティング
**問題: "All providers quota exhausted"**
**解決策:**
1. ダッシュボードクォータトラッカーを確認
2. クォータリセットを待つ (カウントダウン参照)
3. フォールバックチェーンに無料階層を追加
4. または予算上限を増やす
**問題: "Too many fallback switches"**
**解決策:**
1. プライマリプロバイダーがダウンしているか確認
2. クォータ上限を増やす (サブスクリプションをアップグレード)
3. より安いプライマリモデルを使用 (Claudeの代わりにGLM)
**問題: "Unexpected costs"**
**解決策:**
1. Dashboard → Analytics → 使用量を確認
2. 日次/月次予算上限を設定
3. クリティカルでないタスクは無料階層へ切替
4. 無料フォールバック付きのコンボを使用
---
## 関連
- [コンボ](./combos.md) - カスタムフォールバックチェーンを作成
- [クォータトラッキング](./quota-tracking.md) - 使用量とコストをモニター