Feat : Gitbook
This commit is contained in:
473
gitbook/content/ja/deployment/cloud.md
Normal file
473
gitbook/content/ja/deployment/cloud.md
Normal file
@@ -0,0 +1,473 @@
|
||||
# ☁️ クラウドデプロイメント
|
||||
|
||||
リモートアクセスと本番利用のため、VPSまたはDockerに9Routerをデプロイ。
|
||||
|
||||
---
|
||||
|
||||
## 🖥️ VPSデプロイメント
|
||||
|
||||
### 前提条件
|
||||
|
||||
- Ubuntu 20.04+ または同様のLinuxディストリビューション
|
||||
- Node.js 20以上
|
||||
- Git
|
||||
- rootまたはsudoアクセス
|
||||
|
||||
### ステップ1: リポジトリをクローン
|
||||
|
||||
```bash
|
||||
git clone https://github.com/decolua/9router.git
|
||||
cd 9router/app
|
||||
```
|
||||
|
||||
### ステップ2: 依存関係をインストール
|
||||
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
### ステップ3: アプリケーションをビルド
|
||||
|
||||
```bash
|
||||
npm run build
|
||||
```
|
||||
|
||||
### ステップ4: 環境変数を設定
|
||||
|
||||
`.env` ファイルを作成するか、変数をエクスポート:
|
||||
|
||||
```bash
|
||||
export JWT_SECRET="your-secure-secret-change-this-to-random-string"
|
||||
export INITIAL_PASSWORD="your-secure-password"
|
||||
export DATA_DIR="/var/lib/9router"
|
||||
export NODE_ENV="production"
|
||||
```
|
||||
|
||||
**環境変数:**
|
||||
|
||||
| 変数 | デフォルト | 説明 |
|
||||
|----------|---------|-------------|
|
||||
| `JWT_SECRET` | 自動生成 | **本番環境では必ず変更!** JWTトークンの署名に使用 |
|
||||
| `INITIAL_PASSWORD` | `123456` | ダッシュボードログインパスワード |
|
||||
| `DATA_DIR` | `~/.9router` | データベースとデータの保存パス |
|
||||
| `NODE_ENV` | `development` | デプロイ時は `production` に設定 |
|
||||
| `ENABLE_REQUEST_LOGS` | `false` | デバッグリクエスト/レスポンスログを有効化 |
|
||||
|
||||
### ステップ5: データディレクトリを作成
|
||||
|
||||
```bash
|
||||
sudo mkdir -p /var/lib/9router
|
||||
sudo chown $USER:$USER /var/lib/9router
|
||||
```
|
||||
|
||||
### ステップ6: アプリケーションを起動
|
||||
|
||||
```bash
|
||||
npm run start
|
||||
```
|
||||
|
||||
### ステップ7: 本番環境用にPM2をセットアップ
|
||||
|
||||
PM2はアプリケーションを稼働させ続け、クラッシュ時に再起動します:
|
||||
|
||||
```bash
|
||||
# PM2をグローバルにインストール
|
||||
npm install -g pm2
|
||||
|
||||
# PM2で9Routerを起動
|
||||
pm2 start npm --name 9router -- start
|
||||
|
||||
# PM2設定を保存
|
||||
pm2 save
|
||||
|
||||
# システム起動時にPM2を開始するようセットアップ
|
||||
pm2 startup
|
||||
# 上記コマンドが出力する指示に従ってください
|
||||
```
|
||||
|
||||
**PM2管理コマンド:**
|
||||
|
||||
```bash
|
||||
# ログを表示
|
||||
pm2 logs 9router
|
||||
|
||||
# アプリケーションを再起動
|
||||
pm2 restart 9router
|
||||
|
||||
# アプリケーションを停止
|
||||
pm2 stop 9router
|
||||
|
||||
# ステータスを表示
|
||||
pm2 status
|
||||
|
||||
# リソースをモニタリング
|
||||
pm2 monit
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🐳 Dockerデプロイメント
|
||||
|
||||
### オプション1: Dockerfileを使用
|
||||
|
||||
`app` ディレクトリに `Dockerfile` を作成:
|
||||
|
||||
```dockerfile
|
||||
FROM node:20-alpine
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
# Copy package files
|
||||
COPY package*.json ./
|
||||
|
||||
# Install dependencies
|
||||
RUN npm ci --only=production
|
||||
|
||||
# Copy application files
|
||||
COPY . .
|
||||
|
||||
# Build application
|
||||
RUN npm run build
|
||||
|
||||
# Expose ports
|
||||
EXPOSE 3000 20128
|
||||
|
||||
# Set environment variables
|
||||
ENV NODE_ENV=production
|
||||
ENV DATA_DIR=/app/data
|
||||
|
||||
# Create data directory
|
||||
RUN mkdir -p /app/data
|
||||
|
||||
# Start application
|
||||
CMD ["npm", "run", "start"]
|
||||
```
|
||||
|
||||
**ビルドと実行:**
|
||||
|
||||
```bash
|
||||
# イメージをビルド
|
||||
docker build -t 9router .
|
||||
|
||||
# コンテナを実行
|
||||
docker run -d \
|
||||
--name 9router \
|
||||
-p 3000:3000 \
|
||||
-p 20128:20128 \
|
||||
-e JWT_SECRET="your-secure-secret-change-this" \
|
||||
-e INITIAL_PASSWORD="your-secure-password" \
|
||||
-v 9router-data:/app/data \
|
||||
9router
|
||||
```
|
||||
|
||||
### オプション2: Docker Compose
|
||||
|
||||
`docker-compose.yml` を作成:
|
||||
|
||||
```yaml
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
9router:
|
||||
build: .
|
||||
container_name: 9router
|
||||
ports:
|
||||
- "3000:3000"
|
||||
- "20128:20128"
|
||||
environment:
|
||||
- NODE_ENV=production
|
||||
- JWT_SECRET=your-secure-secret-change-this
|
||||
- INITIAL_PASSWORD=your-secure-password
|
||||
- DATA_DIR=/app/data
|
||||
volumes:
|
||||
- 9router-data:/app/data
|
||||
restart: unless-stopped
|
||||
|
||||
volumes:
|
||||
9router-data:
|
||||
```
|
||||
|
||||
**Docker Composeで実行:**
|
||||
|
||||
```bash
|
||||
# サービスを起動
|
||||
docker-compose up -d
|
||||
|
||||
# ログを表示
|
||||
docker-compose logs -f
|
||||
|
||||
# サービスを停止
|
||||
docker-compose down
|
||||
|
||||
# 再ビルドして再起動
|
||||
docker-compose up -d --build
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🌐 Nginxリバースプロキシ
|
||||
|
||||
### Nginxを使う理由
|
||||
|
||||
- SSL/TLS終端
|
||||
- ドメイン名マッピング
|
||||
- ロードバランシング
|
||||
- セキュリティ強化
|
||||
|
||||
### ステップ1: Nginxをインストール
|
||||
|
||||
```bash
|
||||
sudo apt update
|
||||
sudo apt install nginx
|
||||
```
|
||||
|
||||
### ステップ2: Nginxを設定
|
||||
|
||||
`/etc/nginx/sites-available/9router` を作成:
|
||||
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name your-domain.com;
|
||||
|
||||
# Redirect HTTP to HTTPS
|
||||
return 301 https://$server_name$request_uri;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 443 ssl http2;
|
||||
server_name your-domain.com;
|
||||
|
||||
# SSL certificates (use certbot to generate)
|
||||
ssl_certificate /etc/letsencrypt/live/your-domain.com/fullchain.pem;
|
||||
ssl_certificate_key /etc/letsencrypt/live/your-domain.com/privkey.pem;
|
||||
|
||||
# SSL configuration
|
||||
ssl_protocols TLSv1.2 TLSv1.3;
|
||||
ssl_ciphers HIGH:!aNULL:!MD5;
|
||||
ssl_prefer_server_ciphers on;
|
||||
|
||||
# Proxy to 9Router
|
||||
location / {
|
||||
proxy_pass http://localhost:3000;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection 'upgrade';
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_cache_bypass $http_upgrade;
|
||||
|
||||
# SSE support - CRITICAL for streaming
|
||||
proxy_buffering off;
|
||||
proxy_read_timeout 86400;
|
||||
}
|
||||
|
||||
# API endpoint
|
||||
location /v1 {
|
||||
proxy_pass http://localhost:20128;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
|
||||
# SSE support - CRITICAL for streaming
|
||||
proxy_buffering off;
|
||||
proxy_read_timeout 86400;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### ステップ3: サイトを有効化
|
||||
|
||||
```bash
|
||||
# シンボリックリンクを作成
|
||||
sudo ln -s /etc/nginx/sites-available/9router /etc/nginx/sites-enabled/
|
||||
|
||||
# 設定をテスト
|
||||
sudo nginx -t
|
||||
|
||||
# Nginxをリロード
|
||||
sudo systemctl reload nginx
|
||||
```
|
||||
|
||||
### ステップ4: Let's EncryptでSSLをセットアップ
|
||||
|
||||
```bash
|
||||
# certbotをインストール
|
||||
sudo apt install certbot python3-certbot-nginx
|
||||
|
||||
# SSL証明書を取得
|
||||
sudo certbot --nginx -d your-domain.com
|
||||
|
||||
# 自動更新は自動的に設定されます
|
||||
# 更新をテスト
|
||||
sudo certbot renew --dry-run
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔒 セキュリティ考慮事項
|
||||
|
||||
### 1. デフォルト認証情報を変更
|
||||
|
||||
**重要:** デプロイ前に `JWT_SECRET` と `INITIAL_PASSWORD` を変更:
|
||||
|
||||
```bash
|
||||
# 安全なJWTシークレットを生成
|
||||
openssl rand -base64 32
|
||||
|
||||
# この値をJWT_SECRETに使用
|
||||
export JWT_SECRET="generated-secret-here"
|
||||
```
|
||||
|
||||
### 2. ファイアウォール設定
|
||||
|
||||
```bash
|
||||
# SSHを許可
|
||||
sudo ufw allow 22/tcp
|
||||
|
||||
# HTTP/HTTPSを許可 (Nginx使用時)
|
||||
sudo ufw allow 80/tcp
|
||||
sudo ufw allow 443/tcp
|
||||
|
||||
# リバースプロキシを使用しない場合、9Routerポートを許可
|
||||
sudo ufw allow 3000/tcp
|
||||
sudo ufw allow 20128/tcp
|
||||
|
||||
# ファイアウォールを有効化
|
||||
sudo ufw enable
|
||||
```
|
||||
|
||||
### 3. ダッシュボードアクセスを制限
|
||||
|
||||
APIアクセスのみ必要な場合、ダッシュボードポートを制限:
|
||||
|
||||
```bash
|
||||
# ダッシュボードへのlocalhostアクセスのみ許可
|
||||
sudo ufw deny 3000/tcp
|
||||
```
|
||||
|
||||
SSHトンネル経由でダッシュボードにアクセス:
|
||||
|
||||
```bash
|
||||
ssh -L 3000:localhost:3000 user@your-server.com
|
||||
# ブラウザで http://localhost:3000 を開く
|
||||
```
|
||||
|
||||
### 4. 定期的な更新
|
||||
|
||||
```bash
|
||||
# システムパッケージを更新
|
||||
sudo apt update && sudo apt upgrade -y
|
||||
|
||||
# 9Routerを更新
|
||||
cd /path/to/9router/app
|
||||
git pull
|
||||
npm install
|
||||
npm run build
|
||||
pm2 restart 9router
|
||||
```
|
||||
|
||||
### 5. バックアップ戦略
|
||||
|
||||
```bash
|
||||
# データディレクトリをバックアップ
|
||||
tar -czf 9router-backup-$(date +%Y%m%d).tar.gz /var/lib/9router
|
||||
|
||||
# 自動毎日バックアップ (crontabに追加)
|
||||
0 2 * * * tar -czf /backups/9router-$(date +\%Y\%m\%d).tar.gz /var/lib/9router
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📊 モニタリング
|
||||
|
||||
### アプリケーションステータスを確認
|
||||
|
||||
```bash
|
||||
# PM2ステータス
|
||||
pm2 status
|
||||
|
||||
# ログを表示
|
||||
pm2 logs 9router --lines 100
|
||||
|
||||
# リソースをモニタリング
|
||||
pm2 monit
|
||||
```
|
||||
|
||||
### Nginxログ
|
||||
|
||||
```bash
|
||||
# アクセスログ
|
||||
sudo tail -f /var/log/nginx/access.log
|
||||
|
||||
# エラーログ
|
||||
sudo tail -f /var/log/nginx/error.log
|
||||
```
|
||||
|
||||
### システムリソース
|
||||
|
||||
```bash
|
||||
# CPUとメモリ使用量
|
||||
htop
|
||||
|
||||
# ディスク使用量
|
||||
df -h
|
||||
|
||||
# ネットワーク接続
|
||||
netstat -tulpn | grep -E '3000|20128'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🚨 トラブルシューティング
|
||||
|
||||
### アプリケーションが起動しない
|
||||
|
||||
```bash
|
||||
# ログを確認
|
||||
pm2 logs 9router
|
||||
|
||||
# ポートが使用中か確認
|
||||
sudo lsof -i :3000
|
||||
sudo lsof -i :20128
|
||||
|
||||
# 環境変数を確認
|
||||
pm2 env 9router
|
||||
```
|
||||
|
||||
### Nginx 502 Bad Gateway
|
||||
|
||||
```bash
|
||||
# 9Routerが実行中か確認
|
||||
pm2 status
|
||||
|
||||
# Nginxエラーログを確認
|
||||
sudo tail -f /var/log/nginx/error.log
|
||||
|
||||
# Nginx設定をテスト
|
||||
sudo nginx -t
|
||||
```
|
||||
|
||||
### SSEストリーミングが動作しない
|
||||
|
||||
SSEサポート用にNginx設定で `proxy_buffering off` が設定されていることを確認。
|
||||
|
||||
### Permission Deniedエラー
|
||||
|
||||
```bash
|
||||
# データディレクトリ権限を修正
|
||||
sudo chown -R $USER:$USER /var/lib/9router
|
||||
chmod 755 /var/lib/9router
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔗 次のステップ
|
||||
|
||||
- [プロバイダーを接続](/providers/subscription.md)
|
||||
- [コンボをセットアップ](/features/combos.md)
|
||||
- [ツールと統合](/integration/cursor.md)
|
||||
164
gitbook/content/ja/deployment/localhost.md
Normal file
164
gitbook/content/ja/deployment/localhost.md
Normal file
@@ -0,0 +1,164 @@
|
||||
# 🏠 ローカルホストデプロイメント
|
||||
|
||||
開発と個人利用のため、ローカルマシンで9Routerを実行。
|
||||
|
||||
---
|
||||
|
||||
## 📦 インストール
|
||||
|
||||
npm経由で9Routerをグローバルインストール:
|
||||
|
||||
```bash
|
||||
npm install -g 9router
|
||||
```
|
||||
|
||||
**要件:**
|
||||
- Node.js 20以上
|
||||
- npm 9以上
|
||||
|
||||
---
|
||||
|
||||
## 🚀 サーバーの起動
|
||||
|
||||
一つのコマンドで9Routerを起動:
|
||||
|
||||
```bash
|
||||
9router
|
||||
```
|
||||
|
||||
ダッシュボードが自動的にブラウザで `http://localhost:3000` に開きます。
|
||||
|
||||
**デフォルト設定:**
|
||||
- **ダッシュボード**: `http://localhost:3000`
|
||||
- **APIエンドポイント**: `http://localhost:20128/v1`
|
||||
- **データディレクトリ**: `~/.9router`
|
||||
|
||||
---
|
||||
|
||||
## 🔧 設定
|
||||
|
||||
### カスタムデータディレクトリ
|
||||
|
||||
環境変数を使ってカスタムデータディレクトリを設定:
|
||||
|
||||
```bash
|
||||
DATA_DIR=/path/to/data 9router
|
||||
```
|
||||
|
||||
### カスタムポート
|
||||
|
||||
APIポート(20128)とダッシュボードポート(3000)はアプリケーションで設定されています。変更するにはソースコードを修正するか、サポートされている場合は環境変数を使用してください。
|
||||
|
||||
---
|
||||
|
||||
## 🛑 サーバーの停止
|
||||
|
||||
9Routerが実行されているターミナルで `Ctrl+C` を押します。
|
||||
|
||||
```bash
|
||||
# 9routerを実行しているターミナル
|
||||
^C # Ctrl+Cを押す
|
||||
```
|
||||
|
||||
サーバーはグレースフルにシャットダウンし、すべてのデータを保存します。
|
||||
|
||||
---
|
||||
|
||||
## 🔄 サーバーの再起動
|
||||
|
||||
起動コマンドを再度実行するだけです:
|
||||
|
||||
```bash
|
||||
9router
|
||||
```
|
||||
|
||||
すべての設定、APIキー、コンボはデータディレクトリに保持されます。
|
||||
|
||||
---
|
||||
|
||||
## 📊 9Routerの更新
|
||||
|
||||
最新バージョンに更新:
|
||||
|
||||
```bash
|
||||
npm update -g 9router
|
||||
```
|
||||
|
||||
現在のバージョンを確認:
|
||||
|
||||
```bash
|
||||
npm list -g 9router
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔍 トラブルシューティング
|
||||
|
||||
### ポートがすでに使用されている
|
||||
|
||||
ポート20128または3000がすでに使用されている場合:
|
||||
|
||||
```bash
|
||||
# ポートを使用しているプロセスを検索 (macOS/Linux)
|
||||
lsof -i :20128
|
||||
lsof -i :3000
|
||||
|
||||
# プロセスを終了
|
||||
kill -9 <PID>
|
||||
```
|
||||
|
||||
### 権限エラー
|
||||
|
||||
インストール中に権限エラーが発生した場合:
|
||||
|
||||
```bash
|
||||
# sudoを使用 (非推奨)
|
||||
sudo npm install -g 9router
|
||||
|
||||
# またはnpm権限を修正 (推奨)
|
||||
mkdir ~/.npm-global
|
||||
npm config set prefix '~/.npm-global'
|
||||
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
|
||||
source ~/.bashrc
|
||||
```
|
||||
|
||||
### データディレクトリの問題
|
||||
|
||||
データディレクトリにアクセスできない場合:
|
||||
|
||||
```bash
|
||||
# 権限を確認
|
||||
ls -la ~/.9router
|
||||
|
||||
# 権限を修正
|
||||
chmod 755 ~/.9router
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📁 データディレクトリ構造
|
||||
|
||||
```
|
||||
~/.9router/
|
||||
├── db.json # メインデータベース (プロバイダー、コンボ、設定)
|
||||
├── logs/ # アプリケーションログ
|
||||
└── cache/ # 一時キャッシュファイル
|
||||
```
|
||||
|
||||
**データのバックアップ:**
|
||||
|
||||
```bash
|
||||
# バックアップ
|
||||
cp -r ~/.9router ~/.9router.backup
|
||||
|
||||
# 復元
|
||||
cp -r ~/.9router.backup ~/.9router
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔗 次のステップ
|
||||
|
||||
- [プロバイダーを接続](/providers/subscription.md)
|
||||
- [コンボを作成](/features/combos.md)
|
||||
- [CLIツールとの統合](/integration/cursor.md)
|
||||
387
gitbook/content/ja/faq.md
Normal file
387
gitbook/content/ja/faq.md
Normal file
@@ -0,0 +1,387 @@
|
||||
# よくある質問
|
||||
|
||||
9Routerに関する一般的な質問。
|
||||
|
||||
---
|
||||
|
||||
## 9Routerとは?
|
||||
|
||||
**9Routerは、サブスクリプションの価値を最大化し、コストを最小限に抑えるAIモデルルーターです。**
|
||||
|
||||
3階層フォールバックシステムを使用して、複数のAIプロバイダー間でリクエストをインテリジェントにルーティングします:
|
||||
1. **サブスクリプション階層** - すでに支払っているClaude Code、Codex、Geminiのクォータを最大化
|
||||
2. **低価格階層** - 超低価格な代替手段(100万トークンあたり$0.20〜$0.60)
|
||||
3. **無料階層** - 無制限の無料モデルによる緊急バックアップ
|
||||
|
||||
**主な利点:**
|
||||
- サブスクリプションのクォータを無駄にしない
|
||||
- クォータ消費時の自動フォールバック
|
||||
- リアルタイムクォータトラッキング
|
||||
- 直接API利用に対して90%のコスト削減
|
||||
|
||||
---
|
||||
|
||||
## 料金体系はどうなっていますか?
|
||||
|
||||
**9Routerは3階層の料金戦略を使用します:**
|
||||
|
||||
### Tier 1: サブスクリプション(最初に最大化)
|
||||
- **Claude Code** (Pro/Max): 月$20〜100 - 5時間 + 週次クォータ
|
||||
- **OpenAI Codex** (Plus/Pro): 月$20〜200 - 5時間 + 週次クォータ
|
||||
- **Gemini CLI**: 無料 - 月18万コンプリーション + 1K/日
|
||||
- **GitHub Copilot**: 月$10〜19 - 月次リセット
|
||||
- **Antigravity**: 無料 - Geminiと同様
|
||||
|
||||
**目標:** リセット前にクォータを余すことなく使用!
|
||||
|
||||
### Tier 2: 低価格(バックアップ)
|
||||
- **GLM-4.7**: 100万トークンあたり$0.60/$2.20 - 毎日午前10時リセット
|
||||
- **MiniMax M2.1**: 100万トークンあたり$0.20/$1.00 - 5時間ローリング
|
||||
- **Kimi K2**: 月$9固定(1000万トークン)
|
||||
|
||||
**目標:** ChatGPT API(100万あたり$20)より90%安い!
|
||||
|
||||
### Tier 3: 無料(緊急時)
|
||||
- **iFlow**: 8モデル無料(Kimi K2、Qwen3、GLM、MiniMax...)
|
||||
- **Qwen**: 3モデル無料(Qwen3 Coder Plus/Flash、Vision)
|
||||
- **Kiro**: 2モデル無料(Claude Sonnet 4.5、Haiku 4.5)
|
||||
|
||||
**目標:** 他のすべてがクォータ制限に達した時のゼロコストフォールバック!
|
||||
|
||||
---
|
||||
|
||||
## 9Routerは無料ですか?
|
||||
|
||||
**はい、9Router自体は100%無料でオープンソースです。**
|
||||
|
||||
**利用可能な無料階層プロバイダー:**
|
||||
- **Gemini CLI** - 月18万コンプリーション(無料Googleアカウント)
|
||||
- **iFlow** - 8モデル無制限(無料OAuth)
|
||||
- **Qwen** - 3モデル無制限(無料OAuth)
|
||||
- **Kiro** - Claude Sonnet/Haiku(無料AWS Builder ID)
|
||||
|
||||
**無料階層プロバイダーのみを使用して永久に無料でコーディングできます!**
|
||||
|
||||
**オプションの有料プロバイダー:**
|
||||
- すでに持っている可能性のあるサブスクリプションサービス(Claude Code、Codex、Copilot)
|
||||
- 超低価格な代替手段(100万トークンあたり$0.20〜$0.60)
|
||||
|
||||
---
|
||||
|
||||
## どのプロバイダーがサポートされていますか?
|
||||
|
||||
### サブスクリプションプロバイダー
|
||||
- **Claude Code** (Pro/Max) - Claude 4.5 Opus/Sonnet/Haiku
|
||||
- **OpenAI Codex** (Plus/Pro) - GPT 5.2 Codex、GPT 5.1 Codex Max
|
||||
- **Gemini CLI** (無料) - Gemini 3 Flash/Pro、2.5 Pro/Flash
|
||||
- **GitHub Copilot** - GPT-5、Claude 4.5、Gemini 3
|
||||
- **Antigravity** (Google) - Gemini 3 Pro、Claude Sonnet 4.5
|
||||
|
||||
### 低価格プロバイダー
|
||||
- **GLM** (Zhipu AI) - GLM 4.7、GLM 4.6V Vision
|
||||
- **MiniMax** - MiniMax M2.1
|
||||
- **Kimi** (Moonshot AI) - Kimi Latest
|
||||
- **OpenRouter** - 任意のOpenRouterモデルへのパススルー
|
||||
|
||||
### 無料プロバイダー
|
||||
- **iFlow** - 8モデル(Kimi K2、Qwen3、GLM、MiniMax、DeepSeek...)
|
||||
- **Qwen** - 3モデル(Qwen3 Coder Plus/Flash、Vision)
|
||||
- **Kiro** - 2モデル(Claude Sonnet 4.5、Haiku 4.5)
|
||||
|
||||
**合計: 15以上のプロバイダー、50以上のモデル**
|
||||
|
||||
詳細は[プロバイダードキュメント](providers/subscription.md)を参照。
|
||||
|
||||
---
|
||||
|
||||
## 複数のプロバイダーを使用できますか?
|
||||
|
||||
**はい! これは9Routerのコア機能です。**
|
||||
|
||||
**コンボにより、複数のプロバイダーを自動フォールバック付きで連鎖させることができます:**
|
||||
|
||||
```
|
||||
コンボ例: "premium-coding"
|
||||
1. cc/claude-opus-4-5 (サブスクリプション優先)
|
||||
2. glm/glm-4.7 (低価格バックアップ)
|
||||
3. if/kimi-k2 (無料緊急時)
|
||||
|
||||
→ クォータ消費時に自動切替
|
||||
→ コーディングが止まらない
|
||||
→ 最小の追加コスト
|
||||
```
|
||||
|
||||
**コンボの作成方法:**
|
||||
```
|
||||
Dashboard → Combos → Create New
|
||||
→ 優先順位順にモデルを追加
|
||||
→ CLIでコンボ名を使用: "premium-coding"
|
||||
```
|
||||
|
||||
**利点:**
|
||||
- クォータ切れ時のダウンタイムゼロ
|
||||
- 自動コスト最適化
|
||||
- すべてのツール用の単一モデル名
|
||||
|
||||
例については[コンボドキュメント](features/combos.md)を参照。
|
||||
|
||||
---
|
||||
|
||||
## クォータトラッキングはどのように機能しますか?
|
||||
|
||||
**9Routerはすべてのプロバイダーのクォータをリアルタイムで追跡します:**
|
||||
|
||||
**機能:**
|
||||
- **トークン消費** - リクエストごとの入出力トークン
|
||||
- **リセットカウントダウン** - クォータが更新されるまでの時間
|
||||
- **使用統計** - 日次/週次/月次レポート
|
||||
- **コスト見積もり** - 予測支出(有料階層)
|
||||
- **クォータアラート** - クォータが少ない時の通知
|
||||
|
||||
**クォータタイプ:**
|
||||
- **5時間ローリング** - Claude Code、Codex、MiniMax
|
||||
- **日次リセット** - Gemini CLI(1K/日)、GLM(午前10時)
|
||||
- **週次リセット** - Claude Code、Codex(追加クォータ)
|
||||
- **月次リセット** - Gemini CLI(18万)、GitHub Copilot(1日)
|
||||
|
||||
**クォータを表示:**
|
||||
```
|
||||
Dashboard → Providers → Quota Tracking
|
||||
→ リアルタイム使用量 + リセットカウントダウン
|
||||
```
|
||||
|
||||
詳細は[クォータトラッキングドキュメント](features/quota-tracking.md)を参照。
|
||||
|
||||
---
|
||||
|
||||
## 9RouterはCursorで動作しますか?
|
||||
|
||||
**はい、ただしCursorはクラウドエンドポイントが必要です。**
|
||||
|
||||
**問題:** Cursor IDEはlocalhostエンドポイントをサポートしていません。
|
||||
|
||||
**解決策:** 9Routerクラウドデプロイメントを使用:
|
||||
|
||||
```
|
||||
Cursor Settings → Models → Advanced:
|
||||
OpenAI API Base URL: https://9router.com/v1
|
||||
OpenAI API Key: [ダッシュボードから取得]
|
||||
Model: cc/claude-opus-4-5-20251101
|
||||
```
|
||||
|
||||
**代替案:** パブリックドメインでVPSにセルフホスト:
|
||||
```bash
|
||||
# VPSへデプロイ
|
||||
git clone https://github.com/decolua/9router.git
|
||||
cd 9router/app
|
||||
npm install && npm run build
|
||||
npm start
|
||||
|
||||
# Nginxリバースプロキシを設定
|
||||
# Cursorを向ける: https://your-domain.com/v1
|
||||
```
|
||||
|
||||
**他のCLIツールはlocalhostで動作:**
|
||||
- Cline ✅
|
||||
- Claude Desktop ✅
|
||||
- Codex CLI ✅
|
||||
- Continue ✅
|
||||
- RooCode ✅
|
||||
|
||||
詳細は[Cursor統合ガイド](integration/cursor.md)を参照。
|
||||
|
||||
---
|
||||
|
||||
## 9Routerをセルフホストできますか?
|
||||
|
||||
**はい! 9Routerは複数のデプロイメントオプションをサポートします:**
|
||||
|
||||
### Localhost(デフォルト)
|
||||
```bash
|
||||
npm install -g 9router
|
||||
9router
|
||||
→ Dashboard: http://localhost:3000
|
||||
→ API: http://localhost:20128/v1
|
||||
```
|
||||
|
||||
### VPS/クラウド
|
||||
```bash
|
||||
git clone https://github.com/decolua/9router.git
|
||||
cd 9router/app
|
||||
npm install && npm run build
|
||||
|
||||
export JWT_SECRET="your-secure-secret"
|
||||
export INITIAL_PASSWORD="your-password"
|
||||
export NODE_ENV="production"
|
||||
|
||||
npm start
|
||||
```
|
||||
|
||||
### Docker
|
||||
```bash
|
||||
docker build -t 9router .
|
||||
docker run -d \
|
||||
-p 3000:3000 \
|
||||
-e JWT_SECRET="your-secret" \
|
||||
-v 9router-data:/app/data \
|
||||
9router
|
||||
```
|
||||
|
||||
### Cloudflare Workers
|
||||
```bash
|
||||
cd 9router/app
|
||||
npm run deploy:cloudflare
|
||||
```
|
||||
|
||||
**環境変数:**
|
||||
- `JWT_SECRET` - **本番環境で必ず変更!**
|
||||
- `DATA_DIR` - データベース保存パス(デフォルト: `~/.9router`)
|
||||
- `INITIAL_PASSWORD` - ダッシュボードログイン(デフォルト: `123456`)
|
||||
- `NODE_ENV` - デプロイ時は`production`に設定
|
||||
|
||||
詳細は[デプロイメントガイド](getting-started/installation.md#deployment)を参照。
|
||||
|
||||
---
|
||||
|
||||
## データは安全ですか?
|
||||
|
||||
**はい、9Routerはセキュリティとプライバシーを優先します:**
|
||||
|
||||
**ローカルストレージ:**
|
||||
- すべてのデータは`~/.9router`(またはカスタム`DATA_DIR`)にローカル保存
|
||||
- 9Routerサーバーへのデータ送信なし
|
||||
- OAuthトークンはJWTで暗号化
|
||||
|
||||
**テレメトリなし:**
|
||||
- 使用状況追跡なし
|
||||
- アナリティクスなし
|
||||
- フォンホームなし
|
||||
|
||||
**オープンソース:**
|
||||
- 完全なソースコードがGitHubで利用可能
|
||||
- 自分でセキュリティを監査可能
|
||||
- コミュニティレビュー済み
|
||||
|
||||
**ベストプラクティス:**
|
||||
- 本番環境で`JWT_SECRET`を変更
|
||||
- 強力な`INITIAL_PASSWORD`を使用
|
||||
- クラウドデプロイでHTTPSを有効化
|
||||
- APIキーを定期的にローテーション
|
||||
|
||||
**9Routerが保存するもの:**
|
||||
- プロバイダーOAuthトークン(暗号化)
|
||||
- APIキー(暗号化)
|
||||
- 使用統計(ローカルのみ)
|
||||
- コンボ設定
|
||||
|
||||
**9Routerが保存しないもの:**
|
||||
- プロンプトやレスポンス
|
||||
- 生成したコード
|
||||
- 個人情報
|
||||
|
||||
---
|
||||
|
||||
## 9Routerを更新するには?
|
||||
|
||||
**更新方法はインストールタイプによって異なります:**
|
||||
|
||||
### グローバルNPMインストール
|
||||
```bash
|
||||
npm update -g 9router
|
||||
```
|
||||
|
||||
### ローカルインストール
|
||||
```bash
|
||||
cd 9router/app
|
||||
git pull origin main
|
||||
npm install
|
||||
npm run build
|
||||
npm start
|
||||
```
|
||||
|
||||
### Docker
|
||||
```bash
|
||||
docker pull 9router:latest
|
||||
docker stop 9router
|
||||
docker rm 9router
|
||||
docker run -d \
|
||||
-p 3000:3000 \
|
||||
-v 9router-data:/app/data \
|
||||
9router:latest
|
||||
```
|
||||
|
||||
**バージョンを確認:**
|
||||
```bash
|
||||
9router --version
|
||||
```
|
||||
|
||||
**破壊的変更:**
|
||||
- [CHANGELOG.md](https://github.com/decolua/9router/blob/main/CHANGELOG.md)を確認
|
||||
- メジャー更新前に`~/.9router`をバックアップ
|
||||
- メジャーバージョンの移行ガイドを確認
|
||||
|
||||
---
|
||||
|
||||
## どのように貢献できますか?
|
||||
|
||||
**貢献を歓迎します!**
|
||||
|
||||
### 貢献方法:
|
||||
|
||||
1. **バグを報告:**
|
||||
- [GitHub Issues](https://github.com/decolua/9router/issues)
|
||||
- エラーログ、再現手順を含める
|
||||
|
||||
2. **機能をリクエスト:**
|
||||
- [GitHub Discussions](https://github.com/decolua/9router/discussions)
|
||||
- ユースケースと利点を説明
|
||||
|
||||
3. **コードを提出:**
|
||||
```bash
|
||||
# リポジトリをフォーク
|
||||
git clone https://github.com/YOUR_USERNAME/9router.git
|
||||
cd 9router
|
||||
|
||||
# ブランチを作成
|
||||
git checkout -b feature/your-feature
|
||||
|
||||
# 変更を加える
|
||||
npm install
|
||||
npm run dev
|
||||
|
||||
# テスト
|
||||
npm test
|
||||
|
||||
# コミットしてプッシュ
|
||||
git add .
|
||||
git commit -m "Add your feature"
|
||||
git push origin feature/your-feature
|
||||
|
||||
# GitHubでPull Requestを作成
|
||||
```
|
||||
|
||||
4. **ドキュメントを改善:**
|
||||
- 誤字の修正、例の追加
|
||||
- 他言語への翻訳
|
||||
- チュートリアルの執筆
|
||||
|
||||
5. **プロバイダーを追加:**
|
||||
- 新しいプロバイダーアダプターを実装
|
||||
- 例については`app/lib/providers/`を参照
|
||||
|
||||
**貢献ガイドライン:**
|
||||
- 既存のコードスタイルに従う
|
||||
- 新機能にはテストを追加
|
||||
- ドキュメントを更新
|
||||
- コミットは小さく、わかりやすく
|
||||
|
||||
詳細は[CONTRIBUTING.md](https://github.com/decolua/9router/blob/main/CONTRIBUTING.md)を参照。
|
||||
|
||||
---
|
||||
|
||||
## さらにヘルプが必要?
|
||||
|
||||
- **ドキュメント:** [9router.com/docs](https://9router.com/docs)
|
||||
- **GitHub:** [github.com/decolua/9router](https://github.com/decolua/9router)
|
||||
- **Issues:** [github.com/decolua/9router/issues](https://github.com/decolua/9router/issues)
|
||||
- **トラブルシューティング:** [troubleshooting.md](troubleshooting.md)
|
||||
537
gitbook/content/ja/features/combos.md
Normal file
537
gitbook/content/ja/features/combos.md
Normal 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) - 使用量とコストを監視
|
||||
687
gitbook/content/ja/features/quota-tracking.md
Normal file
687
gitbook/content/ja/features/quota-tracking.md
Normal file
@@ -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) - カスタムフォールバックチェーンを作成
|
||||
407
gitbook/content/ja/features/smart-routing.md
Normal file
407
gitbook/content/ja/features/smart-routing.md
Normal file
@@ -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) - 使用量とコストをモニター
|
||||
478
gitbook/content/ja/getting-started/installation.md
Normal file
478
gitbook/content/ja/getting-started/installation.md
Normal file
@@ -0,0 +1,478 @@
|
||||
# インストール
|
||||
|
||||
トラブルシューティングのヒント付きの9Router詳細インストールガイド。
|
||||
|
||||
---
|
||||
|
||||
## 要件
|
||||
|
||||
### システム要件
|
||||
|
||||
- **Node.js**: バージョン 20.0.0以上
|
||||
- **npm**: バージョン 10.0.0以上 (Node.jsに付属)
|
||||
- **OS**: macOS、Linux、Windows (WSL推奨)
|
||||
- **ディスク容量**: インストールに約200MB
|
||||
|
||||
### バージョンを確認
|
||||
|
||||
```bash
|
||||
node --version
|
||||
# v20.x.x以上が表示されるはず
|
||||
|
||||
npm --version
|
||||
# 10.x.x以上が表示されるはず
|
||||
```
|
||||
|
||||
**Node.jsがない場合?** [nodejs.org](https://nodejs.org/)からインストール
|
||||
|
||||
---
|
||||
|
||||
## インストール方法
|
||||
|
||||
### 方法1: グローバルインストール (推奨)
|
||||
|
||||
どこからでも使用できるように9Routerをグローバルインストール:
|
||||
|
||||
```bash
|
||||
npm install -g 9router
|
||||
```
|
||||
|
||||
**9Routerを起動:**
|
||||
|
||||
```bash
|
||||
9router
|
||||
```
|
||||
|
||||
**利点:**
|
||||
- ✅ どのディレクトリからでも実行
|
||||
- ✅ シンプルなコマンド: `9router`
|
||||
- ✅ `npm update -g 9router` で自動更新
|
||||
|
||||
### 方法2: ローカルインストール
|
||||
|
||||
特定のプロジェクトにインストール:
|
||||
|
||||
```bash
|
||||
mkdir my-9router
|
||||
cd my-9router
|
||||
npm install 9router
|
||||
```
|
||||
|
||||
**9Routerを起動:**
|
||||
|
||||
```bash
|
||||
npx 9router
|
||||
```
|
||||
|
||||
**利点:**
|
||||
- ✅ プロジェクトごとに分離
|
||||
- ✅ プロジェクトごとのバージョン管理
|
||||
- ✅ グローバル名前空間の汚染なし
|
||||
|
||||
### 方法3: ソースから (開発)
|
||||
|
||||
GitHubからクローンしてビルド:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/decolua/9router.git
|
||||
cd 9router/app
|
||||
npm install
|
||||
npm run build
|
||||
npm start
|
||||
```
|
||||
|
||||
**利点:**
|
||||
- ✅ 最新の開発機能
|
||||
- ✅ 開発に貢献可能
|
||||
- ✅ カスタム変更
|
||||
|
||||
---
|
||||
|
||||
## 初回実行
|
||||
|
||||
### サーバーを起動
|
||||
|
||||
```bash
|
||||
9router
|
||||
```
|
||||
|
||||
**何が起こるか:**
|
||||
1. サーバーが `http://localhost:20128` で起動
|
||||
2. ダッシュボードが自動的にブラウザで開く
|
||||
3. `~/.9router` にデータディレクトリが作成される
|
||||
4. APIキーが自動生成される
|
||||
|
||||
### ダッシュボードログイン
|
||||
|
||||
**デフォルト認証情報:**
|
||||
- パスワード: `123456`
|
||||
|
||||
**⚠️ パスワードをすぐに変更:**
|
||||
1. ダッシュボードにログイン
|
||||
2. Settings → Change Password
|
||||
3. 強力なパスワードを使用
|
||||
|
||||
### APIキーを取得
|
||||
|
||||
```
|
||||
Dashboard → Settings → API Keys
|
||||
→ APIキーをコピー
|
||||
→ CLIツールで使用
|
||||
```
|
||||
|
||||
**APIキー形式の例:**
|
||||
```
|
||||
9r_1234567890abcdef1234567890abcdef
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## インストールを確認
|
||||
|
||||
### サーバーステータスを確認
|
||||
|
||||
```bash
|
||||
curl http://localhost:20128/health
|
||||
```
|
||||
|
||||
**期待されるレスポンス:**
|
||||
```json
|
||||
{
|
||||
"status": "ok",
|
||||
"version": "1.0.0"
|
||||
}
|
||||
```
|
||||
|
||||
### 利用可能なモデルを一覧表示
|
||||
|
||||
```bash
|
||||
curl http://localhost:20128/v1/models \
|
||||
-H "Authorization: Bearer your-api-key"
|
||||
```
|
||||
|
||||
**期待されるレスポンス:**
|
||||
```json
|
||||
{
|
||||
"object": "list",
|
||||
"data": [
|
||||
{
|
||||
"id": "cc/claude-opus-4-5-20251101",
|
||||
"object": "model",
|
||||
"created": 1234567890,
|
||||
"owned_by": "claude-code"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### チャットコンプリーションをテスト
|
||||
|
||||
```bash
|
||||
curl http://localhost:20128/v1/chat/completions \
|
||||
-H "Authorization: Bearer your-api-key" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{
|
||||
"model": "cc/claude-opus-4-5-20251101",
|
||||
"messages": [
|
||||
{"role": "user", "content": "Hello!"}
|
||||
]
|
||||
}'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 設定
|
||||
|
||||
### 環境変数
|
||||
|
||||
`.env` ファイルを作成するか、環境変数を設定:
|
||||
|
||||
```bash
|
||||
# セキュリティ (本番環境では必須)
|
||||
export JWT_SECRET="your-secure-secret-change-this"
|
||||
export INITIAL_PASSWORD="your-password"
|
||||
|
||||
# ストレージ
|
||||
export DATA_DIR="~/.9router"
|
||||
|
||||
# サーバー
|
||||
export PORT="20128"
|
||||
export NODE_ENV="production"
|
||||
|
||||
# ロギング
|
||||
export ENABLE_REQUEST_LOGS="false"
|
||||
```
|
||||
|
||||
### データディレクトリ
|
||||
|
||||
**デフォルトの場所:** `~/.9router`
|
||||
|
||||
**内容:**
|
||||
```
|
||||
~/.9router/
|
||||
├── db.json # データベース (プロバイダー、コンボ、使用量)
|
||||
├── api-keys.json # APIキー
|
||||
└── logs/ # リクエストログ (有効化されている場合)
|
||||
```
|
||||
|
||||
**場所を変更:**
|
||||
|
||||
```bash
|
||||
export DATA_DIR="/custom/path"
|
||||
9router
|
||||
```
|
||||
|
||||
### ポート設定
|
||||
|
||||
**デフォルトポート:** `20128`
|
||||
|
||||
**ポートを変更:**
|
||||
|
||||
```bash
|
||||
export PORT="3000"
|
||||
9router
|
||||
```
|
||||
|
||||
**またはコマンドラインで:**
|
||||
|
||||
```bash
|
||||
9router --port 3000
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### ポートがすでに使用されている
|
||||
|
||||
**エラー:**
|
||||
```
|
||||
Error: listen EADDRINUSE: address already in use :::20128
|
||||
```
|
||||
|
||||
**解決策1: 既存のプロセスを終了**
|
||||
|
||||
```bash
|
||||
# ポート20128を使用しているプロセスを検索
|
||||
lsof -i :20128
|
||||
|
||||
# プロセスを終了
|
||||
kill -9 <PID>
|
||||
```
|
||||
|
||||
**解決策2: 別のポートを使用**
|
||||
|
||||
```bash
|
||||
9router --port 3000
|
||||
```
|
||||
|
||||
### Permission Denied
|
||||
|
||||
**エラー:**
|
||||
```
|
||||
Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/9router'
|
||||
```
|
||||
|
||||
**解決策: sudoを使用 (非推奨) またはnpm権限を修正**
|
||||
|
||||
```bash
|
||||
# npm権限を修正 (推奨)
|
||||
mkdir ~/.npm-global
|
||||
npm config set prefix '~/.npm-global'
|
||||
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
|
||||
source ~/.bashrc
|
||||
|
||||
# 再度インストール
|
||||
npm install -g 9router
|
||||
```
|
||||
|
||||
### Node.jsバージョンが古すぎる
|
||||
|
||||
**エラー:**
|
||||
```
|
||||
Error: The engine "node" is incompatible with this module
|
||||
```
|
||||
|
||||
**解決策: Node.jsを更新**
|
||||
|
||||
```bash
|
||||
# nvmを使用 (推奨)
|
||||
nvm install 20
|
||||
nvm use 20
|
||||
|
||||
# またはnodejs.orgからダウンロード
|
||||
```
|
||||
|
||||
### ダッシュボードが開かない
|
||||
|
||||
**問題:** ダッシュボードが自動的に開かない
|
||||
|
||||
**解決策1: 手動で開く**
|
||||
|
||||
```
|
||||
http://localhost:20128
|
||||
```
|
||||
|
||||
**解決策2: ファイアウォールを確認**
|
||||
|
||||
```bash
|
||||
# macOS: システム環境設定 → セキュリティでNode.jsを許可
|
||||
# Linux: iptablesを確認
|
||||
# Windows: Windowsファイアウォールを確認
|
||||
```
|
||||
|
||||
### プロバイダーに接続できない
|
||||
|
||||
**問題:** OAuthログインが失敗、またはAPIキーが無効
|
||||
|
||||
**解決策1: インターネット接続を確認**
|
||||
|
||||
```bash
|
||||
ping google.com
|
||||
```
|
||||
|
||||
**解決策2: プロバイダーのステータスを確認**
|
||||
|
||||
- Claude Code: [status.anthropic.com](https://status.anthropic.com)
|
||||
- OpenAI: [status.openai.com](https://status.openai.com)
|
||||
- Gemini: [status.cloud.google.com](https://status.cloud.google.com)
|
||||
|
||||
**解決策3: APIキーを再生成**
|
||||
|
||||
```
|
||||
Dashboard → Provider → Disconnect → Reconnect
|
||||
```
|
||||
|
||||
### 高メモリ使用量
|
||||
|
||||
**問題:** 9RouterがRAMを使いすぎている
|
||||
|
||||
**解決策: サーバーを再起動**
|
||||
|
||||
```bash
|
||||
# 停止
|
||||
pkill -f 9router
|
||||
|
||||
# 起動
|
||||
9router
|
||||
```
|
||||
|
||||
**または自動再起動にPM2を使用:**
|
||||
|
||||
```bash
|
||||
npm install -g pm2
|
||||
pm2 start 9router --name 9router
|
||||
pm2 save
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## デプロイメントオプション
|
||||
|
||||
### ローカル開発
|
||||
|
||||
```bash
|
||||
npm install -g 9router
|
||||
9router
|
||||
```
|
||||
|
||||
**ユースケース:** 個人コーディング、テスト
|
||||
|
||||
### VPS/クラウドサーバー
|
||||
|
||||
```bash
|
||||
# インストール
|
||||
npm install -g 9router
|
||||
|
||||
# 設定
|
||||
export JWT_SECRET="your-secure-secret"
|
||||
export INITIAL_PASSWORD="your-password"
|
||||
export NODE_ENV="production"
|
||||
|
||||
# PM2で起動
|
||||
npm install -g pm2
|
||||
pm2 start 9router --name 9router
|
||||
pm2 save
|
||||
pm2 startup
|
||||
```
|
||||
|
||||
**ユースケース:** チームアクセス、リモートコーディング
|
||||
|
||||
### Docker
|
||||
|
||||
```bash
|
||||
docker pull 9router/9router:latest
|
||||
|
||||
docker run -d \
|
||||
-p 20128:20128 \
|
||||
-e JWT_SECRET="your-secure-secret" \
|
||||
-e INITIAL_PASSWORD="your-password" \
|
||||
-v 9router-data:/root/.9router \
|
||||
--name 9router \
|
||||
9router/9router:latest
|
||||
```
|
||||
|
||||
**ユースケース:** コンテナデプロイ、Kubernetes
|
||||
|
||||
### リバースプロキシ (Nginx)
|
||||
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name your-domain.com;
|
||||
|
||||
location / {
|
||||
proxy_pass http://localhost:20128;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection 'upgrade';
|
||||
proxy_set_header Host $host;
|
||||
|
||||
# SSE support for streaming
|
||||
proxy_buffering off;
|
||||
proxy_read_timeout 86400;
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**ユースケース:** HTTPS、カスタムドメイン、ロードバランシング
|
||||
|
||||
---
|
||||
|
||||
## アンインストール
|
||||
|
||||
### グローバルインストールを削除
|
||||
|
||||
```bash
|
||||
npm uninstall -g 9router
|
||||
```
|
||||
|
||||
### データディレクトリを削除
|
||||
|
||||
```bash
|
||||
rm -rf ~/.9router
|
||||
```
|
||||
|
||||
### 設定を削除
|
||||
|
||||
```bash
|
||||
# シェル設定から環境変数を削除
|
||||
nano ~/.bashrc # または ~/.zshrc
|
||||
# 9router関連のエクスポートを削除
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 次のステップ
|
||||
|
||||
- [スタートガイド](../getting-started.md) - プロバイダーを接続してコーディング開始
|
||||
- [機能](../features/) - クォータトラッキング、コンボ、デプロイを確認
|
||||
- [トラブルシューティング](../troubleshooting.md) - 一般的な問題の修正
|
||||
|
||||
---
|
||||
|
||||
## ヘルプが必要?
|
||||
|
||||
- **ウェブサイト**: [9router.com](https://9router.com)
|
||||
- **GitHub**: [github.com/decolua/9router](https://github.com/decolua/9router)
|
||||
- **Issues**: [github.com/decolua/9router/issues](https://github.com/decolua/9router/issues)
|
||||
247
gitbook/content/ja/getting-started/quick-start.md
Normal file
247
gitbook/content/ja/getting-started/quick-start.md
Normal file
@@ -0,0 +1,247 @@
|
||||
# はじめに
|
||||
|
||||
9Routerを5分で起動し、AIリクエストをインテリジェントにルーティングし始めましょう。
|
||||
|
||||
---
|
||||
|
||||
## クイックスタート
|
||||
|
||||
### 1. インストール
|
||||
|
||||
```bash
|
||||
npm install -g 9router
|
||||
```
|
||||
|
||||
**要件:** Node.js 20+ ([インストール詳細](getting-started/installation.md))
|
||||
|
||||
### 2. 起動
|
||||
|
||||
```bash
|
||||
9router
|
||||
```
|
||||
|
||||
🎉 **ダッシュボードが自動的に開きます** (`http://localhost:20128`)
|
||||
|
||||
- デフォルトパスワード: `123456` (ダッシュボードで変更)
|
||||
- APIキーは自動生成
|
||||
- プロバイダー接続の準備完了
|
||||
|
||||
### 3. プロバイダーを接続
|
||||
|
||||
プロバイダーを接続する方法は3つあります:
|
||||
|
||||
#### オプションA: OAuth(サブスクリプションプロバイダー)
|
||||
|
||||
**最適:** Claude Code、Codex、Gemini CLI、GitHub Copilot
|
||||
|
||||
```
|
||||
Dashboard → Providers → Connect [Provider]
|
||||
→ OAuthログイン → トークン自動更新
|
||||
→ クォータトラッキング有効化
|
||||
```
|
||||
|
||||
**例: Claude Code**
|
||||
1. 「Connect Claude Code」をクリック
|
||||
2. Claudeアカウントでログイン
|
||||
3. 9Routerを認可
|
||||
4. ✅ 完了! モデルを使用: `cc/claude-opus-4-5-20251101`
|
||||
|
||||
#### オプションB: APIキー(低価格プロバイダー)
|
||||
|
||||
**最適:** GLM、MiniMax、Kimi、OpenRouter
|
||||
|
||||
```
|
||||
Dashboard → Providers → Add API Key
|
||||
→ プロバイダーを選択
|
||||
→ APIキーを貼り付け
|
||||
→ 保存
|
||||
```
|
||||
|
||||
**例: GLM-4.7**
|
||||
1. [Zhipu AI](https://open.bigmodel.cn/)でサインアップ
|
||||
2. Coding PlanからAPIキーを取得
|
||||
3. Dashboard → Add API Key → Provider: `glm` → キーを貼り付け
|
||||
4. ✅ 完了! モデルを使用: `glm/glm-4.7`
|
||||
|
||||
#### オプションC: 無料プロバイダー(コストなし)
|
||||
|
||||
**最適:** iFlow、Qwen、Kiro
|
||||
|
||||
```
|
||||
Dashboard → Providers → Connect [Free Provider]
|
||||
→ デバイスコードまたはOAuth
|
||||
→ 無制限利用
|
||||
```
|
||||
|
||||
**例: iFlow**
|
||||
1. 「Connect iFlow」をクリック
|
||||
2. iFlowアカウントでログイン
|
||||
3. 認可
|
||||
4. ✅ 完了! 8モデルを使用: `if/kimi-k2-thinking`、`if/qwen3-coder-plus`など
|
||||
|
||||
---
|
||||
|
||||
## 4. CLIツールで使用
|
||||
|
||||
コーディングツールを9Routerに向けます:
|
||||
|
||||
### Cursor IDE
|
||||
|
||||
```
|
||||
Settings → Models → Advanced:
|
||||
OpenAI API Base URL: http://localhost:20128/v1
|
||||
OpenAI API Key: [9routerダッシュボードから取得]
|
||||
Model: cc/claude-opus-4-5-20251101
|
||||
```
|
||||
|
||||
### Claude Desktop
|
||||
|
||||
`~/.claude/config.json`を編集:
|
||||
|
||||
```json
|
||||
{
|
||||
"anthropic_api_base": "http://localhost:20128/v1",
|
||||
"anthropic_api_key": "your-9router-api-key"
|
||||
}
|
||||
```
|
||||
|
||||
### Cline / Continue / RooCode
|
||||
|
||||
```
|
||||
Provider: OpenAI Compatible
|
||||
Base URL: http://localhost:20128/v1
|
||||
API Key: [ダッシュボードから取得]
|
||||
Model: cc/claude-opus-4-5-20251101
|
||||
```
|
||||
|
||||
### Codex CLI
|
||||
|
||||
```bash
|
||||
export OPENAI_BASE_URL="http://localhost:20128"
|
||||
export OPENAI_API_KEY="your-9router-api-key"
|
||||
|
||||
codex "your prompt"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5. スマートコンボを作成(オプション)
|
||||
|
||||
コンボはモデル間の自動フォールバックを可能にします:
|
||||
|
||||
```
|
||||
Dashboard → Combos → Create New
|
||||
|
||||
Name: premium-coding
|
||||
Models:
|
||||
1. cc/claude-opus-4-5-20251101 (サブスクリプション優先)
|
||||
2. glm/glm-4.7 (低価格バックアップ、100万あたり$0.6)
|
||||
3. if/kimi-k2-thinking (無料フォールバック)
|
||||
|
||||
CLIで使用: premium-coding
|
||||
```
|
||||
|
||||
**動作:**
|
||||
1. 最初にClaude Opusを試行(サブスクリプション)
|
||||
2. クォータ消費時 → GLM-4.7(超低価格)
|
||||
3. 予算上限時 → iFlow(無料)
|
||||
4. ダウンタイムゼロ、自動切替!
|
||||
|
||||
---
|
||||
|
||||
## 利用可能なモデル
|
||||
|
||||
### サブスクリプションモデル(最初に最大化)
|
||||
|
||||
**Claude Code (`cc/`)** - Pro/Maxサブスクリプション:
|
||||
- `cc/claude-opus-4-5-20251101` - Claude 4.5 Opus
|
||||
- `cc/claude-sonnet-4-5-20250929` - Claude 4.5 Sonnet
|
||||
- `cc/claude-haiku-4-5-20251001` - Claude 4.5 Haiku
|
||||
|
||||
**Codex (`cx/`)** - Plus/Proサブスクリプション:
|
||||
- `cx/gpt-5.2-codex` - GPT 5.2 Codex
|
||||
- `cx/gpt-5.1-codex-max` - GPT 5.1 Codex Max
|
||||
|
||||
**Gemini CLI (`gc/`)** - 月18万無料:
|
||||
- `gc/gemini-3-flash-preview` - Gemini 3 Flash Preview
|
||||
- `gc/gemini-2.5-pro` - Gemini 2.5 Pro
|
||||
|
||||
**GitHub Copilot (`gh/`)** - サブスクリプション:
|
||||
- `gh/gpt-5` - GPT-5
|
||||
- `gh/claude-4.5-sonnet` - Claude 4.5 Sonnet
|
||||
|
||||
### 低価格モデル(バックアップ)
|
||||
|
||||
**GLM (`glm/`)** - 100万あたり$0.6/$2.2:
|
||||
- `glm/glm-4.7` - GLM 4.7(毎日午前10時リセット)
|
||||
|
||||
**MiniMax (`minimax/`)** - 100万あたり$0.20/$1.00:
|
||||
- `minimax/MiniMax-M2.1` - MiniMax M2.1(5時間リセット)
|
||||
|
||||
**Kimi (`kimi/`)** - 月$9(1000万トークン):
|
||||
- `kimi/kimi-latest` - Kimi Latest
|
||||
|
||||
### 無料モデル(緊急時)
|
||||
|
||||
**iFlow (`if/`)** - 8モデル無料:
|
||||
- `if/kimi-k2-thinking` - Kimi K2 Thinking
|
||||
- `if/qwen3-coder-plus` - Qwen3 Coder Plus
|
||||
- `if/glm-4.7` - GLM 4.7
|
||||
- `if/deepseek-r1` - DeepSeek R1
|
||||
|
||||
**Qwen (`qw/`)** - 3モデル無料:
|
||||
- `qw/qwen3-coder-plus` - Qwen3 Coder Plus
|
||||
- `qw/qwen3-coder-flash` - Qwen3 Coder Flash
|
||||
|
||||
**Kiro (`kr/`)** - 2モデル無料:
|
||||
- `kr/claude-sonnet-4.5` - Claude Sonnet 4.5
|
||||
- `kr/claude-haiku-4.5` - Claude Haiku 4.5
|
||||
|
||||
---
|
||||
|
||||
## コスト最適化戦略
|
||||
|
||||
### 月予算: $10〜20/月
|
||||
|
||||
```
|
||||
1. クイックタスクにGemini CLI無料プラン(月18万)を使用
|
||||
2. Claude Codeサブスクリプションのクォータを完全利用(すでに支払い済み)
|
||||
3. クォータ切れ時はGLM(100万あたり$0.6)へフォールバック
|
||||
4. 緊急時: MiniMax M2.1(100万あたり$0.20)またはiFlow(無料)
|
||||
|
||||
実例(月1億トークン):
|
||||
Gemini CLI経由で6000万: $0(無料プラン)
|
||||
Claude Code経由で3000万: $0(既存サブスクリプション)
|
||||
GLM経由で800万: $4.80
|
||||
MiniMax経由で200万: $0.40
|
||||
合計: 月$5.20 + 既存サブスクリプション
|
||||
```
|
||||
|
||||
### クォータリセット戦略
|
||||
|
||||
```
|
||||
日課:
|
||||
1. 朝: Claude Codeの新しいクォータ(5時間リセット)
|
||||
2. 午後: Gemini CLIへ切替(1K/日)
|
||||
3. 夕方: GLM日次クォータ(翌朝10時リセット)
|
||||
4. 深夜: MiniMax(5時間ローリング)またはiFlow(無料)
|
||||
|
||||
→ 最小の追加コストで24時間コーディング!
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 次のステップ
|
||||
|
||||
- [インストール詳細](getting-started/installation.md) - 要件、トラブルシューティング
|
||||
- [機能](features/) - クォータトラッキング、コンボ、デプロイを確認
|
||||
- [FAQ](faq.md) - よくある質問と回答
|
||||
- [トラブルシューティング](troubleshooting.md) - 一般的な問題の修正
|
||||
|
||||
---
|
||||
|
||||
## ヘルプが必要?
|
||||
|
||||
- **ウェブサイト**: [9router.com](https://9router.com)
|
||||
- **GitHub**: [github.com/decolua/9router](https://github.com/decolua/9router)
|
||||
- **Issues**: [github.com/decolua/9router/issues](https://github.com/decolua/9router/issues)
|
||||
164
gitbook/content/ja/index.md
Normal file
164
gitbook/content/ja/index.md
Normal file
@@ -0,0 +1,164 @@
|
||||
# 9Routerへようこそ
|
||||
|
||||
**Claude、Codex、Geminiを無料で利用 • 100万トークンあたり$0.20からの超低価格な代替手段**
|
||||
|
||||
9Routerは、インテリジェントなルーティングと自動フォールバックを通じて、サブスクリプションの価値を最大化し、コストを最小限に抑えるAIモデルルーターです。
|
||||
|
||||
---
|
||||
|
||||
## 9Routerとは?
|
||||
|
||||
9Routerは、コーディングツール(Cursor、Cline、Claude Desktop)とAIプロバイダーの間に位置するスマートプロキシです。クォータ、コスト、可用性に基づいて、リクエストを最適なモデルへ自動的にルーティングします。
|
||||
|
||||
**お金を無駄にしないために:**
|
||||
- ❌ サブスクリプションのクォータが毎月未使用のまま失効
|
||||
- ❌ レート制限でコーディングが中断
|
||||
- ❌ 高額なAPI(プロバイダーあたり月$20〜50)
|
||||
- ❌ プロバイダー間の手動切り替え
|
||||
|
||||
**価値を最大化するために:**
|
||||
- ✅ **サブスクリプションを最大限活用** - Claude Code、Codex、Geminiのクォータを余すことなく追跡・利用
|
||||
- ✅ **無料で利用可能** - CLI経由でiFlow、Qwen、Kiroモデルにアクセス
|
||||
- ✅ **超低価格バックアップ** - GLM(100万あたり$0.6)、MiniMax M2.1(100万あたり$0.20)
|
||||
- ✅ **スマートフォールバック** - サブスクリプション → 低価格 → 無料へ自動切替
|
||||
|
||||
---
|
||||
|
||||
## 主な機能
|
||||
|
||||
### 🔄 スマート3階層フォールバック
|
||||
|
||||
```
|
||||
一度セットアップすれば、コーディングが止まらない:
|
||||
|
||||
Tier 1 (サブスクリプション): Claude Code → Codex → Gemini
|
||||
↓ クォータ消費
|
||||
Tier 2 (低価格): GLM-4.7 → MiniMax M2.1 → Kimi
|
||||
↓ 予算上限
|
||||
Tier 3 (無料): iFlow → Qwen → Kiro
|
||||
|
||||
→ 自動切替、ダウンタイムゼロ!
|
||||
```
|
||||
|
||||
### 📊 クォータトラッキング
|
||||
|
||||
- プロバイダーごとのリアルタイムトークン消費
|
||||
- リセットカウントダウン(5時間、毎日、毎週、毎月)
|
||||
- 有料プランのコスト見積もり
|
||||
- 月次支出レポート
|
||||
|
||||
### 🎯 ユニバーサルCLIサポート
|
||||
|
||||
カスタムOpenAIエンドポイントをサポートするあらゆるツールで動作:
|
||||
|
||||
✅ **Cursor** • **Cline** • **Claude Desktop** • **Codex** • **RooCode** • **Continue** • **OpenAI互換ツール全般**
|
||||
|
||||
### 💰 コスト最適化
|
||||
|
||||
**実例(月1億トークン):**
|
||||
```
|
||||
Gemini CLI経由で6000万: $0(無料プラン)
|
||||
Claude Code経由で3000万: $0(既存サブスクリプション)
|
||||
GLM経由で800万: $4.80
|
||||
MiniMax経由で200万: $0.40
|
||||
合計: 月$5.20 vs ChatGPT APIの$2000!
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## なぜ9Routerを選ぶのか?
|
||||
|
||||
### サブスクリプションを最大化
|
||||
|
||||
すでにClaude Code(月$20〜100)やCodex(月$20〜200)に支払っていますか? 完全な価値を引き出しましょう:
|
||||
|
||||
- クォータ使用量をリアルタイムで追跡
|
||||
- クォータリセット(5時間、週次)時に自動切替
|
||||
- 失効前にすべてのトークンを使い切る
|
||||
- Gemini CLI: 月18万コンプリーション**無料**
|
||||
|
||||
### 超低価格バックアップ
|
||||
|
||||
サブスクリプションのクォータが切れたら、わずかな金額で:
|
||||
|
||||
| プロバイダー | 100万トークンあたりのコスト | リセット |
|
||||
|----------|-------------------|-------|
|
||||
| **GLM-4.7** | 入力$0.60 / 出力$2.20 | 毎日午前10時 |
|
||||
| **MiniMax M2.1** | 入力$0.20 / 出力$1.00 | 5時間ローリング |
|
||||
| **Kimi K2** | 月$9(1000万トークン) | 月次 |
|
||||
|
||||
**ChatGPT API(100万あたり$20)より約90%安い!**
|
||||
|
||||
### 永久無料フォールバック
|
||||
|
||||
他がすべてクォータ制限に達した時の緊急バックアップ:
|
||||
|
||||
- **iFlow**: 8モデル(Kimi K2、Qwen3 Coder Plus、GLM 4.7、MiniMax M2)
|
||||
- **Qwen**: 3モデル(Qwen3 Coder Plus/Flash、Vision)
|
||||
- **Kiro**: Claude Sonnet 4.5、Haiku 4.5(AWS Builder ID)
|
||||
|
||||
---
|
||||
|
||||
## クイックスタート
|
||||
|
||||
2分で始められます:
|
||||
|
||||
```bash
|
||||
# グローバルインストール
|
||||
npm install -g 9router
|
||||
|
||||
# 起動(ダッシュボードが自動で開きます)
|
||||
9router
|
||||
```
|
||||
|
||||
🎉 **ダッシュボードが開く** → プロバイダーを接続 → コーディング開始!
|
||||
|
||||
**CLIツールで使う:**
|
||||
|
||||
```
|
||||
Endpoint: http://localhost:20128/v1
|
||||
API Key: [ダッシュボードから取得]
|
||||
Model: cc/claude-opus-4-5-20251101
|
||||
```
|
||||
|
||||
[→ 完全なスタートガイド](getting-started.md)
|
||||
|
||||
---
|
||||
|
||||
## ユースケース
|
||||
|
||||
### 個人開発者向け
|
||||
|
||||
- Claude Code/Codexサブスクリプションを最大限活用
|
||||
- Gemini CLI無料プラン(月18万)を活用
|
||||
- 超低価格モデル(100万あたり$0.20)へフォールバック
|
||||
- レート制限なしで24時間コーディング
|
||||
|
||||
### チーム向け
|
||||
|
||||
- VPS/クラウドにデプロイして共有アクセス
|
||||
- チームの支出をリアルタイムで追跡
|
||||
- 階層ごとに予算上限を設定
|
||||
- 集中型のプロバイダー管理
|
||||
|
||||
### モバイル/リモートコーディング向け
|
||||
|
||||
- クラウドデプロイ(https://9router.com)を使用
|
||||
- iPad、スマホ、どこからでもアクセス
|
||||
- localhost制限なし
|
||||
- Cloudflareエッジネットワーク(300以上のロケーション)
|
||||
|
||||
---
|
||||
|
||||
## 次は?
|
||||
|
||||
- [スタートガイド](getting-started.md) - 5分でインストールと設定
|
||||
- [インストールガイド](getting-started/installation.md) - 詳細なセットアップ手順
|
||||
- [機能](features/) - すべての機能を確認
|
||||
- [FAQ](faq.md) - よくある質問
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
<sub>AIの価値を最大化する開発者のために ❤️ で構築</sub>
|
||||
</div>
|
||||
109
gitbook/content/ja/integration/claude-code.md
Normal file
109
gitbook/content/ja/integration/claude-code.md
Normal file
@@ -0,0 +1,109 @@
|
||||
# Claude Code統合
|
||||
|
||||
9RouterをClaude Code CLIと統合し、AnthropicのAPIリクエストを9Routerのインテリジェントルーティングシステム経由でルーティングします。
|
||||
|
||||
## 前提条件
|
||||
|
||||
- Claude Code CLIがインストール済み
|
||||
- 9Routerがローカルで動作中、またはクラウドエンドポイントが設定済み
|
||||
- 9RouterダッシュボードからのAPIキー
|
||||
|
||||
## セットアップ
|
||||
|
||||
### 1. 環境変数を設定
|
||||
|
||||
シェル設定ファイル (`~/.bashrc`、`~/.zshrc`、または `~/.bash_profile`) で以下の環境変数を設定:
|
||||
|
||||
```bash
|
||||
# 9Router用Base URL
|
||||
export ANTHROPIC_BASE_URL="http://localhost:20128/v1"
|
||||
|
||||
# オプション: エイリアス用のデフォルトモデルを設定
|
||||
export ANTHROPIC_DEFAULT_OPUS_MODEL="cc/claude-opus-4-5-20251101"
|
||||
export ANTHROPIC_DEFAULT_SONNET_MODEL="cc/claude-sonnet-4-5-20250929"
|
||||
export ANTHROPIC_DEFAULT_HAIKU_MODEL="cc/claude-haiku-4-5-20251001"
|
||||
```
|
||||
|
||||
### 2. シェル設定をリロード
|
||||
|
||||
```bash
|
||||
source ~/.zshrc # または ~/.bashrc
|
||||
```
|
||||
|
||||
### 3. 設定を確認
|
||||
|
||||
環境変数が正しく設定されているか確認:
|
||||
|
||||
```bash
|
||||
echo $ANTHROPIC_BASE_URL
|
||||
```
|
||||
|
||||
## モデルエイリアス
|
||||
|
||||
Claude Codeは9Routerモデルにマッピングされる以下のモデルエイリアスをサポート:
|
||||
|
||||
| エイリアス | モデル | 環境変数 |
|
||||
|-------|-------|---------------------|
|
||||
| `opus` | Claude Opus 4.5 | `ANTHROPIC_DEFAULT_OPUS_MODEL` |
|
||||
| `sonnet` | Claude Sonnet 4.5 | `ANTHROPIC_DEFAULT_SONNET_MODEL` |
|
||||
| `haiku` | Claude Haiku 4.5 | `ANTHROPIC_DEFAULT_HAIKU_MODEL` |
|
||||
|
||||
## 使用例
|
||||
|
||||
### モデルエイリアスを使用
|
||||
|
||||
```bash
|
||||
# Opusモデルを使用
|
||||
claude --model opus "Explain quantum computing"
|
||||
|
||||
# Sonnetモデルを使用
|
||||
claude --model sonnet "Write a Python function"
|
||||
|
||||
# Haikuモデルを使用
|
||||
claude --model haiku "Quick code review"
|
||||
```
|
||||
|
||||
### フルモデル名を使用
|
||||
|
||||
```bash
|
||||
claude --model cc/claude-opus-4-5-20251101 "Your prompt here"
|
||||
```
|
||||
|
||||
## 設定ファイル
|
||||
|
||||
Claude Codeは設定を `~/.claude/settings.json` に保存します。必要に応じてこのファイルを手動で編集できます:
|
||||
|
||||
```json
|
||||
{
|
||||
"baseUrl": "http://localhost:20128/v1",
|
||||
"defaultModel": "sonnet"
|
||||
}
|
||||
```
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### 接続の問題
|
||||
|
||||
接続エラーが発生した場合:
|
||||
|
||||
1. 9Routerが動作中か確認: `curl http://localhost:20128/health`
|
||||
2. 環境変数が正しく設定されているか確認
|
||||
3. ファイアウォールがポート20128をブロックしていないか確認
|
||||
|
||||
### モデルが見つからない
|
||||
|
||||
「model not found」エラーが発生した場合:
|
||||
|
||||
1. モデル名が9Routerの設定と一致しているか確認
|
||||
2. 9Routerダッシュボードでプロバイダー接続がアクティブか確認
|
||||
3. 接続されたプロバイダーでモデルが利用可能か確認
|
||||
|
||||
## クラウドエンドポイント
|
||||
|
||||
localhostの代わりに9Routerクラウドエンドポイントを使用するには:
|
||||
|
||||
```bash
|
||||
export ANTHROPIC_BASE_URL="https://9router.com"
|
||||
```
|
||||
|
||||
9RouterクラウドダッシュボードでAPIキーが設定されていることを確認してください。
|
||||
201
gitbook/content/ja/integration/cline.md
Normal file
201
gitbook/content/ja/integration/cline.md
Normal file
@@ -0,0 +1,201 @@
|
||||
# Cline統合
|
||||
|
||||
9RouterをCline VSCode拡張機能と統合し、AIリクエストを9Routerのインテリジェントルーティングシステム経由でルーティングします。
|
||||
|
||||
## 前提条件
|
||||
|
||||
- Visual Studio Codeがインストール済み
|
||||
- VSCodeマーケットプレイスからCline拡張機能がインストール済み
|
||||
- 9Routerがローカルで動作中、またはクラウドエンドポイントが設定済み
|
||||
- 9RouterダッシュボードからのAPIキー
|
||||
|
||||
## セットアップ
|
||||
|
||||
### 1. Cline設定を開く
|
||||
|
||||
1. Visual Studio Codeを開く
|
||||
2. Cline拡張機能パネルを開く (サイドバーのClineアイコンをクリック)
|
||||
3. Clineパネルの **Settings** アイコン (歯車アイコン) をクリック
|
||||
|
||||
### 2. APIプロバイダーを選択
|
||||
|
||||
1. Cline設定で **API Provider** ドロップダウンを見つける
|
||||
2. リストから **Ollama** を選択
|
||||
- 注: OpenAIスタイルAPIと互換性があるためOllamaプロバイダータイプを使用します
|
||||
|
||||
### 3. Base URLを設定
|
||||
|
||||
Base URLを9Routerエンドポイントに設定:
|
||||
|
||||
**ローカル9Router用:**
|
||||
```
|
||||
http://localhost:20128/v1
|
||||
```
|
||||
|
||||
**クラウド9Router用:**
|
||||
```
|
||||
https://9router.com
|
||||
```
|
||||
|
||||
**手順:**
|
||||
1. **Base URL** フィールドに9Routerエンドポイントを入力
|
||||
2. 末尾に `/v1` を必ず含める
|
||||
|
||||
### 4. APIキーを追加
|
||||
|
||||
1. **API Key** フィールドに9Router APIキーを入力
|
||||
2. APIキーは9Routerダッシュボードの **Settings → API Keys** で確認できます
|
||||
3. キーは `sk-9router-` で始まります
|
||||
|
||||
### 5. モデルを選択
|
||||
|
||||
1. **Model** ドロップダウンで、次のいずれかを実行:
|
||||
- 利用可能なモデルから選択 (Clineが自動検出した場合)
|
||||
- 9Router設定からモデル名を手動で入力
|
||||
|
||||
2. 一般的なモデル名:
|
||||
- `gpt-4`
|
||||
- `gpt-4o`
|
||||
- `claude-opus-4-5`
|
||||
- `claude-sonnet-4-5`
|
||||
- `gemini-2.0-flash`
|
||||
|
||||
### 6. 設定を保存
|
||||
|
||||
**Save** をクリックするか、設定パネルを閉じます。Clineは設定を自動的に保存します。
|
||||
|
||||
## 設定例
|
||||
|
||||
Cline設定は次のようになります:
|
||||
|
||||
```
|
||||
API Provider: Ollama
|
||||
Base URL: http://localhost:20128/v1
|
||||
API Key: sk-9router-xxxxxxxxxxxxx
|
||||
Model: gpt-4
|
||||
```
|
||||
|
||||
## 利用可能なモデル
|
||||
|
||||
9Routerダッシュボードで設定されたモデルを使用できます。一般的な例:
|
||||
|
||||
| モデル名 | プロバイダー | 説明 |
|
||||
|------------|----------|-------------|
|
||||
| `gpt-4` | OpenAI | GPT-4 Turbo |
|
||||
| `gpt-4o` | OpenAI | GPT-4 Optimized |
|
||||
| `claude-opus-4-5` | Anthropic | Claude Opus 4.5 |
|
||||
| `claude-sonnet-4-5` | Anthropic | Claude Sonnet 4.5 |
|
||||
| `gemini-2.0-flash` | Google | Gemini 2.0 Flash |
|
||||
|
||||
## 使用法
|
||||
|
||||
### AIとチャット
|
||||
|
||||
1. VSCodeでClineパネルを開く
|
||||
2. チャット入力にメッセージを入力
|
||||
3. Enterを押して送信
|
||||
4. Clineは9Routerを使用してリクエストを処理
|
||||
|
||||
### コード生成
|
||||
|
||||
1. Clineにコード生成を依頼: 「Create a React component for a login form」
|
||||
2. Clineは9Routerを使用してコードを生成
|
||||
3. 生成されたコードを確認して受け入れる
|
||||
|
||||
### コード説明
|
||||
|
||||
1. エディタでコードを選択
|
||||
2. Clineに質問: 「Explain this code」
|
||||
3. 9Router経由でAIによる説明を取得
|
||||
|
||||
### ファイル操作
|
||||
|
||||
1. Clineにファイルの作成、変更、削除を依頼
|
||||
2. Clineは9Routerを使用してコンテキストを理解し変更を加える
|
||||
3. 受け入れる前に変更を確認
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### 「Connection Failed」エラー
|
||||
|
||||
1. 9Routerが動作中か確認: `curl http://localhost:20128/health`
|
||||
2. Base URLが正しく、`/v1` を含むことを確認
|
||||
3. ファイアウォールがポート20128をブロックしていないか確認
|
||||
4. VSCodeを再起動してみる
|
||||
|
||||
### 「Invalid API Key」エラー
|
||||
|
||||
1. 9RouterダッシュボードでAPIキーを確認
|
||||
2. `sk-9router-` プレフィックスを含むキー全体をコピーしたか確認
|
||||
3. APIキーが期限切れでないか確認
|
||||
4. 新しいAPIキーを再生成してみる
|
||||
|
||||
### 「Model Not Found」エラー
|
||||
|
||||
1. モデル名が9Router設定と正確に一致するか確認
|
||||
2. 9Routerダッシュボードでプロバイダー接続がアクティブか確認
|
||||
3. 接続されたプロバイダーでモデルが利用可能か確認
|
||||
4. フルモデル名を使用してみる (例: `gpt-4` の代わりに `openai/gpt-4`)
|
||||
|
||||
### Clineが応答しない
|
||||
|
||||
1. エラーメッセージについてCline出力パネルを確認
|
||||
2. 9Routerインスタンスが動作中で正常か確認
|
||||
3. VSCodeウィンドウをリロードしてみる (Cmd/Ctrl + Shift + P → 「Reload Window」)
|
||||
4. エラーについて9Routerログを確認
|
||||
|
||||
## 高度な設定
|
||||
|
||||
### クラウドエンドポイントを使用
|
||||
|
||||
localhostの代わりに9Routerクラウドエンドポイントを使用:
|
||||
|
||||
1. Cline設定で、Base URLを設定: `https://9router.com`
|
||||
2. 9RouterクラウドダッシュボードでAPIキーが設定されていることを確認
|
||||
3. クラウドエンドポイントがアクティブでアクセス可能か確認
|
||||
|
||||
### 複数のモデル
|
||||
|
||||
モデルをすばやく切り替えることができます:
|
||||
|
||||
1. Cline設定を開く
|
||||
2. **Model** フィールドを別のモデルに変更
|
||||
3. 保存して新しいモデルでチャットを続行
|
||||
|
||||
### カスタムタイムアウト
|
||||
|
||||
大きなリクエストでタイムアウトの問題が発生した場合:
|
||||
|
||||
1. VSCode設定を開く (Cmd/Ctrl + ,)
|
||||
2. 「Cline timeout」を検索
|
||||
3. タイムアウト値を増やす (デフォルトは通常30秒)
|
||||
|
||||
## ベストプラクティス
|
||||
|
||||
1. **適切なモデルを使用**: シンプルなタスクには高速モデル (HaikuやFlash) を、複雑なタスクには強力なモデル (OpusやGPT-4) を選択
|
||||
2. **使用量をモニター**: 9Routerダッシュボードで使用統計とコストを確認
|
||||
3. **コンテキスト管理**: トークン使用量を減らすため、会話を焦点を絞ったものに保つ
|
||||
4. **モデル切替**: タスクの複雑さに基づいてモデルを切り替え、コストとパフォーマンスを最適化
|
||||
5. **APIキーセキュリティ**: APIキーをバージョン管理にコミットしない
|
||||
|
||||
## 9Router機能との統合
|
||||
|
||||
### モデルルーティング
|
||||
|
||||
9Routerは以下に基づいて最適な利用可能なプロバイダーにリクエストを自動的にルーティング:
|
||||
- モデル可用性
|
||||
- プロバイダーヘルスステータス
|
||||
- コスト最適化
|
||||
- ロードバランシング
|
||||
|
||||
### フォールバックサポート
|
||||
|
||||
プロバイダーが失敗した場合、9Routerは自動的にダッシュボードで設定された代替プロバイダーにフォールバックします。
|
||||
|
||||
### 使用量トラッキング
|
||||
|
||||
9Routerダッシュボード経由でCline使用量をモニター:
|
||||
- 総リクエスト数
|
||||
- トークン使用量
|
||||
- モデルごとのコスト
|
||||
- プロバイダー分布
|
||||
136
gitbook/content/ja/integration/codex.md
Normal file
136
gitbook/content/ja/integration/codex.md
Normal file
@@ -0,0 +1,136 @@
|
||||
# OpenAI Codex CLI統合
|
||||
|
||||
9RouterをOpenAI Codex CLIと統合し、OpenAI APIリクエストを9Routerのインテリジェントルーティングシステム経由でルーティングします。
|
||||
|
||||
## 前提条件
|
||||
|
||||
- OpenAI Codex CLIがインストール済み
|
||||
- 9Routerがローカルで動作中、またはクラウドエンドポイントが設定済み
|
||||
- 9RouterダッシュボードからのAPIキー
|
||||
|
||||
## セットアップ
|
||||
|
||||
### 1. 環境変数を設定
|
||||
|
||||
シェル設定ファイル (`~/.bashrc`、`~/.zshrc`、または `~/.bash_profile`) で以下の環境変数を設定:
|
||||
|
||||
```bash
|
||||
# 9Router用Base URL
|
||||
export OPENAI_BASE_URL="http://localhost:20128/v1"
|
||||
|
||||
# 9RouterダッシュボードからのAPIキー
|
||||
export OPENAI_API_KEY="your-9router-api-key"
|
||||
```
|
||||
|
||||
### 2. シェル設定をリロード
|
||||
|
||||
```bash
|
||||
source ~/.zshrc # または ~/.bashrc
|
||||
```
|
||||
|
||||
### 3. 設定を確認
|
||||
|
||||
環境変数が正しく設定されているか確認:
|
||||
|
||||
```bash
|
||||
echo $OPENAI_BASE_URL
|
||||
echo $OPENAI_API_KEY
|
||||
```
|
||||
|
||||
## 利用可能なモデル
|
||||
|
||||
9Routerは以下のCodexモデルを提供します:
|
||||
|
||||
| モデルID | 説明 |
|
||||
|----------|-------------|
|
||||
| `cx/gpt-5.2-codex` | GPT-5.2 Codex - 最新バージョン |
|
||||
| `cx/gpt-5.1-codex-max` | GPT-5.1 Codex Max - 拡張コンテキスト |
|
||||
|
||||
## 使用例
|
||||
|
||||
### 基本的な使用法
|
||||
|
||||
```bash
|
||||
# GPT-5.2 Codexを使用
|
||||
codex --model cx/gpt-5.2-codex "Write a function to sort an array"
|
||||
|
||||
# GPT-5.1 Codex Maxを使用
|
||||
codex --model cx/gpt-5.1-codex-max "Explain this complex algorithm"
|
||||
```
|
||||
|
||||
### コード生成
|
||||
|
||||
```bash
|
||||
codex --model cx/gpt-5.2-codex "Create a REST API endpoint for user authentication"
|
||||
```
|
||||
|
||||
### コード説明
|
||||
|
||||
```bash
|
||||
codex --model cx/gpt-5.1-codex-max "Explain what this code does: $(cat myfile.js)"
|
||||
```
|
||||
|
||||
## 設定ファイル
|
||||
|
||||
設定ファイルを使ってCodex CLIを設定することもできます。`~/.codex/config.json` を作成または編集:
|
||||
|
||||
```json
|
||||
{
|
||||
"baseUrl": "http://localhost:20128/v1",
|
||||
"apiKey": "your-9router-api-key",
|
||||
"defaultModel": "cx/gpt-5.2-codex"
|
||||
}
|
||||
```
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### 認証エラー
|
||||
|
||||
認証エラーが発生した場合:
|
||||
|
||||
1. 9RouterダッシュボードでAPIキーが正しいか確認
|
||||
2. `OPENAI_API_KEY` 環境変数が設定されているか確認
|
||||
3. APIキーが期限切れでないか確認
|
||||
|
||||
### 接続の問題
|
||||
|
||||
接続エラーが発生した場合:
|
||||
|
||||
1. 9Routerが動作中か確認: `curl http://localhost:20128/health`
|
||||
2. 環境変数が正しく設定されているか確認
|
||||
3. ファイアウォールがポート20128をブロックしていないか確認
|
||||
|
||||
### モデルが利用不可
|
||||
|
||||
「model not available」エラーが発生した場合:
|
||||
|
||||
1. モデル名が9Router設定と一致するか確認
|
||||
2. 9RouterダッシュボードでOpenAIプロバイダー接続がアクティブか確認
|
||||
3. 接続されたプロバイダーでモデルが利用可能か確認
|
||||
|
||||
## クラウドエンドポイント
|
||||
|
||||
localhostの代わりに9Routerクラウドエンドポイントを使用するには:
|
||||
|
||||
```bash
|
||||
export OPENAI_BASE_URL="https://9router.com"
|
||||
```
|
||||
|
||||
9RouterクラウドダッシュボードでAPIキーが設定されていることを確認してください。
|
||||
|
||||
## 高度な設定
|
||||
|
||||
### カスタムタイムアウト
|
||||
|
||||
```bash
|
||||
export OPENAI_TIMEOUT=60 # 秒
|
||||
```
|
||||
|
||||
### デバッグモード
|
||||
|
||||
詳細なリクエスト/レスポンスログを表示するため、デバッグモードを有効化:
|
||||
|
||||
```bash
|
||||
export CODEX_DEBUG=true
|
||||
codex --model cx/gpt-5.2-codex "Your prompt"
|
||||
```
|
||||
249
gitbook/content/ja/integration/continue.md
Normal file
249
gitbook/content/ja/integration/continue.md
Normal file
@@ -0,0 +1,249 @@
|
||||
# Continue VSCode拡張機能統合
|
||||
|
||||
9RouterをContinue拡張機能と統合し、Visual Studio Codeに直接AIアシスタンスを導入します。
|
||||
|
||||
## 前提条件
|
||||
|
||||
- Visual Studio Codeがインストール済み
|
||||
- VSCodeマーケットプレイスからContinue拡張機能がインストール済み
|
||||
- [ダッシュボード](https://9router.com/dashboard)からの9Router APIキー
|
||||
- 9Routerが動作中 (ローカルまたはクラウド)
|
||||
|
||||
## 設定手順
|
||||
|
||||
### 1. Continue設定を開く
|
||||
|
||||
1. VSCodeを開く
|
||||
2. `Cmd+Shift+P` (Mac) または `Ctrl+Shift+P` (Windows/Linux) を押す
|
||||
3. 「Continue: Open Config」と入力して選択
|
||||
4. `~/.continue/config.json` が開きます
|
||||
|
||||
### 2. 9Routerモデル設定を追加
|
||||
|
||||
以下の設定を `config.json` に追加:
|
||||
|
||||
**単一モデルセットアップ:**
|
||||
```json
|
||||
{
|
||||
"models": [
|
||||
{
|
||||
"title": "9Router - Claude Opus",
|
||||
"provider": "openai",
|
||||
"model": "cc/claude-opus-4-5-20251101",
|
||||
"apiKey": "your-api-key-from-dashboard",
|
||||
"apiBase": "http://localhost:20128/v1"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
**複数モデルセットアップ:**
|
||||
```json
|
||||
{
|
||||
"models": [
|
||||
{
|
||||
"title": "9Router - Claude Opus (Best)",
|
||||
"provider": "openai",
|
||||
"model": "cc/claude-opus-4-5-20251101",
|
||||
"apiKey": "your-api-key-from-dashboard",
|
||||
"apiBase": "http://localhost:20128/v1"
|
||||
},
|
||||
{
|
||||
"title": "9Router - Claude Sonnet (Balanced)",
|
||||
"provider": "openai",
|
||||
"model": "cc/claude-sonnet-4-20250514",
|
||||
"apiKey": "your-api-key-from-dashboard",
|
||||
"apiBase": "http://localhost:20128/v1"
|
||||
},
|
||||
{
|
||||
"title": "9Router - DeepSeek Chat (Code)",
|
||||
"provider": "openai",
|
||||
"model": "cx/deepseek-chat",
|
||||
"apiKey": "your-api-key-from-dashboard",
|
||||
"apiBase": "http://localhost:20128/v1"
|
||||
},
|
||||
{
|
||||
"title": "9Router - Claude Haiku (Fast)",
|
||||
"provider": "openai",
|
||||
"model": "cc/claude-haiku-4-20250514",
|
||||
"apiKey": "your-api-key-from-dashboard",
|
||||
"apiBase": "http://localhost:20128/v1"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
**クラウド9Router用:**
|
||||
`apiBase` を以下に置き換え:
|
||||
```json
|
||||
"apiBase": "https://9router.com/v1"
|
||||
```
|
||||
|
||||
### 3. 保存してリロード
|
||||
|
||||
1. 設定ファイルを保存
|
||||
2. VSCodeウィンドウをリロード: `Cmd+Shift+P` → 「Developer: Reload Window」
|
||||
3. Continue拡張機能が新しい設定を読み込みます
|
||||
|
||||
### 4. モデルを選択
|
||||
|
||||
1. Continueサイドバーを開く (左パネルのContinueアイコンをクリック)
|
||||
2. 上部のモデルセレクタードロップダウンをクリック
|
||||
3. お好みの9Routerモデルを選択
|
||||
|
||||
## 利用可能なモデル
|
||||
|
||||
### Claudeモデル (Anthropic)
|
||||
- `cc/claude-opus-4-5-20251101` - 最も高性能、複雑なタスクに最適
|
||||
- `cc/claude-sonnet-4-20250514` - パフォーマンスと速度のバランス
|
||||
- `cc/claude-haiku-4-20250514` - 最速、シンプルなタスクに適している
|
||||
|
||||
### DeepSeekモデル
|
||||
- `cx/deepseek-chat` - コード生成に優れている
|
||||
- `cx/deepseek-reasoner` - 複雑な問題解決に最適
|
||||
|
||||
### GLMモデル (Zhipu AI)
|
||||
- `glm/glm-4-plus` - 高度な中国語と英語
|
||||
- `glm/glm-4-flash` - 高速応答
|
||||
|
||||
## 使用例
|
||||
|
||||
### コード説明
|
||||
1. エディタでコードを選択
|
||||
2. Continueサイドバーを開く
|
||||
3. 入力: 「Explain this code」
|
||||
4. Model: `cc/claude-sonnet-4-20250514`
|
||||
|
||||
### コード生成
|
||||
1. Continueサイドバーを開く
|
||||
2. 入力: 「Create a React component for user profile card」
|
||||
3. Model: `cx/deepseek-chat`
|
||||
|
||||
### リファクタリング
|
||||
1. リファクタリングするコードを選択
|
||||
2. 入力: 「Refactor this to use async/await」
|
||||
3. Model: `cc/claude-sonnet-4-20250514`
|
||||
|
||||
### バグ修正
|
||||
1. 問題のあるコードを選択
|
||||
2. 入力: 「Find and fix the bug in this code」
|
||||
3. Model: `cx/deepseek-reasoner`
|
||||
|
||||
## 高度な設定
|
||||
|
||||
### カスタムシステムプロンプト
|
||||
|
||||
特定の動作のためのカスタムシステムプロンプトを追加:
|
||||
|
||||
```json
|
||||
{
|
||||
"models": [
|
||||
{
|
||||
"title": "9Router - Code Expert",
|
||||
"provider": "openai",
|
||||
"model": "cx/deepseek-chat",
|
||||
"apiKey": "your-api-key",
|
||||
"apiBase": "http://localhost:20128/v1",
|
||||
"systemMessage": "You are an expert programmer. Always provide clean, well-documented code with best practices."
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Temperatureとパラメータ
|
||||
|
||||
パラメータでモデルの動作を調整:
|
||||
|
||||
```json
|
||||
{
|
||||
"models": [
|
||||
{
|
||||
"title": "9Router - Creative Writer",
|
||||
"provider": "openai",
|
||||
"model": "cc/claude-opus-4-5-20251101",
|
||||
"apiKey": "your-api-key",
|
||||
"apiBase": "http://localhost:20128/v1",
|
||||
"temperature": 0.9,
|
||||
"topP": 0.95
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### コンテキストプロバイダー
|
||||
|
||||
Continueがモデルに送信するコンテキストを設定:
|
||||
|
||||
```json
|
||||
{
|
||||
"contextProviders": [
|
||||
{
|
||||
"name": "code",
|
||||
"params": {
|
||||
"maxLines": 100
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "diff",
|
||||
"params": {}
|
||||
},
|
||||
{
|
||||
"name": "terminal",
|
||||
"params": {}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
## キーボードショートカット
|
||||
|
||||
- `Cmd+L` (Mac) / `Ctrl+L` (Windows/Linux) - Continueチャットを開く
|
||||
- `Cmd+I` (Mac) / `Ctrl+I` (Windows/Linux) - インライン編集
|
||||
- `Cmd+Shift+R` (Mac) / `Ctrl+Shift+R` (Windows/Linux) - 応答を再生成
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### モデルが応答しない
|
||||
- 9Routerが動作中か確認: `curl http://localhost:20128/health`
|
||||
- config.jsonのAPIキーを確認
|
||||
- エラーについてVSCode開発者コンソールを確認: `Help` → `Toggle Developer Tools`
|
||||
|
||||
### 間違ったモデルが選択されている
|
||||
- Continueサイドバーのモデルドロップダウンをクリック
|
||||
- 正しい9Routerモデルを選択
|
||||
- モデル名は正確に一致する必要があります (大文字小文字を区別)
|
||||
|
||||
### 設定が読み込まれない
|
||||
- JSON構文が有効であることを確認 (JSONバリデータを使用)
|
||||
- ファイルの場所を確認: `~/.continue/config.json`
|
||||
- 変更後にVSCodeウィンドウをリロード
|
||||
|
||||
### パフォーマンスが遅い
|
||||
- より高速なモデルへ切替 (haiku、flash)
|
||||
- contextProvidersでコンテキストサイズを削減
|
||||
- 9Routerへのネットワークレイテンシを確認
|
||||
|
||||
## ベストプラクティス
|
||||
|
||||
### モデル選択戦略
|
||||
- **クイック編集**: `cc/claude-haiku-4-20250514` を使用
|
||||
- **コード生成**: `cx/deepseek-chat` を使用
|
||||
- **複雑なリファクタリング**: `cc/claude-opus-4-5-20251101` を使用
|
||||
- **問題解決**: `cx/deepseek-reasoner` を使用
|
||||
|
||||
### コンテキスト管理
|
||||
- 質問する前に関連コードのみを選択
|
||||
- 具体的で明確なプロンプトを使用
|
||||
- 複雑なタスクを小さなステップに分解
|
||||
|
||||
### コスト最適化
|
||||
- シンプルなタスクには高速/安価なモデルを使用
|
||||
- 可能な場合はコンテキストサイズを制限
|
||||
- 頻繁に使用される応答をキャッシュ
|
||||
|
||||
## 次のステップ
|
||||
|
||||
- [Cursorを設定](cursor.md) IDE統合を強化
|
||||
- [Rooをセットアップ](roo.md) AIアシスタント用
|
||||
- [CLI使用法を確認](../cli/basic-usage.md)
|
||||
- [モデル選択について学ぶ](../models/overview.md)
|
||||
149
gitbook/content/ja/integration/cursor.md
Normal file
149
gitbook/content/ja/integration/cursor.md
Normal file
@@ -0,0 +1,149 @@
|
||||
# Cursor統合
|
||||
|
||||
9RouterをCursor IDEと統合し、AIリクエストを9Routerのインテリジェントルーティングシステム経由でルーティングします。
|
||||
|
||||
## 前提条件
|
||||
|
||||
- Cursor IDEがインストール済み
|
||||
- Cursor Proアカウント (カスタムAPIエンドポイントに必要)
|
||||
- 9Routerクラウドエンドポイントが設定済み
|
||||
- 9RouterダッシュボードからのAPIキー
|
||||
|
||||
## ⚠️ 重要な注意点
|
||||
|
||||
> **クラウドエンドポイントが必要**: Cursorは独自のサーバー経由でリクエストをルーティングし、localhostエンドポイントをサポートしません。9Routerクラウドエンドポイント `https://9router.com` を使用する必要があります。
|
||||
|
||||
> **Cursor Proが必要**: この機能はカスタムAPIエンドポイントを使用するためにCursor Proアカウントが必要です。
|
||||
|
||||
## セットアップ
|
||||
|
||||
### 1. Cursor設定を開く
|
||||
|
||||
1. Cursor IDEを開く
|
||||
2. **Settings** へ移動 (Cmd/Ctrl + ,)
|
||||
3. **Models** セクションへ移動
|
||||
|
||||
### 2. OpenAI APIを有効化
|
||||
|
||||
1. **OpenAI API key** オプションを見つける
|
||||
2. トグルを有効にしてカスタムAPI設定を有効化
|
||||
|
||||
### 3. Base URLを設定
|
||||
|
||||
Base URLを9Routerクラウドエンドポイントに設定:
|
||||
|
||||
```
|
||||
https://9router.com
|
||||
```
|
||||
|
||||
**手順:**
|
||||
1. Models設定で **Base URL** フィールドを見つける
|
||||
2. 入力: `https://9router.com`
|
||||
3. **Save** をクリック
|
||||
|
||||
### 4. APIキーを追加
|
||||
|
||||
1. **API Key** フィールドに9Router APIキーを入力
|
||||
2. APIキーは9Routerダッシュボードの **Settings → API Keys** で確認できます
|
||||
3. **Save** をクリック
|
||||
|
||||
### 5. カスタムモデルを追加
|
||||
|
||||
1. **View All Models** ボタンをクリック
|
||||
2. **Add Custom Model** をクリック
|
||||
3. 9Router設定からモデル名を入力 (例: `gpt-4`、`claude-opus-4-5` など)
|
||||
4. **Add** をクリック
|
||||
|
||||
### 6. モデルを選択
|
||||
|
||||
1. Cursorチャットインターフェイスでモデルセレクタードロップダウンをクリック
|
||||
2. リストからカスタムモデルを選択
|
||||
3. Cursorで9Routerを使い始める!
|
||||
|
||||
## 設定例
|
||||
|
||||
Cursor設定は次のようになります:
|
||||
|
||||
```
|
||||
OpenAI API: ✓ Enabled
|
||||
Base URL: https://9router.com
|
||||
API Key: sk-9router-xxxxxxxxxxxxx
|
||||
Custom Models: gpt-4, claude-opus-4-5, gemini-2.0-flash
|
||||
```
|
||||
|
||||
## 利用可能なモデル
|
||||
|
||||
9Routerダッシュボードで設定されたモデルを使用できます。一般的な例:
|
||||
|
||||
| モデル名 | プロバイダー | 説明 |
|
||||
|------------|----------|-------------|
|
||||
| `gpt-4` | OpenAI | GPT-4 Turbo |
|
||||
| `gpt-4o` | OpenAI | GPT-4 Optimized |
|
||||
| `claude-opus-4-5` | Anthropic | Claude Opus 4.5 |
|
||||
| `claude-sonnet-4-5` | Anthropic | Claude Sonnet 4.5 |
|
||||
| `gemini-2.0-flash` | Google | Gemini 2.0 Flash |
|
||||
|
||||
## 使用法
|
||||
|
||||
### チャットインターフェイス
|
||||
|
||||
1. Cursorチャットを開く (Cmd/Ctrl + L)
|
||||
2. ドロップダウンからモデルを選択
|
||||
3. 9Router経由でAIとチャット開始
|
||||
|
||||
### インラインコード生成
|
||||
|
||||
1. エディタでコードを選択
|
||||
2. Cmd/Ctrl + Kを押す
|
||||
3. プロンプトを入力
|
||||
4. Cursorは9Routerを使用してコードを生成
|
||||
|
||||
### コード説明
|
||||
|
||||
1. エディタでコードを選択
|
||||
2. Cmd/Ctrl + Lを押す
|
||||
3. 「Explain this code」と質問
|
||||
4. 9Router経由でAIによる説明を取得
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### 「Invalid API Key」エラー
|
||||
|
||||
1. 9RouterダッシュボードでAPIキーを確認
|
||||
2. `sk-9router-` プレフィックスを含むキー全体をコピーしたか確認
|
||||
3. APIキーが期限切れでないか確認
|
||||
4. 新しいAPIキーを再生成してみる
|
||||
|
||||
### 「Model Not Found」エラー
|
||||
|
||||
1. モデル名が9Router設定と正確に一致するか確認
|
||||
2. 9Routerダッシュボードでプロバイダー接続がアクティブか確認
|
||||
3. 接続されたプロバイダーでモデルが利用可能か確認
|
||||
4. フルモデル名を使用してみる (例: `gpt-4` の代わりに `openai/gpt-4`)
|
||||
|
||||
### 接続の問題
|
||||
|
||||
1. クラウドエンドポイントを使用しているか確認: `https://9router.com`
|
||||
2. インターネット接続を確認
|
||||
3. 9Routerクラウドサービスが運用中か確認
|
||||
4. VPNまたはプロキシが有効な場合は無効化してみる
|
||||
|
||||
### Localhostが動作しない
|
||||
|
||||
> **覚えておいてください**: Cursorはlocalhostエンドポイントをサポートしません。クラウドエンドポイント `https://9router.com` を使用する必要があります。ローカル9Routerインスタンスを使用したい場合は、ngrokなどのトンネリングサービスを検討してローカルエンドポイントを公開してください。
|
||||
|
||||
## クラウドエンドポイントのセットアップ
|
||||
|
||||
ローカルで9Routerを実行し、Cursorで使用したい場合:
|
||||
|
||||
1. 9Router設定でクラウドエンドポイントを有効化
|
||||
2. 9RouterダッシュボードでクラウドエンドポイントURLを設定
|
||||
3. Cursor設定でクラウドURLを使用
|
||||
4. ローカル9Routerインスタンスがインターネットからアクセス可能か確認
|
||||
|
||||
## ベストプラクティス
|
||||
|
||||
1. **モデルエイリアスを使用**: 9Routerで頻繁に使うモデル用のショートエイリアスを作成
|
||||
2. **使用量をモニター**: 9Routerダッシュボードで使用統計とコストを確認
|
||||
3. **APIキーをローテーション**: セキュリティのためAPIキーを定期的にローテーション
|
||||
4. **モデルをテスト**: ユースケースに最適なモデルを見つけるため、異なるモデルを試す
|
||||
416
gitbook/content/ja/integration/other-tools.md
Normal file
416
gitbook/content/ja/integration/other-tools.md
Normal file
@@ -0,0 +1,416 @@
|
||||
# その他ツール統合
|
||||
|
||||
9RouterはOpenAI API形式をサポートする任意のツールと互換性があります。このガイドでは、様々なツールやカスタムアプリケーション向けの汎用統合パターンを説明します。
|
||||
|
||||
## 概要
|
||||
|
||||
9RouterはOpenAI互換APIエンドポイントを提供し、以下と動作します:
|
||||
- カスタムスクリプトとアプリケーション
|
||||
- APIクライアントとテストツール
|
||||
- CLIツールとユーティリティ
|
||||
- サードパーティ統合
|
||||
- 開発フレームワーク
|
||||
|
||||
## 汎用セットアップパターン
|
||||
|
||||
任意のOpenAI互換ツールは以下の設定で9Routerに接続できます:
|
||||
|
||||
**ローカル9Router:**
|
||||
```
|
||||
Base URL: http://localhost:20128/v1
|
||||
API Key: your-api-key-from-dashboard
|
||||
Model: 任意の9Routerモデル (cc/*, cx/*, glm/*など)
|
||||
```
|
||||
|
||||
**クラウド9Router:**
|
||||
```
|
||||
Base URL: https://9router.com/v1
|
||||
API Key: your-api-key-from-dashboard
|
||||
Model: 任意の9Routerモデル (cc/*, cx/*, glm/*など)
|
||||
```
|
||||
|
||||
## 利用可能なモデル
|
||||
|
||||
### Claudeモデル (Anthropic)
|
||||
- `cc/claude-opus-4-5-20251101`
|
||||
- `cc/claude-sonnet-4-20250514`
|
||||
- `cc/claude-haiku-4-20250514`
|
||||
|
||||
### DeepSeekモデル
|
||||
- `cx/deepseek-chat`
|
||||
- `cx/deepseek-reasoner`
|
||||
|
||||
### GLMモデル (Zhipu AI)
|
||||
- `glm/glm-4-plus`
|
||||
- `glm/glm-4-flash`
|
||||
|
||||
## 統合例
|
||||
|
||||
### PythonとOpenAI SDK
|
||||
|
||||
```python
|
||||
from openai import OpenAI
|
||||
|
||||
client = OpenAI(
|
||||
api_key="your-api-key-from-dashboard",
|
||||
base_url="http://localhost:20128/v1"
|
||||
)
|
||||
|
||||
response = client.chat.completions.create(
|
||||
model="cc/claude-sonnet-4-20250514",
|
||||
messages=[
|
||||
{"role": "user", "content": "Hello, how are you?"}
|
||||
]
|
||||
)
|
||||
|
||||
print(response.choices[0].message.content)
|
||||
```
|
||||
|
||||
### Node.jsとOpenAI SDK
|
||||
|
||||
```javascript
|
||||
import OpenAI from "openai";
|
||||
|
||||
const client = new OpenAI({
|
||||
apiKey: "your-api-key-from-dashboard",
|
||||
baseURL: "http://localhost:20128/v1"
|
||||
});
|
||||
|
||||
const response = await client.chat.completions.create({
|
||||
model: "cc/claude-sonnet-4-20250514",
|
||||
messages: [
|
||||
{ role: "user", content: "Hello, how are you?" }
|
||||
]
|
||||
});
|
||||
|
||||
console.log(response.choices[0].message.content);
|
||||
```
|
||||
|
||||
### cURLコマンド
|
||||
|
||||
```bash
|
||||
curl http://localhost:20128/v1/chat/completions \
|
||||
-H "Content-Type: application/json" \
|
||||
-H "Authorization: Bearer your-api-key-from-dashboard" \
|
||||
-d '{
|
||||
"model": "cc/claude-sonnet-4-20250514",
|
||||
"messages": [
|
||||
{"role": "user", "content": "Hello, how are you?"}
|
||||
]
|
||||
}'
|
||||
```
|
||||
|
||||
### HTTPクライアント (Postman、Insomnia)
|
||||
|
||||
**Request:**
|
||||
```
|
||||
POST http://localhost:20128/v1/chat/completions
|
||||
```
|
||||
|
||||
**Headers:**
|
||||
```
|
||||
Content-Type: application/json
|
||||
Authorization: Bearer your-api-key-from-dashboard
|
||||
```
|
||||
|
||||
**Body:**
|
||||
```json
|
||||
{
|
||||
"model": "cc/claude-sonnet-4-20250514",
|
||||
"messages": [
|
||||
{"role": "user", "content": "Hello, how are you?"}
|
||||
],
|
||||
"temperature": 0.7,
|
||||
"max_tokens": 1000
|
||||
}
|
||||
```
|
||||
|
||||
### LangChain統合
|
||||
|
||||
```python
|
||||
from langchain.chat_models import ChatOpenAI
|
||||
from langchain.schema import HumanMessage
|
||||
|
||||
llm = ChatOpenAI(
|
||||
model_name="cc/claude-sonnet-4-20250514",
|
||||
openai_api_key="your-api-key-from-dashboard",
|
||||
openai_api_base="http://localhost:20128/v1",
|
||||
temperature=0.7
|
||||
)
|
||||
|
||||
messages = [HumanMessage(content="Explain quantum computing")]
|
||||
response = llm(messages)
|
||||
print(response.content)
|
||||
```
|
||||
|
||||
### LlamaIndex統合
|
||||
|
||||
```python
|
||||
from llama_index.llms import OpenAI
|
||||
|
||||
llm = OpenAI(
|
||||
model="cc/claude-sonnet-4-20250514",
|
||||
api_key="your-api-key-from-dashboard",
|
||||
api_base="http://localhost:20128/v1"
|
||||
)
|
||||
|
||||
response = llm.complete("What is machine learning?")
|
||||
print(response.text)
|
||||
```
|
||||
|
||||
## カスタムスクリプトの例
|
||||
|
||||
### バッチ処理スクリプト
|
||||
|
||||
```python
|
||||
import openai
|
||||
import json
|
||||
|
||||
openai.api_key = "your-api-key-from-dashboard"
|
||||
openai.api_base = "http://localhost:20128/v1"
|
||||
|
||||
def process_batch(prompts, model="cx/deepseek-chat"):
|
||||
results = []
|
||||
for prompt in prompts:
|
||||
response = openai.ChatCompletion.create(
|
||||
model=model,
|
||||
messages=[{"role": "user", "content": prompt}]
|
||||
)
|
||||
results.append({
|
||||
"prompt": prompt,
|
||||
"response": response.choices[0].message.content
|
||||
})
|
||||
return results
|
||||
|
||||
prompts = [
|
||||
"Explain AI in one sentence",
|
||||
"What is machine learning?",
|
||||
"Define neural networks"
|
||||
]
|
||||
|
||||
results = process_batch(prompts)
|
||||
print(json.dumps(results, indent=2))
|
||||
```
|
||||
|
||||
### ストリーミングレスポンスハンドラ
|
||||
|
||||
```javascript
|
||||
import OpenAI from "openai";
|
||||
|
||||
const client = new OpenAI({
|
||||
apiKey: "your-api-key-from-dashboard",
|
||||
baseURL: "http://localhost:20128/v1"
|
||||
});
|
||||
|
||||
async function streamResponse(prompt) {
|
||||
const stream = await client.chat.completions.create({
|
||||
model: "cc/claude-sonnet-4-20250514",
|
||||
messages: [{ role: "user", content: prompt }],
|
||||
stream: true
|
||||
});
|
||||
|
||||
for await (const chunk of stream) {
|
||||
const content = chunk.choices[0]?.delta?.content || "";
|
||||
process.stdout.write(content);
|
||||
}
|
||||
}
|
||||
|
||||
streamResponse("Write a short story about AI");
|
||||
```
|
||||
|
||||
### マルチモデル比較
|
||||
|
||||
```python
|
||||
from openai import OpenAI
|
||||
|
||||
client = OpenAI(
|
||||
api_key="your-api-key-from-dashboard",
|
||||
base_url="http://localhost:20128/v1"
|
||||
)
|
||||
|
||||
models = [
|
||||
"cc/claude-sonnet-4-20250514",
|
||||
"cx/deepseek-chat",
|
||||
"glm/glm-4-plus"
|
||||
]
|
||||
|
||||
prompt = "Explain quantum computing in simple terms"
|
||||
|
||||
for model in models:
|
||||
response = client.chat.completions.create(
|
||||
model=model,
|
||||
messages=[{"role": "user", "content": prompt}]
|
||||
)
|
||||
print(f"\n=== {model} ===")
|
||||
print(response.choices[0].message.content)
|
||||
```
|
||||
|
||||
## 一般的な統合パターン
|
||||
|
||||
### 環境変数
|
||||
|
||||
認証情報を安全に保存:
|
||||
|
||||
```bash
|
||||
# .envファイル
|
||||
ROUTER_API_KEY=your-api-key-from-dashboard
|
||||
ROUTER_BASE_URL=http://localhost:20128/v1
|
||||
ROUTER_MODEL=cc/claude-sonnet-4-20250514
|
||||
```
|
||||
|
||||
```python
|
||||
import os
|
||||
from openai import OpenAI
|
||||
|
||||
client = OpenAI(
|
||||
api_key=os.getenv("ROUTER_API_KEY"),
|
||||
base_url=os.getenv("ROUTER_BASE_URL")
|
||||
)
|
||||
```
|
||||
|
||||
### エラーハンドリング
|
||||
|
||||
```python
|
||||
from openai import OpenAI, OpenAIError
|
||||
|
||||
client = OpenAI(
|
||||
api_key="your-api-key",
|
||||
base_url="http://localhost:20128/v1"
|
||||
)
|
||||
|
||||
try:
|
||||
response = client.chat.completions.create(
|
||||
model="cc/claude-sonnet-4-20250514",
|
||||
messages=[{"role": "user", "content": "Hello"}]
|
||||
)
|
||||
print(response.choices[0].message.content)
|
||||
except OpenAIError as e:
|
||||
print(f"Error: {e}")
|
||||
```
|
||||
|
||||
### リトライロジック
|
||||
|
||||
```python
|
||||
import time
|
||||
from openai import OpenAI, RateLimitError
|
||||
|
||||
client = OpenAI(
|
||||
api_key="your-api-key",
|
||||
base_url="http://localhost:20128/v1"
|
||||
)
|
||||
|
||||
def chat_with_retry(prompt, max_retries=3):
|
||||
for attempt in range(max_retries):
|
||||
try:
|
||||
response = client.chat.completions.create(
|
||||
model="cc/claude-sonnet-4-20250514",
|
||||
messages=[{"role": "user", "content": prompt}]
|
||||
)
|
||||
return response.choices[0].message.content
|
||||
except RateLimitError:
|
||||
if attempt < max_retries - 1:
|
||||
time.sleep(2 ** attempt) # Exponential backoff
|
||||
else:
|
||||
raise
|
||||
```
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### 接続の問題
|
||||
|
||||
**問題:** 9Routerに接続できない
|
||||
```bash
|
||||
# 9Routerが動作中か確認
|
||||
curl http://localhost:20128/health
|
||||
|
||||
# 期待されるレスポンス:
|
||||
{"status": "ok"}
|
||||
```
|
||||
|
||||
**解決策:**
|
||||
- 9Routerが動作中か確認
|
||||
- ポート20128がブロックされていないか確認
|
||||
- 正しいbase URLを確認 (`/v1`を含む)
|
||||
|
||||
### 認証エラー
|
||||
|
||||
**問題:** 401 Unauthorized
|
||||
```
|
||||
Error: Invalid API key
|
||||
```
|
||||
|
||||
**解決策:**
|
||||
- ダッシュボードからのAPIキーを確認
|
||||
- AuthorizationヘッダーフォーマットがBearer your-api-keyであることを確認
|
||||
- APIキーに余分なスペースや改行がないことを確認
|
||||
|
||||
### モデルが見つからない
|
||||
|
||||
**問題:** 404 Model not found
|
||||
```
|
||||
Error: Model 'cc/claude-opus' not found
|
||||
```
|
||||
|
||||
**解決策:**
|
||||
- 正確なモデル名を使用 (大文字小文字を区別)
|
||||
- 利用可能なモデルを確認: `curl http://localhost:20128/v1/models`
|
||||
- プランでモデルが有効になっていることを確認
|
||||
|
||||
### タイムアウトの問題
|
||||
|
||||
**問題:** リクエストタイムアウト
|
||||
```
|
||||
Error: Request timed out after 30s
|
||||
```
|
||||
|
||||
**解決策:**
|
||||
- クライアント設定でタイムアウトを増やす
|
||||
- 時間制約のあるタスクには高速モデルを使用
|
||||
- 9Routerへのネットワーク接続を確認
|
||||
|
||||
### レート制限
|
||||
|
||||
**問題:** 429 Too Many Requests
|
||||
```
|
||||
Error: Rate limit exceeded
|
||||
```
|
||||
|
||||
**解決策:**
|
||||
- 指数バックオフを実装
|
||||
- リクエスト頻度を減らす
|
||||
- ダッシュボードでレート制限を確認
|
||||
- プランのアップグレードを検討
|
||||
|
||||
## ベストプラクティス
|
||||
|
||||
### セキュリティ
|
||||
- APIキーを環境変数に保存
|
||||
- APIキーをバージョン管理にコミットしない
|
||||
- クラウドデプロイにはHTTPSを使用
|
||||
- APIキーを定期的にローテーション
|
||||
|
||||
### パフォーマンス
|
||||
- タスクの複雑さに応じて適切なモデルを使用
|
||||
- 繰り返しクエリにキャッシュを実装
|
||||
- 長い応答にはストリーミングを使用
|
||||
- 可能な場合はリクエストをバッチ処理
|
||||
|
||||
### エラーハンドリング
|
||||
- 常にtry-catchブロックを実装
|
||||
- 指数バックオフでリトライロジックを追加
|
||||
- デバッグのためエラーをログ
|
||||
- フォールバックメカニズムを提供
|
||||
|
||||
### コスト最適化
|
||||
- シンプルなタスクには費用対効果の高いモデルを選択
|
||||
- 適切な場合は応答をキャッシュ
|
||||
- ダッシュボードで使用量をモニター
|
||||
- コードでリクエスト制限を設定
|
||||
|
||||
## 次のステップ
|
||||
|
||||
- [Cursorを設定](cursor.md) IDE統合用
|
||||
- [Continueをセットアップ](continue.md) VSCode用
|
||||
- [CLI使用法を確認](../cli/basic-usage.md)
|
||||
- [モデル選択について学ぶ](../models/overview.md)
|
||||
- [APIリファレンス](../api/reference.md)
|
||||
127
gitbook/content/ja/integration/roo.md
Normal file
127
gitbook/content/ja/integration/roo.md
Normal file
@@ -0,0 +1,127 @@
|
||||
# Roo AIアシスタント統合
|
||||
|
||||
9RouterをRoo AIアシスタントと統合し、統一インターフェイスから複数のAIモデルにアクセスします。
|
||||
|
||||
## 前提条件
|
||||
|
||||
- Roo AIアシスタントがインストール済み
|
||||
- [ダッシュボード](https://9router.com/dashboard)からの9Router APIキー
|
||||
- 9Routerが動作中 (ローカルまたはクラウド)
|
||||
|
||||
## 設定手順
|
||||
|
||||
### 1. Roo設定を開く
|
||||
|
||||
Roo AIアシスタントを起動し、設定パネルを開きます。
|
||||
|
||||
### 2. APIプロバイダーを設定
|
||||
|
||||
1. **API Provider** 設定へ移動
|
||||
2. プロバイダータイプとして **Ollama** を選択
|
||||
3. 以下の設定を行う:
|
||||
|
||||
**ローカル9Router用:**
|
||||
```
|
||||
Base URL: http://localhost:20128/v1
|
||||
API Key: your-api-key-from-dashboard
|
||||
```
|
||||
|
||||
**クラウド9Router用:**
|
||||
```
|
||||
Base URL: https://9router.com/v1
|
||||
API Key: your-api-key-from-dashboard
|
||||
```
|
||||
|
||||
### 3. モデルを選択
|
||||
|
||||
利用可能な9Routerモデルから選択:
|
||||
|
||||
**Claudeモデル:**
|
||||
- `cc/claude-opus-4-5-20251101` - 最も高性能
|
||||
- `cc/claude-sonnet-4-20250514` - バランス
|
||||
- `cc/claude-haiku-4-20250514` - 高速
|
||||
|
||||
**DeepSeekモデル:**
|
||||
- `cx/deepseek-chat` - 汎用
|
||||
- `cx/deepseek-reasoner` - 複雑な推論
|
||||
|
||||
**GLMモデル:**
|
||||
- `glm/glm-4-plus` - 高度
|
||||
- `glm/glm-4-flash` - 高速応答
|
||||
|
||||
### 4. 接続をテスト
|
||||
|
||||
統合を確認するためにテストメッセージを送信:
|
||||
|
||||
```
|
||||
Hello! Can you confirm you're connected through 9Router?
|
||||
```
|
||||
|
||||
## 使用例
|
||||
|
||||
### 基本チャット
|
||||
```
|
||||
Rooに質問: "Explain quantum computing in simple terms"
|
||||
Model: cc/claude-sonnet-4-20250514
|
||||
```
|
||||
|
||||
### コード生成
|
||||
```
|
||||
Rooに質問: "Write a Python function to calculate Fibonacci numbers"
|
||||
Model: cx/deepseek-chat
|
||||
```
|
||||
|
||||
### 複雑な推論
|
||||
```
|
||||
Rooに質問: "Analyze the trade-offs between microservices and monolithic architecture"
|
||||
Model: cx/deepseek-reasoner
|
||||
```
|
||||
|
||||
## モデル選択のヒント
|
||||
|
||||
- **クイックタスク**: `cc/claude-haiku-4-20250514` または `glm/glm-4-flash` を使用
|
||||
- **バランスのとれたパフォーマンス**: `cc/claude-sonnet-4-20250514` または `cx/deepseek-chat` を使用
|
||||
- **複雑な推論**: `cc/claude-opus-4-5-20251101` または `cx/deepseek-reasoner` を使用
|
||||
- **コスト最適化**: DeepSeekまたはGLMモデルを使用
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### 接続失敗
|
||||
- 9Routerが動作中か確認: `curl http://localhost:20128/health`
|
||||
- APIキーが正しいか確認
|
||||
- Base URLに `/v1` サフィックスが含まれていることを確認
|
||||
|
||||
### モデルが利用不可
|
||||
- モデル名が正確に一致するか確認 (大文字小文字を区別)
|
||||
- 9Routerプランでモデルが有効か確認
|
||||
- リストから別のモデルを試す
|
||||
|
||||
### 応答が遅い
|
||||
- より高速なモデルへ切替 (haiku、flash)
|
||||
- ネットワーク接続を確認
|
||||
- 問題について9Routerログをモニター
|
||||
|
||||
## 高度な設定
|
||||
|
||||
### カスタムモデルエイリアス
|
||||
|
||||
Roo設定で頻繁に使うモデルのショートカットを作成:
|
||||
|
||||
```
|
||||
エイリアス: "fast" → cc/claude-haiku-4-20250514
|
||||
エイリアス: "smart" → cc/claude-opus-4-5-20251101
|
||||
エイリアス: "code" → cx/deepseek-chat
|
||||
```
|
||||
|
||||
### 複数のプロファイル
|
||||
|
||||
異なるユースケース用の異なるプロファイルをセットアップ:
|
||||
- **開発**: コード用のDeepSeekモデル
|
||||
- **執筆**: コンテンツ用のClaudeモデル
|
||||
- **リサーチ**: 分析用のReasonerモデル
|
||||
|
||||
## 次のステップ
|
||||
|
||||
- [Cursorを設定](cursor.md) IDE統合用
|
||||
- [Continueをセットアップ](continue.md) VSCode用
|
||||
- [CLI使用法を確認](../cli/basic-usage.md)
|
||||
462
gitbook/content/ja/providers/cheap.md
Normal file
462
gitbook/content/ja/providers/cheap.md
Normal file
@@ -0,0 +1,462 @@
|
||||
# 低価格プロバイダー - 超低価格バックアップ
|
||||
|
||||
サブスクリプションクォータが切れたら、ドルではなくセント単位で支払い。ChatGPT APIより約90%安い!
|
||||
|
||||
---
|
||||
|
||||
## 概要
|
||||
|
||||
低価格階層プロバイダーは、サブスクリプションクォータが消費された時の**バックアップ**:
|
||||
|
||||
- 💰 **GLM-4.7** - 100万トークンあたり$0.6/$2.2 (日次リセット)
|
||||
- 💰 **MiniMax M2.1** - 100万トークンあたり$0.2/$1.0 (5時間リセット)
|
||||
- 💰 **Kimi K2** - 月$9固定 (1000万トークン)
|
||||
|
||||
**戦略:** サブスクリプションクォータ切れ後、無料階層前に使用。ChatGPT API (100万あたり$20) に対して大幅なコスト削減。
|
||||
|
||||
---
|
||||
|
||||
## GLM-4.7 (日次リセット)
|
||||
|
||||
### 料金
|
||||
|
||||
| 階層 | 入力 | 出力 | リセット |
|
||||
|------|-------|--------|-------|
|
||||
| Standard | $0.60/1M | $2.20/1M | 毎日午前10時 |
|
||||
| Coding Plan | $0.60/1M | $2.20/1M | 毎日午前10時 (3×クォータ) |
|
||||
|
||||
**コスト例 (1000万トークン):**
|
||||
- 入力: 1000万 × $0.60 = $6
|
||||
- 出力: 1000万 × $2.20 = $22
|
||||
- **合計: $6〜22** vs ChatGPT APIの$200!
|
||||
|
||||
### セットアップ
|
||||
|
||||
**ステップ1: サインアップ**
|
||||
|
||||
1. [Zhipu AI](https://open.bigmodel.cn/) を訪問
|
||||
2. アカウント作成 (電話認証)
|
||||
3. 同じ価格で3×クォータの **Coding Plan** を選択
|
||||
|
||||
**ステップ2: APIキーを取得**
|
||||
|
||||
```bash
|
||||
Dashboard → API Keys → Create New
|
||||
→ APIキーをコピー ("zhipu-"で始まる)
|
||||
```
|
||||
|
||||
**ステップ3: 9Routerに追加**
|
||||
|
||||
```bash
|
||||
9router
|
||||
# Dashboard → Providers → Add API Key
|
||||
|
||||
Provider: glm
|
||||
API Key: zhipu-your-api-key-here
|
||||
```
|
||||
|
||||
**ステップ4: CLIで使用**
|
||||
|
||||
```
|
||||
Model: glm/glm-4.7
|
||||
glm/glm-4.6v (vision)
|
||||
```
|
||||
|
||||
### 利用可能なモデル
|
||||
|
||||
| モデルID | 説明 | コンテキスト | 最適用途 |
|
||||
|----------|-------------|---------|----------|
|
||||
| `glm/glm-4.7` | GLM 4.7 | 128K | コーディング、汎用タスク |
|
||||
| `glm/glm-4.6v` | GLM 4.6V Vision | 128K | 画像分析 |
|
||||
|
||||
### プロのヒント
|
||||
|
||||
- **Coding Plan** - 同じ価格で3×クォータ ($0.6/$2.2)
|
||||
- **日次リセット** - 北京時間午前10時に新鮮なクォータ
|
||||
- **コーディングに最適** - コード生成用に最適化
|
||||
- **128Kコンテキスト** - 大きなファイルを処理
|
||||
|
||||
### クォータリセット
|
||||
|
||||
```
|
||||
日次リセット: 北京時間午前10時 (UTC+8)
|
||||
→ UTC午前2時
|
||||
→ PST午後6時 (前日)
|
||||
→ EST午後9時 (前日)
|
||||
|
||||
リセット時間に合わせて重いタスクを計画!
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## MiniMax M2.1 (5時間リセット)
|
||||
|
||||
### 料金
|
||||
|
||||
| 階層 | 入力 | 出力 | リセット |
|
||||
|------|-------|--------|-------|
|
||||
| Standard | $0.20/1M | $1.00/1M | 5時間ローリング |
|
||||
|
||||
**コスト例 (1000万トークン):**
|
||||
- 入力: 1000万 × $0.20 = $2
|
||||
- 出力: 1000万 × $1.00 = $10
|
||||
- **合計: $2〜10** - 最安オプション!
|
||||
|
||||
### セットアップ
|
||||
|
||||
**ステップ1: サインアップ**
|
||||
|
||||
1. [MiniMax](https://www.minimax.io/) を訪問
|
||||
2. アカウント作成
|
||||
3. メール/電話を認証
|
||||
|
||||
**ステップ2: APIキーを取得**
|
||||
|
||||
```bash
|
||||
Dashboard → API Management → Create Key
|
||||
→ APIキーをコピー
|
||||
```
|
||||
|
||||
**ステップ3: 9Routerに追加**
|
||||
|
||||
```bash
|
||||
9router
|
||||
# Dashboard → Providers → Add API Key
|
||||
|
||||
Provider: minimax
|
||||
API Key: your-minimax-api-key
|
||||
```
|
||||
|
||||
**ステップ4: CLIで使用**
|
||||
|
||||
```
|
||||
Model: minimax/MiniMax-M2.1
|
||||
```
|
||||
|
||||
### 利用可能なモデル
|
||||
|
||||
| モデルID | 説明 | コンテキスト | 最適用途 |
|
||||
|----------|-------------|---------|----------|
|
||||
| `minimax/MiniMax-M2.1` | MiniMax M2.1 | 1Mトークン | 長いコンテキスト、コーディング |
|
||||
|
||||
### プロのヒント
|
||||
|
||||
- **最安オプション** - 入力100万あたり$0.20 (ChatGPTより90%安い)
|
||||
- **5時間ローリング** - 5時間ごとにクォータリセット
|
||||
- **1Mコンテキスト** - 巨大なコンテキストウィンドウ
|
||||
- **長いファイルに最適** - コードベース全体を処理
|
||||
|
||||
### クォータリセット
|
||||
|
||||
```
|
||||
5時間ローリングウィンドウ:
|
||||
→ クォータ使用 → 5時間待つ → 新鮮なクォータ
|
||||
|
||||
例:
|
||||
午前10時 - 500万トークン使用
|
||||
午後3時 - 新鮮なクォータ利用可
|
||||
午後8時 - 新鮮なクォータ利用可
|
||||
|
||||
最小コストで24時間コーディング!
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Kimi K2 (月$9固定)
|
||||
|
||||
### 料金
|
||||
|
||||
| プラン | 月額コスト | 含まれるトークン | 実効コスト |
|
||||
|------|--------------|-----------------|----------------|
|
||||
| Subscription | $9 | 1000万トークン | 100万あたり$0.90 |
|
||||
|
||||
**コスト例:**
|
||||
- 月$9固定
|
||||
- 1000万トークン含む
|
||||
- **実効: 100万あたり$0.90** - 一貫した使用に最適の価値!
|
||||
|
||||
### セットアップ
|
||||
|
||||
**ステップ1: 購読**
|
||||
|
||||
1. [Moonshot AI](https://platform.moonshot.ai/) を訪問
|
||||
2. アカウント作成
|
||||
3. 月$9プランに購読
|
||||
|
||||
**ステップ2: APIキーを取得**
|
||||
|
||||
```bash
|
||||
Dashboard → API Keys → Create New
|
||||
→ APIキーをコピー
|
||||
```
|
||||
|
||||
**ステップ3: 9Routerに追加**
|
||||
|
||||
```bash
|
||||
9router
|
||||
# Dashboard → Providers → Add API Key
|
||||
|
||||
Provider: kimi
|
||||
API Key: your-kimi-api-key
|
||||
```
|
||||
|
||||
**ステップ4: CLIで使用**
|
||||
|
||||
```
|
||||
Model: kimi/kimi-latest
|
||||
```
|
||||
|
||||
### 利用可能なモデル
|
||||
|
||||
| モデルID | 説明 | コンテキスト | 最適用途 |
|
||||
|----------|-------------|---------|----------|
|
||||
| `kimi/kimi-latest` | Kimi Latest | 200K | 汎用コーディング |
|
||||
|
||||
### プロのヒント
|
||||
|
||||
- **固定コスト** - 使用量に関わらず月$9 (1000万まで)
|
||||
- **一貫した使用に最適** - 月1000万使用なら100万あたりわずか$0.90
|
||||
- **月次リセット** - 1000万トークンが月次リセット
|
||||
- **予測可能な請求** - 予期しないコストなし
|
||||
|
||||
### クォータリセット
|
||||
|
||||
```
|
||||
月次リセット: 各月1日
|
||||
→ 1000万トークンが更新
|
||||
|
||||
月次使用例:
|
||||
週1: 300万トークン
|
||||
週2: 200万トークン
|
||||
週3: 300万トークン
|
||||
週4: 200万トークン
|
||||
合計: 1000万トークン = $9固定
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 料金比較
|
||||
|
||||
| プロバイダー | 入力/1M | 出力/1M | リセット | 1000万コスト | 最適用途 |
|
||||
|----------|----------|-----------|-------|----------|----------|
|
||||
| **GLM-4.7** | $0.60 | $2.20 | 毎日午前10時 | $6〜22 | 日次クォータユーザー |
|
||||
| **MiniMax M2.1** | $0.20 | $1.00 | 5時間 | $2〜10 | **最安!** |
|
||||
| **Kimi K2** | $0.90 | $0.90 | 月次 | **$9固定** | 一貫した使用 |
|
||||
| ChatGPT API | $20.00 | $20.00 | なし | $200 | ❌ 高価 |
|
||||
|
||||
**節約:** ChatGPT APIより90〜95%安い!
|
||||
|
||||
---
|
||||
|
||||
## 使用例
|
||||
|
||||
### Cursor IDEセットアップ
|
||||
|
||||
```
|
||||
Settings → Models → Advanced:
|
||||
OpenAI API Base URL: http://localhost:20128/v1
|
||||
OpenAI API Key: [9routerダッシュボードから取得]
|
||||
Model: glm/glm-4.7
|
||||
```
|
||||
|
||||
### コンボを作成 (推奨)
|
||||
|
||||
```
|
||||
Dashboard → Combos → Create New
|
||||
|
||||
Name: cheap-backup
|
||||
Models:
|
||||
1. cc/claude-opus-4-5 (サブスクリプション優先)
|
||||
2. glm/glm-4.7 (低価格バックアップ、日次リセット)
|
||||
3. minimax/MiniMax-M2.1 (最安フォールバック)
|
||||
4. if/kimi-k2-thinking (無料緊急時)
|
||||
|
||||
CLIで使用: cheap-backup
|
||||
```
|
||||
|
||||
**結果:** サブスクリプション → 低価格 → 最安 → 無料
|
||||
|
||||
---
|
||||
|
||||
## コスト最適化
|
||||
|
||||
### 戦略1: 日次リセットルーチン
|
||||
|
||||
```
|
||||
朝 (午前10時): 新鮮なGLMクォータ
|
||||
→ 重いタスクにGLMを使用
|
||||
→ サブスクリプションクォータを節約
|
||||
|
||||
午後: サブスクリプションクォータ
|
||||
→ 複雑なタスクにClaude/Codexを使用
|
||||
|
||||
夕方: MiniMax (5時間リセット)
|
||||
→ 遅い作業の低価格フォールバック
|
||||
|
||||
夜: 無料階層 (iFlow)
|
||||
→ ゼロコスト緊急バックアップ
|
||||
```
|
||||
|
||||
### 戦略2: 予算優先
|
||||
|
||||
```
|
||||
月次予算設定: $20
|
||||
|
||||
割り当て:
|
||||
- $9 Kimi K2 (1000万トークン固定)
|
||||
- $6 GLM日次クォータ (1000万トークン)
|
||||
- $5 MiniMaxオーバーフロー (2500万トークン)
|
||||
|
||||
合計: $20で4500万トークン
|
||||
vs ChatGPT APIでは$20で100万トークン!
|
||||
```
|
||||
|
||||
### 戦略3: サブスクリプションを最初に最大化
|
||||
|
||||
```
|
||||
優先順位:
|
||||
1. Gemini CLI (月18万無料)
|
||||
2. Claude Code (すでに支払っているサブスクリプション)
|
||||
3. GLM-4.7 (低価格バックアップ、100万あたり$0.6)
|
||||
4. MiniMax M2.1 (最安、100万あたり$0.2)
|
||||
5. iFlow (無料緊急時)
|
||||
|
||||
月次コスト例 (1億トークン):
|
||||
- Gemini CLI経由で6000万: $0 (無料)
|
||||
- Claude Code経由で3000万: $0 (サブスクリプション)
|
||||
- GLM経由で800万: $4.80
|
||||
- MiniMax経由で200万: $0.40
|
||||
合計: 月$5.20!
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 実例
|
||||
|
||||
### 例1: 重いコーディング月 (1億トークン)
|
||||
|
||||
```
|
||||
内訳:
|
||||
- サブスクリプション (Claude/Codex) 経由で6000万: $0追加
|
||||
- GLM-4.7経由で3000万: $18
|
||||
- MiniMax M2.1経由で1000万: $2
|
||||
|
||||
合計: 月$20
|
||||
vs ChatGPT APIの$2000!
|
||||
|
||||
節約: 99%安い!
|
||||
```
|
||||
|
||||
### 例2: バジェットコーダー ($10/月)
|
||||
|
||||
```
|
||||
戦略:
|
||||
- $9 Kimi K2 (1000万トークン)
|
||||
- $1 MiniMaxオーバーフロー (500万トークン)
|
||||
|
||||
合計: $10で1500万トークン
|
||||
vs ChatGPT APIでは$10で50万トークン!
|
||||
|
||||
30倍多くのトークン!
|
||||
```
|
||||
|
||||
### 例3: フリーランサー (変動使用量)
|
||||
|
||||
```
|
||||
軽い月 (2000万トークン):
|
||||
- サブスクリプション経由で1500万: $0
|
||||
- GLM経由で500万: $3
|
||||
合計: $3
|
||||
|
||||
重い月 (1.5億トークン):
|
||||
- サブスクリプション経由で6000万: $0
|
||||
- GLM経由で6000万: $36
|
||||
- MiniMax経由で3000万: $6
|
||||
合計: $42
|
||||
|
||||
平均: 月$22.50
|
||||
vs ChatGPT APIの$3400!
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ベストプラクティス
|
||||
|
||||
### 1. 日次クォータを追跡
|
||||
|
||||
```
|
||||
ダッシュボード表示:
|
||||
- GLMクォータ: 75%使用 (6時間後リセット)
|
||||
- MiniMaxクォータ: 50%使用 (2時間後リセット)
|
||||
- Kimiクォータ: 800万/1000万使用 (15日後リセット)
|
||||
|
||||
リセット時間に合わせて重いタスクを計画!
|
||||
```
|
||||
|
||||
### 2. Coding Planを使用 (GLM)
|
||||
|
||||
```
|
||||
Standard: 1×クォータ
|
||||
Coding Plan: 3×クォータ (同じ価格!)
|
||||
|
||||
→ 常にCoding Planを選択
|
||||
```
|
||||
|
||||
### 3. 無料階層と組み合わせる
|
||||
|
||||
```
|
||||
コンボ:
|
||||
1. gc/gemini-3-flash (無料プライマリ)
|
||||
2. glm/glm-4.7 (低価格バックアップ)
|
||||
3. minimax/MiniMax-M2.1 (最安)
|
||||
4. if/kimi-k2-thinking (無料緊急時)
|
||||
|
||||
結果: コストを最小化、アップタイムを最大化
|
||||
```
|
||||
|
||||
### 4. 予算アラートを設定
|
||||
|
||||
```
|
||||
Dashboard → Settings → Budget Alerts
|
||||
|
||||
日次: $2上限
|
||||
週次: $10上限
|
||||
月次: $30上限
|
||||
|
||||
→ 上限到達時に自動的に無料階層へ切替
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### 「クォータ消費」
|
||||
|
||||
**解決策:**
|
||||
- GLM: 北京時間午前10時まで待つ
|
||||
- MiniMax: 最初の使用から5時間待つ
|
||||
- Kimi: 翌月1日まで待つ
|
||||
- 無料階層へのコンボフォールバックを使用
|
||||
|
||||
### 「APIキー無効」
|
||||
|
||||
**解決策:**
|
||||
- APIキーが正しくコピーされたか確認
|
||||
- アカウントにクレジットがあるか確認
|
||||
- 必要に応じてAPIキーを再生成
|
||||
|
||||
### 「高コスト」
|
||||
|
||||
**解決策:**
|
||||
- ダッシュボードで使用統計を確認
|
||||
- 予算アラートを設定
|
||||
- MiniMax (100万あたり$0.2最安) へ切替
|
||||
- クリティカルでないタスクに無料階層を使用
|
||||
|
||||
---
|
||||
|
||||
## 次のステップ
|
||||
|
||||
- **無料フォールバックを追加:** [無料プロバイダー](./free.md)
|
||||
- **サブスクリプションをセットアップ:** [サブスクリプションプロバイダー](./subscription.md)
|
||||
- **コンボを作成:** Dashboard → Combos → Create New
|
||||
442
gitbook/content/ja/providers/free.md
Normal file
442
gitbook/content/ja/providers/free.md
Normal file
@@ -0,0 +1,442 @@
|
||||
# 無料プロバイダー - ゼロコストフォールバック
|
||||
|
||||
他のすべてがクォータ制限に達した時の緊急バックアップ。ゼロコストで24時間コーディング!
|
||||
|
||||
---
|
||||
|
||||
## 概要
|
||||
|
||||
無料階層プロバイダーは、サブスクリプションと低価格クォータが消費された時の**フォールバック**:
|
||||
|
||||
- 🆓 **iFlow** - 8モデル無料 (Kimi K2、Qwen3、GLM 4.7、MiniMax M2...)
|
||||
- 🆓 **Qwen** - 3モデル無料 (Qwen3 Coder Plus/Flash、Vision)
|
||||
- 🆓 **Kiro** - 2モデル無料 (Claude Sonnet 4.5、Haiku 4.5)
|
||||
|
||||
**戦略:** 緊急バックアップとして使用。無制限利用、永久ゼロコスト!
|
||||
|
||||
---
|
||||
|
||||
## iFlow (8つの無料モデル)
|
||||
|
||||
### 料金
|
||||
|
||||
| プラン | 月額コスト | モデル | クォータ |
|
||||
|------|--------------|--------|-------|
|
||||
| FREE | $0 | 8モデル | 無制限 |
|
||||
|
||||
**最高の価値:** 無料階層で最も多くのモデル! Kimi K2、Qwen3、GLM、MiniMax、DeepSeek。
|
||||
|
||||
### セットアップ
|
||||
|
||||
**ステップ1: ダッシュボード経由で接続**
|
||||
|
||||
```bash
|
||||
9router
|
||||
# Dashboard → Providers → Connect iFlow
|
||||
```
|
||||
|
||||
**ステップ2: iFlow OAuthログイン**
|
||||
|
||||
- 「Connect iFlow」をクリック
|
||||
- ブラウザが開く → iFlowログインページ
|
||||
- アカウント作成またはログイン
|
||||
- 権限を付与
|
||||
- 自動トークン更新有効化
|
||||
|
||||
**ステップ3: CLIで使用**
|
||||
|
||||
```
|
||||
Model: if/kimi-k2-thinking
|
||||
if/kimi-k2
|
||||
if/qwen3-coder-plus
|
||||
if/glm-4.7
|
||||
if/minimax-m2
|
||||
if/deepseek-r1
|
||||
if/deepseek-v3.2-chat
|
||||
if/deepseek-v3.2-reasoner
|
||||
```
|
||||
|
||||
### 利用可能なモデル
|
||||
|
||||
| モデルID | 説明 | 最適用途 |
|
||||
|----------|-------------|----------|
|
||||
| `if/kimi-k2-thinking` | Kimi K2 Thinking | 複雑な推論 |
|
||||
| `if/kimi-k2` | Kimi K2 | 汎用コーディング |
|
||||
| `if/qwen3-coder-plus` | Qwen3 Coder Plus | コード生成 |
|
||||
| `if/glm-4.7` | GLM 4.7 | 中国語 + 英語 |
|
||||
| `if/minimax-m2` | MiniMax M2 | 長いコンテキスト |
|
||||
| `if/deepseek-r1` | DeepSeek R1 | 推論タスク |
|
||||
| `if/deepseek-v3.2-chat` | DeepSeek V3.2 Chat | 会話 |
|
||||
| `if/deepseek-v3.2-reasoner` | DeepSeek V3.2 Reasoner | 複雑なロジック |
|
||||
|
||||
### プロのヒント
|
||||
|
||||
- **8モデル無料** - 無料階層で最多種類
|
||||
- **無制限利用** - クォータ制限なし
|
||||
- **Kimi K2 Thinking** - 複雑な推論に最適
|
||||
- **DeepSeek R1** - 強力な推論能力
|
||||
|
||||
---
|
||||
|
||||
## Qwen (3つの無料モデル)
|
||||
|
||||
### 料金
|
||||
|
||||
| プラン | 月額コスト | モデル | クォータ |
|
||||
|------|--------------|--------|-------|
|
||||
| FREE | $0 | 3モデル | 無制限 |
|
||||
|
||||
### セットアップ
|
||||
|
||||
**ステップ1: ダッシュボード経由で接続**
|
||||
|
||||
```bash
|
||||
9router
|
||||
# Dashboard → Providers → Connect Qwen
|
||||
```
|
||||
|
||||
**ステップ2: デバイスコード認可**
|
||||
|
||||
- 「Connect Qwen」をクリック
|
||||
- ダッシュボードがデバイスコードを表示
|
||||
- 認可URLを訪問
|
||||
- デバイスコードを入力
|
||||
- Qwenアカウントにログイン
|
||||
- 自動トークン更新有効化
|
||||
|
||||
**ステップ3: CLIで使用**
|
||||
|
||||
```
|
||||
Model: qw/qwen3-coder-plus
|
||||
qw/qwen3-coder-flash
|
||||
qw/vision-model
|
||||
```
|
||||
|
||||
### 利用可能なモデル
|
||||
|
||||
| モデルID | 説明 | 最適用途 |
|
||||
|----------|-------------|----------|
|
||||
| `qw/qwen3-coder-plus` | Qwen3 Coder Plus | 高度なコーディング |
|
||||
| `qw/qwen3-coder-flash` | Qwen3 Coder Flash | 高速応答 |
|
||||
| `qw/vision-model` | Qwen3 Vision | 画像分析 |
|
||||
|
||||
### プロのヒント
|
||||
|
||||
- **Qwen3 Coder Plus** - 強力なコーディング能力
|
||||
- **Qwen3 Coder Flash** - クイックタスク用に高速
|
||||
- **Visionモデル** - 無料画像分析
|
||||
- **無制限利用** - クォータ制限なし
|
||||
|
||||
---
|
||||
|
||||
## Kiro (Claude無料)
|
||||
|
||||
### 料金
|
||||
|
||||
| プラン | 月額コスト | モデル | クォータ |
|
||||
|------|--------------|--------|-------|
|
||||
| FREE | $0 | Claude Sonnet 4.5、Haiku 4.5 | 無制限 |
|
||||
|
||||
**最高の価値:** 無料Claude! 有料Claude Codeと同じ品質。
|
||||
|
||||
### セットアップ
|
||||
|
||||
**ステップ1: ダッシュボード経由で接続**
|
||||
|
||||
```bash
|
||||
9router
|
||||
# Dashboard → Providers → Connect Kiro
|
||||
```
|
||||
|
||||
**ステップ2: AWS Builder IDまたはOAuth**
|
||||
|
||||
- 「Connect Kiro」をクリック
|
||||
- ログイン方法を選択:
|
||||
- AWS Builder ID (推奨)
|
||||
- Googleアカウント
|
||||
- GitHubアカウント
|
||||
- 権限を付与
|
||||
- 自動トークン更新有効化
|
||||
|
||||
**ステップ3: CLIで使用**
|
||||
|
||||
```
|
||||
Model: kr/claude-sonnet-4.5
|
||||
kr/claude-haiku-4.5
|
||||
```
|
||||
|
||||
### 利用可能なモデル
|
||||
|
||||
| モデルID | 説明 | 最適用途 |
|
||||
|----------|-------------|----------|
|
||||
| `kr/claude-sonnet-4.5` | Claude Sonnet 4.5 | バランスのとれた品質/速度 |
|
||||
| `kr/claude-haiku-4.5` | Claude Haiku 4.5 | 高速応答 |
|
||||
|
||||
### プロのヒント
|
||||
|
||||
- **無料Claude** - 有料階層と同じ品質
|
||||
- **AWS Builder ID** - AWSアカウントで簡単セットアップ
|
||||
- **無制限利用** - クォータ制限なし
|
||||
- **最高品質** - Claude 4.5を無料で!
|
||||
|
||||
---
|
||||
|
||||
## 機能比較
|
||||
|
||||
| プロバイダー | モデル | 最高のモデル | セットアップ | クォータ |
|
||||
|----------|--------|------------|-------|-------|
|
||||
| **iFlow** | 8 | Kimi K2 Thinking | OAuth | 無制限 |
|
||||
| **Qwen** | 3 | Qwen3 Coder Plus | デバイスコード | 無制限 |
|
||||
| **Kiro** | 2 | Claude Sonnet 4.5 | AWS Builder ID | 無制限 |
|
||||
|
||||
**勝者:** 種類はiFlow、品質はKiro!
|
||||
|
||||
---
|
||||
|
||||
## 使用例
|
||||
|
||||
### Cursor IDEセットアップ
|
||||
|
||||
```
|
||||
Settings → Models → Advanced:
|
||||
OpenAI API Base URL: http://localhost:20128/v1
|
||||
OpenAI API Key: [9routerダッシュボードから取得]
|
||||
Model: if/kimi-k2-thinking
|
||||
```
|
||||
|
||||
### コンボを作成 (推奨)
|
||||
|
||||
```
|
||||
Dashboard → Combos → Create New
|
||||
|
||||
Name: free-combo
|
||||
Models:
|
||||
1. if/kimi-k2-thinking (iFlowプライマリ)
|
||||
2. qw/qwen3-coder-plus (Qwenバックアップ)
|
||||
3. kr/claude-sonnet-4.5 (Kiro品質)
|
||||
|
||||
CLIで使用: free-combo
|
||||
```
|
||||
|
||||
**結果:** ゼロコスト、最大アップタイム!
|
||||
|
||||
---
|
||||
|
||||
## 完全なフォールバック戦略
|
||||
|
||||
### 完全な3階層コンボ
|
||||
|
||||
```
|
||||
Dashboard → Combos → Create New
|
||||
|
||||
Name: complete-fallback
|
||||
Models:
|
||||
1. gc/gemini-3-flash-preview (無料サブスクリプション)
|
||||
2. cc/claude-opus-4-5 (有料サブスクリプション)
|
||||
3. glm/glm-4.7 (低価格バックアップ、100万あたり$0.6)
|
||||
4. minimax/MiniMax-M2.1 (最安、100万あたり$0.2)
|
||||
5. if/kimi-k2-thinking (無料フォールバック)
|
||||
6. kr/claude-sonnet-4.5 (無料品質)
|
||||
|
||||
CLIで使用: complete-fallback
|
||||
```
|
||||
|
||||
**結果:**
|
||||
- Tier 1: 無料サブスクリプション (Gemini CLI)
|
||||
- Tier 2: 有料サブスクリプション (Claude Code)
|
||||
- Tier 3: 低価格バックアップ (GLM、MiniMax)
|
||||
- Tier 4: 無料フォールバック (iFlow、Kiro)
|
||||
|
||||
**コーディングが止まらない!**
|
||||
|
||||
---
|
||||
|
||||
## ベストプラクティス
|
||||
|
||||
### 1. 緊急バックアップとして使用
|
||||
|
||||
```
|
||||
優先順位:
|
||||
1. サブスクリプション階層 (有料クォータを最大化)
|
||||
2. 低価格階層 (100万トークンあたりセント)
|
||||
3. 無料階層 (無制限、ゼロコスト)
|
||||
|
||||
以下の時のみ無料階層を使用:
|
||||
- サブスクリプションクォータ消費
|
||||
- 予算上限到達
|
||||
- テスト/クリティカルでないタスク
|
||||
```
|
||||
|
||||
### 2. 適切なモデルを選択
|
||||
|
||||
```
|
||||
複雑な推論: if/kimi-k2-thinking
|
||||
高速コーディング: qw/qwen3-coder-flash
|
||||
最高品質: kr/claude-sonnet-4.5
|
||||
長いコンテキスト: if/minimax-m2
|
||||
Visionタスク: qw/vision-model
|
||||
```
|
||||
|
||||
### 3. 無料のみのコンボを作成
|
||||
|
||||
```
|
||||
ゼロコストコーディング用:
|
||||
|
||||
Name: zero-cost
|
||||
Models:
|
||||
1. kr/claude-sonnet-4.5 (最高品質)
|
||||
2. if/kimi-k2-thinking (複雑なタスク)
|
||||
3. qw/qwen3-coder-plus (高速コーディング)
|
||||
|
||||
コスト: 永久に$0!
|
||||
```
|
||||
|
||||
### 4. 本番前にテスト
|
||||
|
||||
```
|
||||
無料階層を使用して:
|
||||
- プロンプトをテスト
|
||||
- 機能のプロトタイプを作成
|
||||
- 新しいフレームワークを学ぶ
|
||||
- クリティカルでないタスク
|
||||
|
||||
有料クォータを以下に節約:
|
||||
- 本番コード
|
||||
- 複雑なリファクタリング
|
||||
- クリティカルな機能
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 実例
|
||||
|
||||
### 例1: 学生/学習者 (ゼロ予算)
|
||||
|
||||
```
|
||||
セットアップ:
|
||||
1. kr/claude-sonnet-4.5 (最高品質)
|
||||
2. if/kimi-k2-thinking (複雑な推論)
|
||||
3. qw/qwen3-coder-plus (高速コーディング)
|
||||
|
||||
月次コスト: $0
|
||||
利用: 無制限
|
||||
|
||||
最適:
|
||||
- コーディング学習
|
||||
- 個人プロジェクト
|
||||
- 宿題/課題
|
||||
```
|
||||
|
||||
### 例2: フリーランサー (予算意識)
|
||||
|
||||
```
|
||||
セットアップ:
|
||||
1. gc/gemini-3-flash-preview (月18万無料)
|
||||
2. glm/glm-4.7 (低価格バックアップ、100万あたり$0.6)
|
||||
3. if/kimi-k2-thinking (無料フォールバック)
|
||||
|
||||
月次コスト: $5〜10
|
||||
利用: 1億以上のトークン
|
||||
|
||||
最適:
|
||||
- クライアントプロジェクト (有料階層)
|
||||
- テスト (無料階層)
|
||||
- 緊急バックアップ
|
||||
```
|
||||
|
||||
### 例3: ヘビーユーザー (すべてを最大化)
|
||||
|
||||
```
|
||||
セットアップ:
|
||||
1. gc/gemini-3-flash-preview (月18万無料)
|
||||
2. cc/claude-opus-4-5 (サブスクリプション$20〜100)
|
||||
3. cx/gpt-5.2-codex (サブスクリプション$20〜200)
|
||||
4. glm/glm-4.7 (低価格 100万あたり$0.6)
|
||||
5. minimax/MiniMax-M2.1 (最安 100万あたり$0.2)
|
||||
6. if/kimi-k2-thinking (無料無制限)
|
||||
7. kr/claude-sonnet-4.5 (無料品質)
|
||||
|
||||
月次コスト: $40〜320 (サブスクリプション) + $10〜20 (低価格階層)
|
||||
利用: 5億以上のトークン
|
||||
|
||||
最適:
|
||||
- プロフェッショナル開発
|
||||
- チームプロジェクト
|
||||
- 24時間コーディング
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## コスト比較
|
||||
|
||||
### シナリオ: 月1億トークン
|
||||
|
||||
**オプション1: ChatGPT APIのみ**
|
||||
```
|
||||
1億 × $20/1M = 月$2,000
|
||||
```
|
||||
|
||||
**オプション2: 9Router無料階層のみ**
|
||||
```
|
||||
無料階層経由で1億 = 月$0
|
||||
節約: 月$2,000 (100%)
|
||||
```
|
||||
|
||||
**オプション3: 9Router完全戦略**
|
||||
```
|
||||
Gemini CLI経由で6000万 (無料): $0
|
||||
Claude Code経由で3000万 (サブスクリプション): $0追加
|
||||
GLM経由で800万 (低価格): $4.80
|
||||
iFlow経由で200万 (無料): $0
|
||||
合計: 月$4.80 + すでに持っているサブスクリプション
|
||||
節約: 月$1,995 (99.76%)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### "OAuth failed"
|
||||
|
||||
**解決策:**
|
||||
- インターネット接続を確認
|
||||
- 別のブラウザを試す
|
||||
- ブラウザキャッシュをクリア
|
||||
- ダッシュボードで再接続
|
||||
|
||||
### "モデルが利用不可"
|
||||
|
||||
**解決策:**
|
||||
- ダッシュボードでプロバイダーが接続されているか確認
|
||||
- OAuthトークンが有効か確認
|
||||
- 必要に応じてプロバイダーを再接続
|
||||
|
||||
### "応答が遅い"
|
||||
|
||||
**解決策:**
|
||||
- 無料階層は優先度が低い可能性
|
||||
- ピーク外時間に使用
|
||||
- 別の無料プロバイダーへ切替
|
||||
- 速度のため低価格階層へアップグレード
|
||||
|
||||
---
|
||||
|
||||
## 制限事項
|
||||
|
||||
### 無料階層の考慮事項
|
||||
|
||||
- **速度** - 有料階層より遅い可能性
|
||||
- **優先度** - ピーク時間中は優先度が低い
|
||||
- **レート制限** - レート制限の可能性 (ただしクォータは無制限)
|
||||
- **可用性** - 時折ダウンタイムがある可能性
|
||||
|
||||
**解決策:** 信頼性のため3階層フォールバック戦略を使用!
|
||||
|
||||
---
|
||||
|
||||
## 次のステップ
|
||||
|
||||
- **サブスクリプションをセットアップ:** [サブスクリプションプロバイダー](./subscription.md)
|
||||
- **低価格バックアップを追加:** [低価格プロバイダー](./cheap.md)
|
||||
- **コンボを作成:** Dashboard → Combos → Create New
|
||||
- **コーディング開始:** 最大の信頼性のため `complete-fallback` コンボを使用
|
||||
404
gitbook/content/ja/providers/subscription.md
Normal file
404
gitbook/content/ja/providers/subscription.md
Normal file
@@ -0,0 +1,404 @@
|
||||
# サブスクリプションプロバイダー - 価値を最大化
|
||||
|
||||
スマートクォータトラッキングと自動フォールバックで既存のAIサブスクリプションを最大化。リセット前にサブスクリプションを余すことなく使用しましょう!
|
||||
|
||||
---
|
||||
|
||||
## 概要
|
||||
|
||||
サブスクリプション階層プロバイダーは**プライマリ**選択です - すでに支払っているので、完全な価値を引き出しましょう:
|
||||
|
||||
- ✅ **Claude Code** (Pro/Max) - Claude 4.5 Opus/Sonnet/Haiku
|
||||
- ✅ **OpenAI Codex** (Plus/Pro) - GPT 5.2 Codex、GPT 5.1 Codex Max
|
||||
- ✅ **Gemini CLI** (無料階層!) - 月18万コンプリーション
|
||||
- ✅ **GitHub Copilot** - GPT-5、Claude 4.5、Gemini 3
|
||||
- ✅ **Antigravity** (Google) - Gemini 3 Pro、Claude Sonnet 4.5
|
||||
|
||||
**戦略:** これらを最初に使用、クォータをリアルタイムで追跡、消費時に低価格/無料へフォールバック。
|
||||
|
||||
---
|
||||
|
||||
## Claude Code (Pro/Max)
|
||||
|
||||
### 料金
|
||||
|
||||
| プラン | 月額コスト | クォータリセット | モデル |
|
||||
|------|--------------|-------------|--------|
|
||||
| Pro | $20 | 5時間 + 週次 | Opus、Sonnet、Haiku |
|
||||
| Max | $100 | 5時間 + 週次 | Opus、Sonnet、Haiku |
|
||||
|
||||
### セットアップ
|
||||
|
||||
**ステップ1: ダッシュボード経由で接続**
|
||||
|
||||
```bash
|
||||
9router
|
||||
# Dashboard開く → Providers → Connect Claude Code
|
||||
```
|
||||
|
||||
**ステップ2: OAuthログイン**
|
||||
|
||||
- 「Connect Claude Code」をクリック
|
||||
- ブラウザが開く → Claude.aiにログイン
|
||||
- 自動トークン更新有効化
|
||||
- クォータトラッキング開始
|
||||
|
||||
**ステップ3: CLIで使用**
|
||||
|
||||
```
|
||||
Model: cc/claude-opus-4-5-20251101
|
||||
cc/claude-sonnet-4-5-20250929
|
||||
cc/claude-haiku-4-5-20251001
|
||||
```
|
||||
|
||||
### 利用可能なモデル
|
||||
|
||||
| モデルID | 説明 | 最適用途 |
|
||||
|----------|-------------|----------|
|
||||
| `cc/claude-opus-4-5-20251101` | Claude 4.5 Opus | 複雑なタスク、アーキテクチャ |
|
||||
| `cc/claude-sonnet-4-5-20250929` | Claude 4.5 Sonnet | バランスのとれた速度/品質 |
|
||||
| `cc/claude-haiku-4-5-20251001` | Claude 4.5 Haiku | 高速応答 |
|
||||
|
||||
### プロのヒント
|
||||
|
||||
- **複雑なタスクにOpusを使用** - アーキテクチャ決定、リファクタリング
|
||||
- **速度にSonnetを使用** - クイック編集、コード生成
|
||||
- **モデルごとのクォータを追跡** - ダッシュボードがモデルごとの使用量を表示
|
||||
- **5時間リセット** - 5時間ごとの新鮮なクォータ + 週次リセット
|
||||
|
||||
---
|
||||
|
||||
## OpenAI Codex (Plus/Pro)
|
||||
|
||||
### 料金
|
||||
|
||||
| プラン | 月額コスト | クォータリセット | モデル |
|
||||
|------|--------------|-------------|--------|
|
||||
| Plus | $20 | 5時間 + 週次 | GPT 5.2、GPT 5.1 |
|
||||
| Pro | $200 | 5時間 + 週次 | GPT 5.2 Codex、GPT 5.1 Max |
|
||||
|
||||
### セットアップ
|
||||
|
||||
**ステップ1: ダッシュボード経由で接続**
|
||||
|
||||
```bash
|
||||
9router
|
||||
# Dashboard → Providers → Connect Codex
|
||||
```
|
||||
|
||||
**ステップ2: OAuthログイン**
|
||||
|
||||
- 「Connect Codex」をクリック
|
||||
- ブラウザが `http://localhost:1455` を開く
|
||||
- OpenAIアカウントにログイン
|
||||
- 自動トークン更新有効化
|
||||
|
||||
**ステップ3: CLIで使用**
|
||||
|
||||
```
|
||||
Model: cx/gpt-5.2-codex
|
||||
cx/gpt-5.1-codex-max
|
||||
cx/gpt-5.2
|
||||
cx/gpt-5.1-codex
|
||||
```
|
||||
|
||||
### 利用可能なモデル
|
||||
|
||||
| モデルID | 説明 | 最適用途 |
|
||||
|----------|-------------|----------|
|
||||
| `cx/gpt-5.2-codex` | GPT 5.2 Codex | 最新コーディングモデル |
|
||||
| `cx/gpt-5.1-codex-max` | GPT 5.1 Codex Max | 最大コンテキスト |
|
||||
| `cx/gpt-5.2` | GPT 5.2 | 汎用タスク |
|
||||
| `cx/gpt-5.1-codex` | GPT 5.1 Codex | 安定したコーディング |
|
||||
|
||||
### プロのヒント
|
||||
|
||||
- **5時間ローリングクォータ** - 5時間ごとに新鮮なクォータ
|
||||
- **週次リセット** - 週次フルクォータリセット
|
||||
- **Pro階層** - Plusの10倍のクォータ
|
||||
|
||||
---
|
||||
|
||||
## Gemini CLI (月18万無料!)
|
||||
|
||||
### 料金
|
||||
|
||||
| プラン | 月額コスト | クォータ | リセット |
|
||||
|------|--------------|-------|-------|
|
||||
| FREE | $0 | 月18万コンプリーション + 1K/日 | 日次 + 月次 |
|
||||
|
||||
**最高の価値:** 巨大な無料階層! 有料階層の前にこれを使用。
|
||||
|
||||
### セットアップ
|
||||
|
||||
**ステップ1: ダッシュボード経由で接続**
|
||||
|
||||
```bash
|
||||
9router
|
||||
# Dashboard → Providers → Connect Gemini CLI
|
||||
```
|
||||
|
||||
**ステップ2: Google OAuth**
|
||||
|
||||
- 「Connect Gemini CLI」をクリック
|
||||
- ブラウザが開く → Googleアカウントにログイン
|
||||
- 権限を付与
|
||||
- 自動トークン更新有効化
|
||||
|
||||
**ステップ3: CLIで使用**
|
||||
|
||||
```
|
||||
Model: gc/gemini-3-flash-preview
|
||||
gc/gemini-3-pro-preview
|
||||
gc/gemini-2.5-pro
|
||||
gc/gemini-2.5-flash
|
||||
```
|
||||
|
||||
### 利用可能なモデル
|
||||
|
||||
| モデルID | 説明 | 最適用途 |
|
||||
|----------|-------------|----------|
|
||||
| `gc/gemini-3-flash-preview` | Gemini 3 Flash Preview | 高速応答 |
|
||||
| `gc/gemini-3-pro-preview` | Gemini 3 Pro Preview | 複雑なタスク |
|
||||
| `gc/gemini-2.5-pro` | Gemini 2.5 Pro | 安定した本番 |
|
||||
| `gc/gemini-2.5-flash` | Gemini 2.5 Flash | クイックタスク |
|
||||
|
||||
### プロのヒント
|
||||
|
||||
- **月18万コンプリーション** - 巨大な無料階層
|
||||
- **1K/日制限** - 日次クォータは深夜にリセット
|
||||
- **最初に使用** - 無料階層、有料サブスクリプションの前に使用
|
||||
- **クレジットカード不要** - Googleアカウントで完全無料
|
||||
|
||||
---
|
||||
|
||||
## GitHub Copilot
|
||||
|
||||
### 料金
|
||||
|
||||
| プラン | 月額コスト | クォータリセット | モデル |
|
||||
|------|--------------|-------------|--------|
|
||||
| Individual | $10 | 月次 (1日) | GPT-5、Claude 4.5、Gemini 3 |
|
||||
| Business | $19 | 月次 (1日) | GPT-5、Claude 4.5、Gemini 3 |
|
||||
|
||||
### セットアップ
|
||||
|
||||
**ステップ1: ダッシュボード経由で接続**
|
||||
|
||||
```bash
|
||||
9router
|
||||
# Dashboard → Providers → Connect GitHub
|
||||
```
|
||||
|
||||
**ステップ2: GitHub経由のOAuth**
|
||||
|
||||
- 「Connect GitHub」をクリック
|
||||
- ブラウザが開く → GitHubにログイン
|
||||
- GitHub Copilotを認可
|
||||
- 自動トークン更新有効化
|
||||
|
||||
**ステップ3: CLIで使用**
|
||||
|
||||
```
|
||||
Model: gh/gpt-5
|
||||
gh/gpt-5.1-codex-max
|
||||
gh/claude-4.5-sonnet
|
||||
gh/gemini-3-pro
|
||||
```
|
||||
|
||||
### 利用可能なモデル
|
||||
|
||||
| モデルID | 説明 | 最適用途 |
|
||||
|----------|-------------|----------|
|
||||
| `gh/gpt-5` | GPT-5 | 最新OpenAIモデル |
|
||||
| `gh/gpt-5.1-codex-max` | GPT-5.1 Codex Max | 最大コンテキスト |
|
||||
| `gh/claude-4.5-sonnet` | Claude 4.5 Sonnet | Anthropic品質 |
|
||||
| `gh/gemini-3-pro` | Gemini 3 Pro | Google品質 |
|
||||
|
||||
### プロのヒント
|
||||
|
||||
- **月次リセット** - 月1日にフルクォータリセット
|
||||
- **複数モデル** - 一つのサブスクリプションでGPT、Claude、Geminiにアクセス
|
||||
- **Business階層** - チーム用の高クォータ
|
||||
|
||||
---
|
||||
|
||||
## Antigravity (Googleアカウント)
|
||||
|
||||
### 料金
|
||||
|
||||
| プラン | 月額コスト | クォータ | モデル |
|
||||
|------|--------------|-------|--------|
|
||||
| FREE | $0 | Gemini CLIと同様 | Gemini 3 Pro、Claude Sonnet 4.5 |
|
||||
|
||||
### セットアップ
|
||||
|
||||
**ステップ1: ダッシュボード経由で接続**
|
||||
|
||||
```bash
|
||||
9router
|
||||
# Dashboard → Providers → Connect Antigravity
|
||||
```
|
||||
|
||||
**ステップ2: Google OAuth**
|
||||
|
||||
- 「Connect Antigravity」をクリック
|
||||
- ブラウザが開く → Googleアカウントにログイン
|
||||
- 権限を付与
|
||||
- 自動トークン更新有効化
|
||||
|
||||
**ステップ3: CLIで使用**
|
||||
|
||||
```
|
||||
Model: ag/gemini-3-pro-high
|
||||
ag/claude-sonnet-4-5
|
||||
ag/claude-opus-4-5-thinking
|
||||
```
|
||||
|
||||
### 利用可能なモデル
|
||||
|
||||
| モデルID | 説明 | 最適用途 |
|
||||
|----------|-------------|----------|
|
||||
| `ag/gemini-3-pro-high` | Gemini 3 Pro High | 高品質応答 |
|
||||
| `ag/claude-sonnet-4-5` | Claude Sonnet 4.5 | Anthropic品質 |
|
||||
| `ag/claude-opus-4-5-thinking` | Claude Opus 4.5 Thinking | 複雑な推論 |
|
||||
|
||||
### プロのヒント
|
||||
|
||||
- **無料階層** - Googleアカウントでコストなし
|
||||
- **Claudeアクセス** - 無料Claude Sonnet/Opus
|
||||
- **Gemini CLIと同様のクォータ** - 日次/月次制限
|
||||
|
||||
---
|
||||
|
||||
## 料金比較
|
||||
|
||||
| プロバイダー | 月額コスト | クォータリセット | 価値 |
|
||||
|----------|--------------|-------------|-------|
|
||||
| **Claude Code Pro** | $20 | 5時間 + 週次 | ⭐⭐⭐⭐⭐ 最高品質 |
|
||||
| **Claude Code Max** | $100 | 5時間 + 週次 | ⭐⭐⭐⭐⭐ 最高クォータ |
|
||||
| **Codex Plus** | $20 | 5時間 + 週次 | ⭐⭐⭐⭐ 良い価値 |
|
||||
| **Codex Pro** | $200 | 5時間 + 週次 | ⭐⭐⭐⭐⭐ 10×クォータ |
|
||||
| **Gemini CLI** | **$0** | 日次 + 月次 | ⭐⭐⭐⭐⭐ 月18万無料! |
|
||||
| **GitHub Copilot** | $10〜19 | 月次 (1日) | ⭐⭐⭐⭐ マルチモデル |
|
||||
| **Antigravity** | **$0** | 日次 + 月次 | ⭐⭐⭐⭐ 無料Claude! |
|
||||
|
||||
---
|
||||
|
||||
## 使用例
|
||||
|
||||
### Cursor IDEセットアップ
|
||||
|
||||
```
|
||||
Settings → Models → Advanced:
|
||||
OpenAI API Base URL: http://localhost:20128/v1
|
||||
OpenAI API Key: [9routerダッシュボードから取得]
|
||||
Model: cc/claude-opus-4-5-20251101
|
||||
```
|
||||
|
||||
### コンボを作成 (推奨)
|
||||
|
||||
```
|
||||
Dashboard → Combos → Create New
|
||||
|
||||
Name: premium-coding
|
||||
Models:
|
||||
1. gc/gemini-3-flash-preview (無料、最初に使用)
|
||||
2. cc/claude-opus-4-5-20251101 (サブスクリプション)
|
||||
3. cx/gpt-5.2-codex (サブスクリプションバックアップ)
|
||||
|
||||
CLIで使用: premium-coding
|
||||
```
|
||||
|
||||
**結果:** 無料階層を最大化 → サブスクリプションを使用 → 自動フォールバック
|
||||
|
||||
---
|
||||
|
||||
## クォータトラッキング
|
||||
|
||||
9Routerはクォータをリアルタイムで追跡:
|
||||
|
||||
- **トークン消費** - リクエストごとの入出力トークン
|
||||
- **リセットカウントダウン** - 次のクォータリセットまでの時間
|
||||
- **使用量パーセンテージ** - クォータの使用量
|
||||
- **自動フォールバック** - 消費時に次の階層へ切替
|
||||
|
||||
**ダッシュボード表示:**
|
||||
|
||||
```
|
||||
Claude Code Pro
|
||||
├─ Quota: 75% used
|
||||
├─ Reset: 2h 15m (5-hour)
|
||||
├─ Weekly reset: 3 days
|
||||
└─ Fallback: glm/glm-4.7 (cheap tier)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ベストプラクティス
|
||||
|
||||
### 1. 無料階層を最初に使用
|
||||
|
||||
```
|
||||
優先順位:
|
||||
1. Gemini CLI (月18万無料)
|
||||
2. Antigravity (無料Claude)
|
||||
3. Claude Code/Codex (有料サブスクリプション)
|
||||
```
|
||||
|
||||
### 2. クォータを毎日追跡
|
||||
|
||||
- 毎朝ダッシュボードを確認
|
||||
- クォータリセットに合わせて重いタスクを計画
|
||||
- クリティカルでないタスクには低価格/無料階層を使用
|
||||
|
||||
### 3. スマートコンボを作成
|
||||
|
||||
```
|
||||
コンボ例:
|
||||
1. gc/gemini-3-flash-preview (無料プライマリ)
|
||||
2. cc/claude-opus-4-5 (複雑なタスク)
|
||||
3. glm/glm-4.7 (低価格バックアップ)
|
||||
4. if/kimi-k2-thinking (無料フォールバック)
|
||||
```
|
||||
|
||||
### 4. 時間別に最適化
|
||||
|
||||
```
|
||||
朝: 新鮮な5時間クォータ (Claude/Codex)
|
||||
午後: Gemini CLI (1K/日)
|
||||
夕方: サブスクリプションクォータ
|
||||
夜: 低価格/無料階層
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
### 「クォータ消費」
|
||||
|
||||
**解決策:**
|
||||
- ダッシュボードクォータトラッカーを確認
|
||||
- リセットを待つ (5時間または日次)
|
||||
- 低価格/無料階層へのコンボフォールバックを使用
|
||||
|
||||
### 「OAuthトークン期限切れ」
|
||||
|
||||
**解決策:**
|
||||
- 9Routerにより自動更新
|
||||
- 問題がある場合: Dashboard → Provider → Reconnect
|
||||
|
||||
### 「レート制限」
|
||||
|
||||
**解決策:**
|
||||
- サブスクリプションクォータ切れ
|
||||
- フォールバックを追加: `cc/claude-opus → glm/glm-4.7`
|
||||
- 無料階層を使用: `if/kimi-k2-thinking`
|
||||
|
||||
---
|
||||
|
||||
## 次のステップ
|
||||
|
||||
- **低価格バックアップをセットアップ:** [低価格プロバイダー](./cheap.md)
|
||||
- **無料フォールバックを追加:** [無料プロバイダー](./free.md)
|
||||
- **コンボを作成:** Dashboard → Combos → Create New
|
||||
351
gitbook/content/ja/troubleshooting.md
Normal file
351
gitbook/content/ja/troubleshooting.md
Normal file
@@ -0,0 +1,351 @@
|
||||
# トラブルシューティング
|
||||
|
||||
9Router利用時の一般的な問題と解決策。
|
||||
|
||||
---
|
||||
|
||||
## "Language model did not provide messages"
|
||||
|
||||
**問題:** リクエストが空のレスポンスまたはエラーメッセージで失敗。
|
||||
|
||||
**原因:**
|
||||
- プロバイダーのクォータが消費された
|
||||
- APIキーが無効または期限切れ
|
||||
- モデルが利用不可
|
||||
|
||||
**解決策:**
|
||||
|
||||
1. **クォータ状況を確認:**
|
||||
```
|
||||
Dashboard → Providers → クォータトラッカーを表示
|
||||
```
|
||||
クォータが消費されている場合、リセットを待つかプロバイダーを切替。
|
||||
|
||||
2. **コンボフォールバックを使用:**
|
||||
```
|
||||
Dashboard → Combos → フォールバックチェーンを作成
|
||||
例: cc/claude-opus → glm/glm-4.7 → if/kimi-k2
|
||||
```
|
||||
|
||||
3. **プロバイダー接続を確認:**
|
||||
```
|
||||
Dashboard → Providers → 必要に応じて再接続
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## レート制限
|
||||
|
||||
**問題:** 「Rate limit exceeded」または「Too many requests」エラー。
|
||||
|
||||
**原因:**
|
||||
- サブスクリプションのクォータが枯渇(5時間/日次/週次の制限)
|
||||
- APIレート制限に達した
|
||||
- 同時リクエストが多すぎる
|
||||
|
||||
**解決策:**
|
||||
|
||||
1. **リセット時間を確認:**
|
||||
```
|
||||
Dashboard → Quota Tracking → リセットカウントダウンを表示
|
||||
```
|
||||
|
||||
2. **低価格階層へ切替:**
|
||||
```
|
||||
使用: glm/glm-4.7 (100万トークンあたり$0.6)
|
||||
minimax/MiniMax-M2.1 (100万トークンあたり$0.20)
|
||||
```
|
||||
|
||||
3. **フォールバックコンボを追加:**
|
||||
```
|
||||
Dashboard → Combos → バックアップモデルを追加
|
||||
優先: cc/claude-opus (サブスクリプション)
|
||||
バックアップ: glm/glm-4.7 (低価格)
|
||||
緊急時: if/kimi-k2 (無料)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## OAuthトークン期限切れ
|
||||
|
||||
**問題:** 「Unauthorized」または「Token expired」エラー。
|
||||
|
||||
**原因:**
|
||||
- OAuthトークンが期限切れ(自動更新失敗)
|
||||
- プロバイダーセッションが無効化された
|
||||
- 更新中のネットワーク問題
|
||||
|
||||
**解決策:**
|
||||
|
||||
1. **自動更新(デフォルト):**
|
||||
9Routerは自動的にトークンを更新します。30秒待ってから再試行。
|
||||
|
||||
2. **手動で再接続:**
|
||||
```
|
||||
Dashboard → Providers → [プロバイダー名] → Reconnect
|
||||
→ OAuthフローを再度完了
|
||||
```
|
||||
|
||||
3. **プロバイダーステータスを確認:**
|
||||
プロバイダーサービスがオンラインであることを確認(Claude Code、Codexなど)
|
||||
|
||||
---
|
||||
|
||||
## 高コスト
|
||||
|
||||
**問題:** 予期しない高使用量またはコスト。
|
||||
|
||||
**原因:**
|
||||
- 不必要に高価なモデルを使用
|
||||
- 低価格階層へのフォールバックがない
|
||||
- 大きなコンテキストウィンドウ
|
||||
|
||||
**解決策:**
|
||||
|
||||
1. **使用統計を確認:**
|
||||
```
|
||||
Dashboard → Usage Stats → トークン消費量を表示
|
||||
→ 高コストモデルを特定
|
||||
```
|
||||
|
||||
2. **より安いモデルへ切替:**
|
||||
```
|
||||
置換: cc/claude-opus (月$20〜100サブスクリプション)
|
||||
へ: glm/glm-4.7 (100万トークンあたり$0.6)
|
||||
minimax/MiniMax-M2.1 (100万トークンあたり$0.20)
|
||||
```
|
||||
|
||||
3. **無料階層を使用:**
|
||||
```
|
||||
if/kimi-k2-thinking (無料)
|
||||
qw/qwen3-coder-plus (無料)
|
||||
kr/claude-sonnet-4.5 (無料)
|
||||
gc/gemini-3-flash-preview (月18万無料)
|
||||
```
|
||||
|
||||
4. **プロンプトを最適化:**
|
||||
- コンテキストサイズを削減
|
||||
- 長い応答にストリーミングを使用
|
||||
- 一般的なプロンプトをキャッシュ
|
||||
|
||||
---
|
||||
|
||||
## Connection Refused
|
||||
|
||||
**問題:** 「ECONNREFUSED」または「Cannot connect to localhost:20128」。
|
||||
|
||||
**原因:**
|
||||
- 9Routerが起動していない
|
||||
- ポート20128がブロックされている
|
||||
- ファイアウォールが接続をブロック
|
||||
|
||||
**解決策:**
|
||||
|
||||
1. **9Routerを起動:**
|
||||
```bash
|
||||
9router
|
||||
```
|
||||
ダッシュボードがhttp://localhost:3000で開くはず
|
||||
|
||||
2. **ポート20128を確認:**
|
||||
```bash
|
||||
# ポートがリッスンしているか確認
|
||||
lsof -i :20128
|
||||
|
||||
# またはWindowsで
|
||||
netstat -ano | findstr :20128
|
||||
```
|
||||
|
||||
3. **ファイアウォールを確認:**
|
||||
- macOS: システム設定 → ネットワーク → ファイアウォール
|
||||
- Windows: Windows Defenderファイアウォール → アプリを許可
|
||||
- Linux: `sudo ufw allow 20128`
|
||||
|
||||
4. **クラウドエンドポイントを使用:**
|
||||
localhostが動作しない場合(例: Cursor IDE):
|
||||
```
|
||||
Endpoint: https://9router.com/v1
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ダッシュボードが開かない
|
||||
|
||||
**問題:** ダッシュボードがhttp://localhost:3000で読み込まれない。
|
||||
|
||||
**原因:**
|
||||
- ポート3000がすでに使用中
|
||||
- 9Routerがクラッシュした
|
||||
- ブラウザキャッシュの問題
|
||||
|
||||
**解決策:**
|
||||
|
||||
1. **9Routerが実行中か確認:**
|
||||
```bash
|
||||
# プロセスを確認
|
||||
ps aux | grep 9router
|
||||
|
||||
# ポート3000を確認
|
||||
lsof -i :3000
|
||||
```
|
||||
|
||||
2. **競合するプロセスを終了:**
|
||||
```bash
|
||||
# macOS/Linux
|
||||
lsof -ti:3000 | xargs kill -9
|
||||
|
||||
# Windows
|
||||
netstat -ano | findstr :3000
|
||||
taskkill /PID <PID> /F
|
||||
```
|
||||
|
||||
3. **9Routerを再起動:**
|
||||
```bash
|
||||
# 停止
|
||||
pkill -f 9router
|
||||
|
||||
# 起動
|
||||
9router
|
||||
```
|
||||
|
||||
4. **ブラウザキャッシュをクリア:**
|
||||
- Chrome: Ctrl+Shift+Delete → キャッシュをクリア
|
||||
- シークレットモードを試す
|
||||
|
||||
5. **ファイアウォール設定を確認:**
|
||||
ポート3000がブロックされていないことを確認。
|
||||
|
||||
---
|
||||
|
||||
## モデルが見つからない
|
||||
|
||||
**問題:** 「Model not found」または「Invalid model」エラー。
|
||||
|
||||
**原因:**
|
||||
- プロバイダーが接続されていない
|
||||
- モデルIDのタイポ
|
||||
- プロバイダーが非アクティブ
|
||||
|
||||
**解決策:**
|
||||
|
||||
1. **プロバイダー接続を確認:**
|
||||
```
|
||||
Dashboard → Providers → ステータスを確認(緑 = アクティブ)
|
||||
```
|
||||
|
||||
2. **モデルID形式を確認:**
|
||||
```
|
||||
正しい: cc/claude-opus-4-5-20251101
|
||||
誤り: claude-opus-4-5-20251101
|
||||
|
||||
形式: [provider-prefix]/[model-name]
|
||||
```
|
||||
|
||||
3. **利用可能なモデルを一覧表示:**
|
||||
```bash
|
||||
curl http://localhost:20128/v1/models \
|
||||
-H "Authorization: Bearer your-api-key"
|
||||
```
|
||||
|
||||
4. **プロバイダーを再接続:**
|
||||
```
|
||||
Dashboard → Providers → [Provider] → Reconnect
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 応答が遅い
|
||||
|
||||
**問題:** リクエストに時間がかかりすぎる、またはタイムアウト。
|
||||
|
||||
**原因:**
|
||||
- プロバイダーのレイテンシ
|
||||
- ネットワーク問題
|
||||
- 大きなコンテキスト/応答
|
||||
- プロバイダーのレート制限
|
||||
|
||||
**解決策:**
|
||||
|
||||
1. **プロバイダーステータスを確認:**
|
||||
```
|
||||
Dashboard → Providers → レイテンシ統計を表示
|
||||
```
|
||||
|
||||
2. **高速モデルへ切替:**
|
||||
```
|
||||
高速: cc/claude-haiku-4-5 (HaikuはOpusより高速)
|
||||
gc/gemini-3-flash-preview
|
||||
qw/qwen3-coder-flash
|
||||
```
|
||||
|
||||
3. **ストリーミングを使用:**
|
||||
```json
|
||||
{
|
||||
"model": "cc/claude-opus-4-5",
|
||||
"messages": [...],
|
||||
"stream": true
|
||||
}
|
||||
```
|
||||
|
||||
4. **ネットワークを確認:**
|
||||
```bash
|
||||
# レイテンシをテスト
|
||||
ping api.anthropic.com
|
||||
ping api.openai.com
|
||||
```
|
||||
|
||||
5. **コンテキストサイズを削減:**
|
||||
- メッセージ履歴をトリミング
|
||||
- 短いプロンプトを使用
|
||||
- CLIツールでコンテキストの剪定を有効化
|
||||
|
||||
---
|
||||
|
||||
## APIキー無効
|
||||
|
||||
**問題:** 「Invalid API key」または「Authentication failed」エラー。
|
||||
|
||||
**原因:**
|
||||
- 間違ったAPIキーをコピー
|
||||
- APIキーが期限切れ
|
||||
- APIキーが生成されていない
|
||||
|
||||
**解決策:**
|
||||
|
||||
1. **APIキーを再生成:**
|
||||
```
|
||||
Dashboard → Settings → API Keys → Generate New Key
|
||||
→ 新しいキーをコピーして使用
|
||||
```
|
||||
|
||||
2. **キー形式を確認:**
|
||||
```
|
||||
正しい: 9r_xxxxxxxxxxxxxxxxxxxxxxxx
|
||||
誤り: 9r_プレフィックスがない
|
||||
```
|
||||
|
||||
3. **CLI設定でキーを確認:**
|
||||
```bash
|
||||
# Cursor
|
||||
Settings → Models → OpenAI API Key
|
||||
|
||||
# Cline
|
||||
Settings → API Key
|
||||
|
||||
# 環境変数
|
||||
export OPENAI_API_KEY="9r_your_key"
|
||||
```
|
||||
|
||||
4. **APIキーをテスト:**
|
||||
```bash
|
||||
curl http://localhost:20128/v1/models \
|
||||
-H "Authorization: Bearer 9r_your_key"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## さらにヘルプが必要?
|
||||
|
||||
- **GitHub Issues:** [github.com/decolua/9router/issues](https://github.com/decolua/9router/issues)
|
||||
- **ドキュメント:** [9router.com/docs](https://9router.com/docs)
|
||||
- **FAQ:** [faq.md](faq.md)
|
||||
Reference in New Issue
Block a user