model-routing
コーディングのサブタスクをオンデバイスのローカルモデル(Ollama)に委譲し、クラウドAPI費用を削減しながら、オーケストレーションモデルは計画とレビューに使用します。以下の場合に活用できます:ユーザーがAPI費用を削減したい、ローカルモデルについて質問している、Ollamaを言及している、またはコード生成にオンデバイスモデルを使用したいと考えている場合です。
description の原文を見る
Delegate coding subtasks to on-device local models (Ollama) to reduce cloud API costs while keeping the orchestrating model for planning and review. Use when: the user wants to save on API costs, asks about local models, mentions Ollama, or wants to use on-device models for code generation.
SKILL.md 本文
モデルルーティング:クラウドオーケストレーション+ローカルコード生成
計画、レビュー、オーケストレーションには高価なクラウドモデル(Opus、Sonnet)を使用します。トークンが多くかかるコード生成は、Ollama経由でオンデバイスモデルにデリゲートします。コーディングが多いセッションでは、コストを10~50倍削減できます。
前提条件
- Ollamaがインストールされ、実行されている(
ollama serve) - コーディング対応モデルがプル済み:
ollama pull qwen3-coder:30b(推奨)またはollama pull glm-4.7-flash - 最小16GB RAM(最良の結果には24GB以上推奨)
動作の仕組み
あなた(開発者)
|
v
クラウドモデル(Sonnet/Opus) — オーケストレーション、計画、レビュー
|
|-- 「Projectsのサービスレイヤーを作成」
| |
| v
| ローカルモデル(Ollama) — コード生成サブエージェント
| |
| 生成されたコードを返す
|
|-- 出力をレビュー、プロジェクト慣例と照合
|-- 必要に応じて修正をリクエスト
|-- 最終結果をコミット
クラウドモデルは「何を」構築するか、「どのように」機能すべきかを決定します。ローカルモデルはトークンが多くかかる「生成」を行います。クラウドモデルが出力をレビューします。
セットアップ
オプション1:Claude Code サブエージェント(推奨)
プロジェクト内でローカルOllamaインスタンスにデリゲートするカスタムサブエージェント定義を作成します。.claude/settings.jsonまたはプロジェクト設定内で:
{
"subagents": {
"local-coder": {
"description": "コード生成タスク用の高速ローカルモデル",
"provider": "ollama",
"model": "qwen3-coder:30b",
"base_url": "http://localhost:11434",
"tools": ["Read", "Write", "Edit", "Glob", "Grep", "Bash"],
"prompt": "あなたはコード生成アシスタントです。下記のプロジェクト慣例に正確に従ってください。リクエストされたコードのみを生成してください — 特に指示がない限り説明は不要です。"
}
}
}
その後、ワークフローでオーケストレーティングモデルがデリゲートできます:
「local-coder サブエージェントを使用して、.skills/scaffold/SKILL.mdのテンプレートに従ってProjectsのサービスファイルを生成してください。」
オプション2:クラウドフォールバック付きOllamaをプライマリとする
Ollamaをデフォルトモデルとして設定し、複雑な推論にのみクラウドモデルを使用します:
# シェルプロファイルまたは .env 内
export ANTHROPIC_BASE_URL=http://localhost:11434
export ANTHROPIC_AUTH_TOKEN=ollama
export CLAUDE_MODEL=qwen3-coder:30b
これにより、すべての生成がローカルになります。計画/レビュータスク用にクラウドに切り替えるには、Claude Codeで/model sonnetを使用します。
オプション3:手動デリゲーション
設定せずに、単にエージェントに指示します:
「次のコード生成タスクでは、ローカルOllamaモデルを使用するサブエージェントを起動してください。コードを生成した後、適用する前に出力を自分でレビューしてください。」
ローカルでデリゲートするのに適した内容
ローカル生成の良い候補(トークンが多くかかる、パターン従期型):
- テンプレートからのボイラープレートコード(モデル、スキーマ、サービス、ルート)
- 既存パターンに従うテストファイル
- 既存慣例に一致するフロントエンドコンポーネント
- マイグレーションファイル
- APIクライアント関数
- 型定義
クラウドに保持する(推論、プロジェクト理解が必要):
- アーキテクチャ決定
- 複雑なエラーのデバッグ
- コードレビューと慣例チェック
- 依存関係の理解が必要な複数ファイルのリファクタ
- スキル作成と更新
ローカルモデル用のプロジェクトコンテキスト
ローカルモデルは会話履歴を持ちません。デリゲートする際は、関連するスキルコンテンツをサブエージェントプロンプトに含めます。例えば、新しいサービスを生成する場合:
「.skills/scaffold/SKILL.mdの『3. Service Layer』セクションを読み、そのテンプレートに正確に従ってProjectsのサービスファイルを生成してください。リソース名はproject、モデルはProjectです。」
これにより、ローカルモデルは完全な会話なしで正しいコードを生成するのに十分なコンテキストを得られます。
コスト比較
| タスク | クラウドトークン | ローカルトークン | 削減 |
|---|---|---|---|
| CRUD サービス生成(~200行) | 出力トークン ~800個 @ $0.015/1k | 0(無料、オンデバイス) | 100% |
| テスト生成(~300行) | 出力トークン ~1,200個 | 0 | 100% |
| 完全リソーススキャフォルド(8ファイル) | 出力トークン ~4,000個 | 0 | 100% |
| 計画 + レビューオーバーヘッド | ~2,000トークン(クラウドに残存) | N/A | N/A |
典型的な「新しいリソースを追加」フロー:オーケストレーション + レビュー用クラウドトークン ~2,000個、生成用ローカルトークン ~4,000個。ルーティングなしでは ~6,000個のクラウドトークン。約65%のコスト削減。
推奨モデル(2026年3月)
| モデル | VRAM | 最適用途 |
|---|---|---|
qwen3-coder:30b | 16GB以上 | 一般的なコーディング、強力なツール呼び出し、256Kコンテキスト |
glm-4.7-flash | 24GB | 24GBセットアップ時の最高品質 |
qwen3-coder:8b | 8GB | 予算オプション、テンプレート従期型でも機能 |
deepseek-coder-v3:16b | 12GB | サイズと品質の良いバランス |
検証
ローカル生成されたコードを適用した後:
make verify # lint + typecheck + test — ローカルモデルが間違えたことを検出
検証に失敗した場合、クラウドモデルがエラーをレビューし、修正するか、より詳細な指示で再度デリゲートします。
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- Benja-Pauls
- ライセンス
- MIT
- 最終更新
- 2026/4/3
Source: https://github.com/Benja-Pauls/SerpentStack / ライセンス: MIT