名称: model-router
描述: 一个全面的AI模型路由系统,可自动为任何任务选择最优模型。支持设置多个AI提供商(Anthropic、OpenAI、Gemini、Moonshot、Z.ai、GLM),并提供安全的API密钥存储,然后根据任务类型、复杂度和成本优化将任务路由到最佳模型。包含交互式设置向导、任务分类和成本效益委托模式。适用于需要“为此任务使用X模型”、“切换模型”、“最优模型”、“我应该使用哪个模型”的场景,或用于在多个AI提供商之间平衡质量与成本。
版本: 1.1.0
跨多个提供商的智能AI模型路由,实现最优性价比。
根据任务复杂度、类型和您的偏好,自动为任何任务选择最佳模型。支持6大AI提供商,并提供安全的API密钥管理和交互式配置。
cd skills/model-router
python3 scripts/setup-wizard.py
向导将引导您完成:
1. 提供商设置 - 添加您的API密钥(Anthropic、OpenAI、Gemini等)
2. 任务映射 - 为每种任务类型选择模型
3. 偏好设置 - 设置成本优化级别
# 获取任务对应的模型推荐
python3 scripts/classify_task.py "构建一个React身份验证系统"
# 输出示例:
# 推荐模型: claude-sonnet
# 置信度: 85%
# 成本级别: 中等
# 推理: 匹配到2个关键词:build, system
# 使用推荐模型生成会话
sessions_spawn --task "调试这个内存泄漏" --model claude-sonnet
# 使用别名快速访问
sessions_spawn --task "天气怎么样?" --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令牌 |
始终使用最便宜且能胜任的模型:
- 简单任务 → glm-4.5-air(约10%成本)
- 编程任务 → claude-haiku-4-5(约25%成本)
- 研究任务 → claude-sonnet-4-5(约50%成本)
节省: 相比始终使用高级模型,可节省50-90%成本
权衡成本与质量:
- 简单任务 → 廉价模型
- 关键任务 → 高级模型
- 廉价模型失败时自动升级
始终使用最佳模型,不考虑成本
~/.model-router/
├── config.json # 模型映射配置 (chmod 600)
└── .api-keys # API密钥 (chmod 600)
特性:
- 文件权限限制为所有者(600)
- 与版本控制系统隔离
- 静态加密(通过操作系统文件系统加密)
- 永不记录或打印
.api-keys 提交到版本控制ls -la ~/.model-router/# 首先对任务进行分类
python3 scripts/classify_task.py "从这个CSV中提取价格"
# 结果:简单任务 → 使用 glm-4.5-air
sessions_spawn --task "提取价格" --model glm-4.5-air
# 如有需要,再用更好的模型进行分析
sessions_spawn --task "分析价格趋势" --model claude-sonnet
# 先尝试廉价模型(60秒超时)
sessions_spawn --task "修复这个bug" --model glm-4.5-air --runTimeoutSeconds 60
# 如果失败,升级到高级模型
sessions_spawn --task "修复复杂的架构bug" --model claude-opus
# 使用廉价模型并行处理批量简单任务
sessions_spawn --task "总结文档A" --model glm-4.5-air &
sessions_spawn --task "总结文档B" --model glm-4.5-air &
sessions_spawn --task "总结文档C" --model glm-4.5-air &
wait
# 处理包含2M令牌上下文的视觉任务
sessions_spawn --task "分析这100张图片" --model gemini-1.5-pro
~/.model-router/config.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# 由设置向导生成 - 请勿手动编辑
ANTHROPIC_API_KEY=sk-ant-...
OPENAI_API_KEY=sk-proj-...
GEMINI_API_KEY=AIza...
运行设置向导以重新配置:
python3 scripts/setup-wizard.py
python3 scripts/setup-wizard.py
交互式配置提供商、映射和偏好。
python3 scripts/classify_task.py "您的任务描述"
python3 scripts/classify_task.py "您的任务" --format json
获取模型推荐及推理说明。
python3 scripts/setup-wizard.py --list
显示所有可用模型及其状态。
| 技能 | 集成方式 |
|---|---|
| model-usage | 跟踪每个提供商的成本以优化路由 |
| sessions_spawn | 模型委托的主要工具 |
| session_status | 检查当前模型和使用情况 |
.api-keys 文件的权限pip3 install -r requirements.txt # 如果需要
sessions_spawn --model 中明确指定模型