ClawSkills logoClawSkills

Model Router

全面的 AI 模型路由系统,可自动为任何任务选择最佳模型。设置多个 AI 提供商(Anthropic、OpenAI、Gemini、Moon

介绍

# Model Router

**跨多个 AI 提供商的智能模型路由,以实现最佳的成本性能平衡。**

根据复杂度、类型和您的偏好,自动为任何任务选择最佳模型。支持 6 大 AI 提供商,具备安全的 API 密钥管理和交互式配置功能。

## 🎯 功能概述

- **分析任务** 并按类型分类(编程、研究、创意、简单等) - **路由到最优模型**,从您配置的提供商中选择 - **优化成本**,针对简单任务使用更便宜的模型 - **保护 API 密钥**,利用文件权限 (600) 和隔离存储 - **提供建议**,包含置信度评分和推理过程

## 🚀 快速开始

### 第 1 步:运行设置向导

```bash cd skills/model-router python3 scripts/setup-wizard.py ```

向导将引导您完成以下步骤: 1. **提供商设置** - 添加您的 API 密钥(Anthropic、OpenAI、Gemini 等) 2. **任务映射** - 为每种任务类型选择对应的模型 3. **偏好设置** - 设置成本优化级别

### 第 2 步:使用分类器

```bash # Get model recommendation for a task python3 scripts/classify_task.py "Build a React authentication system"

# Output: # Recommended Model: claude-sonnet # Confidence: 85% # Cost Level: medium # Reasoning: Matched 2 keywords: build, system ```

### 第 3 步:使用会话路由任务

```bash # Spawn with recommended model sessions_spawn --task "Debug this memory leak" --model claude-sonnet

# Use aliases for quick access sessions_spawn --task "What's the weather?" --model haiku ```

## 📊 支持的提供商

| 提供商 | 模型 | 最适用于 | 密钥格式 | |----------|--------|----------|------------| | **Anthropic** | claude-opus-4-5, claude-sonnet-4-5, claude-haiku-4-5 | 编程、推理、创意 | `sk-ant-...` | | **OpenAI** | gpt-4o, gpt-4o-mini, o1-mini, o1-preview | 工具使用、深度推理 | `sk-proj-...` | | **Gemini** | gemini-2.0-flash, gemini-1.5-pro, gemini-1.5-flash | 多模态、超长上下文 (2M) | `AIza...` | | **Moonshot** | moonshot-v1-8k/32k/128k | 中文语言 | `sk-...` | | **Z.ai** | glm-4.5-air, glm-4.7 | 最便宜、快速 | 多种格式 | | **GLM** | glm-4-flash, glm-4-plus, glm-4-0520 | 中文、编程 | `ID.secret` |

## 🎛️ 任务类型映射

默认路由(可通过向导自定义):

| 任务类型 | 默认模型 | 原因 | |-----------|---------------|-----| | `simple` | glm-4.5-air | 快速查询中最快、最便宜的 | | `coding` | claude-sonnet-4-5 | 卓越的代码理解能力 | | `research` | claude-sonnet-4-5 | 平衡了深度和速度 | | `creative` | claude-opus-4-5 | 最大化创意 | | `math` | o1-mini | 专业化推理 | | `vision` | gemini-1.5-flash | 快速多模态 | | `chinese` | glm-4.7 | 针对中文优化 | | `long_context` | gemini-1.5-pro | 高达 2M tokens |

## 💰 成本优化

### 激进模式 始终使用最便宜且能胜任的模型: - 简单任务 → glm-4.5-air(约 10% 成本) - 编程任务 → claude-haiku-4-5(约 25% 成本) - 研究任务 → claude-sonnet-4-5(约 50% 成本)

**节省:** 相比始终使用高级模型,可节省 50-90% 的成本

### 平衡模式(默认) 综合考虑成本与质量: - 简单任务 → 便宜模型 - 关键任务 → 高级模型 - 如果便宜模型失败,自动升级

### 质量模式 无论成本如何,始终使用最佳模型

## 🔒 安全性

### API 密钥存储 ``` ~/.model-router/ ├── config.json # Model mappings (chmod 600) └── .api-keys # API keys (chmod 600) ```

**特性:** - 文件权限仅限于所有者 (600) - 与版本控制隔离 - 静态加密(通过操作系统文件系统加密) - 从不记录或打印

### 最佳实践 1. **切勿提交** `.api-keys` 到版本控制系统 2. **使用环境变量** 进行生产环境部署 3. **定期轮换密钥**,可通过向导操作 4. **审计访问权限**,使用 `ls -la ~/.model-router/`

## 📖 使用示例

### 示例 1:成本优化工作流

```bash # Classify task first python3 scripts/classify_task.py "Extract prices from this CSV"

# Result: simple task → use glm-4.5-air sessions_spawn --task "Extract prices" --model glm-4.5-air

# Then analyze with better model if needed sessions_spawn --task "Analyze price trends" --model claude-sonnet ```

### 示例 2:渐进式升级

```bash # Try cheap model first (60s timeout) sessions_spawn --task "Fix this bug" --model glm-4.5-air --runTimeoutSeconds 60

# If fails, escalate to premium sessions_spawn --task "Fix complex architecture bug" --model claude-opus ```

### 示例 3:并行处理

```bash # Batch simple tasks in parallel with cheap model sessions_spawn --task "Summarize doc A" --model glm-4.5-air & sessions_spawn --task "Summarize doc B" --model glm-4.5-air & sessions_spawn --task "Summarize doc C" --model glm-4.5-air & wait ```

### 示例 4:使用 Gemini 的多模态

```bash # Vision task with 2M token context sessions_spawn --task "Analyze these 100 images" --model gemini-1.5-pro ```

## 🛠️ 配置文件

### `~/.model-router/config.json` ```json { "version": "1.1.0", "providers": { "anthropic": { "configured": true, "models": ["claude-opus-4-5", "claude-sonnet-4-5", "claude-haiku-4-5"] }, "openai": { "configured": true, "models": ["gpt-4o", "gpt-4o-mini", "o1-mini", "o1-preview"] } }, "task_mappings": { "simple": "glm-4.5-air", "coding": "claude-sonnet-4-5", "research": "claude-sonnet-4-5", "creative": "claude-opus-4-5" }, "preferences": { "cost_optimization": "balanced", "default_provider": "anthropic" } } ```

### `~/.model-router/.api-keys` ```bash # Generated by setup wizard - DO NOT edit manually ANTHROPIC_API_KEY=sk-ant-... OPENAI_API_KEY=sk-proj-... GEMINI_API_KEY=AIza... ```

## 🔄 版本 1.1 变更

### 新功能 - ✅ **交互式设置向导**,用于引导配置 - ✅ **安全的 API 密钥存储**,具有文件权限保护 - ✅ **任务到模型映射** 自定义 - ✅ **多提供商支持**(6 个提供商) - ✅ **成本优化级别**(激进/平衡/质量)

### 改进 - ✅ 更好的任务分类,包含置信度评分 - ✅ 特定于提供商的模型推荐 - ✅ 增强的安全性,采用隔离存储 - ✅ 完善的文档

### 从 1.0 迁移 运行设置向导以重新配置: ```bash python3 scripts/setup-wizard.py ```

## 📚 命令参考

### 设置向导 ```bash python3 scripts/setup-wizard.py ``` 交互式配置提供商、映射和偏好设置。

### 任务分类器 ```bash python3 scripts/classify_task.py "your task description" python3 scripts/classify_task.py "your task" --format json ``` 获取带有推理过程的模型推荐。

### 列出模型 ```bash python3 scripts/setup-wizard.py --list ``` 显示所有可用模型及其状态。

## 🤝 与其他技能集成

| 技能 | 集成方式 | |-------|-------------| | **model-usage** | 跟踪每个提供商的成本以优化路由 | | **sessions_spawn** | 模型委托的主要工具 | | **session_status** | 检查当前模型和用量 |

## ⚡ 性能提示

1. **从简单开始** - 先尝试便宜的模型 2. **批量处理任务** - 合并多个简单任务 3. **使用清理** - 在一次性任务后删除会话 4. **设置超时** - 防止失控的子代理 5. **监控使用情况** - 跟踪每个提供商的成本

## 🐛 故障排除

### “未找到合适的模型” - 运行设置向导以配置提供商 - 检查 API 密钥是否有效 - 验证 `.api-keys` 文件的权限

### “未找到模块” ```bash pip3 install -r requirements.txt # if needed ```

### 选择了错误的模型 1. 通过向导自定义任务映射 2. 在 `sessions_spawn --model` 中使用显式模型 3. 调整成本优化偏好

## 📖 其他资源

- **提供商文档:** - [Anthropic](https://docs.anthropic.com) - [OpenAI](https://platform.openai.com/docs) - [Gemini](https://ai.google.dev/docs) - [Moonshot](https://platform.moonshot.cn/docs) - [Z.ai](https://api.z.ai/docs) - [GLM](https://open.bigmodel.cn/dev/api)

- **设置:** 运行 `python3 scripts/setup-wizard.py` - **支持:** 查看 `references/` 文件夹获取详细指南

更多产品