mirror of
https://github.com/musistudio/claude-code-router.git
synced 2026-01-29 22:02:05 +00:00
2.6 KiB
2.6 KiB
id, title, sidebar_position
| id | title | sidebar_position |
|---|---|---|
| config/routing | 路由配置 | 3 |
路由配置
配置如何将请求路由到不同的模型。
默认路由
为所有请求设置默认模型:
{
"Router": {
"default": "deepseek,deepseek-chat"
}
}
内置场景
后台任务
将后台任务路由到轻量级模型:
{
"Router": {
"background": "groq,llama-3.3-70b-versatile"
}
}
思考模式(计划模式)
将思考密集型任务路由到更强大的模型:
{
"Router": {
"think": "deepseek,deepseek-reasoner"
}
}
长上下文
路由长上下文请求:
{
"Router": {
"longContextThreshold": 100000,
"longContext": "gemini,gemini-2.5-pro"
}
}
网络搜索
路由网络搜索任务:
{
"Router": {
"webSearch": "gemini,gemini-2.5-flash"
}
}
图像任务
路由图像相关任务:
{
"Router": {
"image": "gemini,gemini-2.5-pro"
}
}
项目级路由
在 ~/.claude/projects/<project-id>/claude-code-router.json 中为每个项目配置路由:
{
"Router": {
"default": "groq,llama-3.3-70b-versatile"
}
}
项目级配置优先于全局配置。
自定义路由器
创建自定义 JavaScript 路由器函数:
- 创建路由器文件(例如
custom-router.js):
module.exports = async function(req, config) {
// 分析请求上下文
const userMessage = req.body.messages.find(m => m.role === 'user')?.content;
// 自定义路由逻辑
if (userMessage && userMessage.includes('解释代码')) {
return 'openrouter,anthropic/claude-3.5-sonnet';
}
// 返回 null 以使用默认路由
return null;
};
- 在
config.json中设置CUSTOM_ROUTER_PATH:
{
"CUSTOM_ROUTER_PATH": "/path/to/custom-router.js"
}
Token 计数
路由器使用 tiktoken (cl100k_base) 来估算请求 token 数量。这用于:
- 确定请求是否超过
longContextThreshold - 基于 token 数量的自定义路由逻辑
子代理路由
使用特殊标签为子代理指定模型:
<CCR-SUBAGENT-MODEL>provider,model</CCR-SUBAGENT-MODEL>
请帮我分析这段代码...
动态模型切换
在 Claude Code 中使用 /model 命令动态切换模型:
/model provider_name,model_name
示例:/model openrouter,anthropic/claude-3.5-sonnet
路由优先级
- 项目级配置
- 自定义路由器
- 内置场景路由
- 默认路由