Feat : Gitbook

This commit is contained in:
decolua
2026-05-11 11:50:24 +07:00
parent 7ad538bcf2
commit fd92af77a0
124 changed files with 34154 additions and 4 deletions

View 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キーが設定されていることを確認してください。

View 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使用量をモニター:
- 総リクエスト数
- トークン使用量
- モデルごとのコスト
- プロバイダー分布

View 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"
```

View 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)

View 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. **モデルをテスト**: ユースケースに最適なモデルを見つけるため、異なるモデルを試す

View 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)

View 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)