# マルチベンダーの混在スタック：Opus が計画し、Qwen / DeepSeek が実行

> AI ゲートウェイがエージェントの役割ごとにマルチベンダーモデルを混在：計画は Claude Opus、定常実行は Qwen3.8-Max / DeepSeek V4.1 Flash。ID スコープのモデルマッピング + クロスプロトコル翻訳で、クライアントの変更はゼロ。

正規 URL: https://www.gatellm.io/ja/use-cases/mixed-model-stack/

エージェントの役割ごとに異なるベンダーのトップモデルを固定します。計画は Anthropic の Opus のまま、実行は Qwen3.8-Max / DeepSeek V4.1 Flash へ。クライアントの変更はゼロで、クロスプロトコル翻訳は自動です。

## コミュニティが実際に不満を言っていること
Claude Code を Claude Opus でエンドツーエンドに動かすと高すぎます。一律に Sonnet へ落とすと計画やアーキテクチャ判断が目に見えて劣化し、手戻りのコストが増えます。開発者は他ベンダーのトップモデル（Qwen、DeepSeek）を混ぜたいのですが、クライアントは Anthropic プロトコルと claude-* のモデル名しか話せず、設定変更は全開発マシンに及ぶことになります。
さらに、計画ループ、メインの実行ループ、バッチのサブタスクでは、能力と価格に対する要件が本当に異なります。クライアント側の単一のモデル切り替えでは対応できません。

## GateLLM の実現方法
GateLLM はイングレスゲートの後、ルーティングの前に、ID に基づいてモデル名を書き換えます。クライアントの変更はゼロです。計画とアーキテクチャ判断は claude-opus-5 のまま Anthropic へ直接向かい、メインの実行ループの claude-sonnet-* は DashScope の qwen3.8-max にマッピングされ、バッチのサブタスク（整形、コミットメッセージ、検索要約）は OpenAI 互換アップストリーム経由で deepseek-flash にマッピングされます。クロスプロトコル翻訳はゲートウェイが処理し、SSE ストリームと tool_call_id は往復で保持されます。
ルールはアクセスキーまたはキーグループに紐付き、チーム単位で有効になります。エグレスゲートは、対象がその ID の許可リストにあることを検証します。マッピングの設定は権限の付与ではありません。

## 実際に効果が出る 5 つのレバー
- ID スコープのモデルマッピング：アクセスキー / キーグループに from → to を設定し、イングレス後・ルーティング前に書き換え。中間セグメントを捕捉する単一の * に対応し、ホットリロードされます
- クロスプロトコル翻訳：Claude Code は Anthropic、Codex / OpenAI SDK は OpenAI で、ゲートウェイが DashScope / OpenAI / Gemini / Bedrock のアップストリームへ翻訳します。長時間の推論では :keep-alive、ストリーム断では _gateway_warning を付与
- リクエストヘッダーによる条件付きルーティング：同じ from を X-Tenant などで異なる対象へ（完全一致 / 前方一致 / 正規表現 / 存在 / 不在）。条件付きルールを先に、無条件をフォールバックにし、最初の一致を採用。カナリアにも使えます
- プランモード検出：Claude Code のプランモードは Plan mode is active / Exited Plan Mode のマーカーを挿入します。最後の位置を比較するスクリプトがルーティングを切り替え、計画は Opus、実行はコスト効率の良いモデルへ
- 権限と可観測性：エグレスゲートが対象の許可リストを検証し（マッピング ≠ 権限）、ログのモデル列に MM タグとホバー時の元 → マッピング後を表示。統計と課金はマッピング後の実際のモデル名で配賦するため、混在スタックのコストを一目で比較できます

## FAQ
### クライアントの設定を変える必要がありますか？
ANTHROPIC_BASE_URL をゲートウェイに向け、ANTHROPIC_API_KEY をゲートウェイのアクセスキーに差し替えるだけです。モデル名の書き換えはゲートウェイ側で行うため、マシンごとの設定変更は不要です。なお /v1/models はマッピング元の名前を反映しないためドロップダウンには表示されませんが、クライアントはその名前を直接要求できます。これは想定どおりの動作です。

### 混在スタックが実際に安いことをどう証明しますか？
課金と統計はマッピング後の対象モデル名を記録し、モデル / キー / テナント別に請求できます。まずリクエストヘッダーの条件で一部のリクエストを移し、同じ期間でコストと手戻り率を比較してから割合を広げてください。エグレスゲートが対象を許可リストに保つため、カナリアは安全です。

- [詳細手順：ID スコープのモデルマッピング設定（docs）](https://docs.gatellm.io/en/howto/configure-identity-model-mapping)

## 関連するユースケース
- [1 つのプロトコルは混在モデル構成の残りにも届く](https://www.gatellm.io/ja/use-cases/one-protocol-any-model.md)

## 関連ページ
- [ホーム](https://www.gatellm.io/ja/index.md)
- [料金](https://www.gatellm.io/ja/pricing.md)
- [コスト計算ツール](https://www.gatellm.io/ja/calculator.md)
- [会社概要](https://www.gatellm.io/ja/about.md)
- [デモを予約](https://www.gatellm.io/ja/demo.md)
- [FAQ](https://www.gatellm.io/ja/faq.md)
- [AI ゲートウェイ比較](https://www.gatellm.io/ja/compare.md)
- [LiteLLM 比較](https://www.gatellm.io/ja/compare/litellm.md)
- [OpenRouter 比較](https://www.gatellm.io/ja/compare/openrouter.md)
- [Alibaba Cloud AI Gateway 比較](https://www.gatellm.io/ja/compare/alibaba-cloud.md)
- [Azure API Management 比較](https://www.gatellm.io/ja/compare/azure-apim.md)
- [Apigee 比較](https://www.gatellm.io/ja/compare/apigee.md)
- [Cloudflare AI Gateway 比較](https://www.gatellm.io/ja/compare/cloudflare.md)
- [Kong AI Gateway 比較](https://www.gatellm.io/ja/compare/kong.md)
- [Portkey 比較](https://www.gatellm.io/ja/compare/portkey.md)
- [LiteLLM vs Kong AI Gateway](https://www.gatellm.io/ja/compare/litellm-vs-kong.md)
- [LiteLLM vs OpenRouter](https://www.gatellm.io/ja/compare/litellm-vs-openrouter.md)
- [LiteLLM vs Portkey](https://www.gatellm.io/ja/compare/litellm-vs-portkey.md)
- [ユースケース](https://www.gatellm.io/ja/use-cases.md)
- [LLM コスト削減](https://www.gatellm.io/ja/use-cases/reduce-cost.md)
- [高可用性](https://www.gatellm.io/ja/use-cases/high-availability.md)
- [マルチテナント分離](https://www.gatellm.io/ja/use-cases/multi-tenant.md)
- [コンプライアンスと監査](https://www.gatellm.io/ja/use-cases/compliance-audit.md)
- [症状別トラブルシューティング](https://www.gatellm.io/ja/use-cases/troubleshooting.md)
- [Office 内での AI セルフホスト](https://www.gatellm.io/ja/use-cases/self-hosted-office-ai.md)
- [Token 使用量の可視化と帰属](https://www.gatellm.io/ja/use-cases/token-ops.md)
- [Token FinOps：AI コストの配賦と統制](https://www.gatellm.io/ja/use-cases/token-finops.md)
- [MCP ツールガバナンス](https://www.gatellm.io/ja/use-cases/mcp-tool-governance.md)
- [すべてのモデルに Web 検索を追加](https://www.gatellm.io/ja/use-cases/web-search-grounding.md)
- [マルチキーのローテーションと待機系](https://www.gatellm.io/ja/use-cases/multi-key-pooling.md)
- [接続クライアントの受付制御](https://www.gatellm.io/ja/use-cases/client-admission-control.md)
- [モデル利用ポリシーの強制](https://www.gatellm.io/ja/use-cases/enforce-model-policy.md)
- [クライアントにモデル選択を公開しない](https://www.gatellm.io/ja/use-cases/automatic-model-tiering.md)
- [1 つのプロトコルで、あらゆるモデル](https://www.gatellm.io/ja/use-cases/one-protocol-any-model.md)
- [Office / Microsoft 365 アドイン](https://www.gatellm.io/ja/office-addin.md)
- [用語集](https://www.gatellm.io/ja/glossary.md)
- [モデルカタログ](https://www.gatellm.io/ja/models.md)
- [SDK・フレームワーク連携](https://www.gatellm.io/ja/integrations.md)
- [AI コーディングエージェントとハーネス](https://www.gatellm.io/ja/coding-agents.md)
- [セキュリティとコンプライアンス](https://www.gatellm.io/ja/security.md)
