LiteLLM自动路由:根据问题复杂度智能选择模型
前言
调用大模型时,简单问题用便宜模型、复杂问题用强模型,这是节省成本的基本思路。但手动判断每个请求的复杂度不现实。LiteLLM 的 Auto Router 解决了这个问题——它自动分析每个请求的复杂度,将简单问题路由到便宜模型,复杂问题路由到强模型。
本文介绍如何用 Docker Compose 部署 LiteLLM Proxy,并配置 Auto Router 实现按复杂度自动路由。
什么是 Auto Router
Auto Router 是 LiteLLM v1.94.x 引入的功能,将复杂度路由、语义路由和自适应路由合并为一个 auto_router/complexity_router。核心流程:
- 分类请求:用启发式评分、LLM 分类器或关键词规则判断请求复杂度
- 匹配层级:将请求分为 SIMPLE、MEDIUM、COMPLEX、REASONING 四个层级
- 路由模型:每个层级可指定单个模型、随机池或 Thompson 采样池
快速部署
使用官方 Docker Compose
curl -sSL https://docs.litellm.ai/docker-compose.yml | docker compose -f - up -d
启动两个服务:
litellm:网关服务,端口 4000db:PostgreSQL 16 数据库,存储模型配置、虚拟密钥和消费日志
重要:LITELLM_SALT_KEY 用于加密 provider API 密钥,部署前务必改为随机值,且不要后续更改。
访问 Admin UI
服务启动后,访问 http://localhost:4000/ui:
- 用户名:
admin - 密码:
LITELLM_MASTER_KEY的值(默认sk-1234)
添加模型
在 Admin UI 中进入 Models + Endpoints,添加需要使用的模型(如 gpt-4o-mini、gpt-4o、claude-sonnet-5 等)。
配置 Auto Router
通过 Admin UI 配置
- 进入 Models + Endpoints
- 点击 Add Model
- 选择 Auto Router 标签页
- Router Type 默认选择 Auto-Router v2 [Recommended]
- 配置四个层级的模型:
- SIMPLE:简单问题(如 gpt-4o-mini)
- MEDIUM:中等问题(如 gpt-4o)
- COMPLEX:复杂问题(如 claude-sonnet-5)
- REASONING:推理问题(如 gpt-5.5)
- 可选启用:
- Semantic Keyword Matching:通过嵌入匹配同义词
- LLM Classifier:用小模型做分类
- Adaptive:Thompson 采样自适应路由
- Session Affinity:锁定会话模型
- 点击 Test Connection 测试各层级连接
- 保存配置
调用示例
curl -X POST http://localhost:4000/v1/chat/completions \
-H "Authorization: Bearer sk-your-key" \
-d '{
"model": "smart-router",
"messages": [{"role": "user", "content": "What is 2+2?"}]
}'
响应头中可以看到实际路由的模型:
x-litellm-auto-router-model: gpt-4o-mini
决策日志
每次路由决策输出一行日志,便于排查:
ComplexityRouter: routing decision cause=complexity_scorer, tier=SIMPLE, score=-0.150, signals=['short (7 tokens)', 'simple (what is)'], routed_model=gpt-4o-mini
ComplexityRouter: routing decision cause=literal_keyword_match, tier=REASONING, routed_model=gpt-5.5
ComplexityRouter: routing decision cause=llm_classifier, tier=COMPLEX, score=1.000, routed_model=claude-sonnet-5
ComplexityRouter: routing decision cause=session_affinity_pin, routed_model=gpt-5.5
总结
LiteLLM Auto Router 提供了按复杂度自动路由的完整方案:
- 三种分类方式:启发式评分(零延迟)、LLM 分类器(更准确)、关键词规则(确定性)
- 四个复杂度层级:SIMPLE、MEDIUM、COMPLEX、REASONING
- 层级池:支持单模型、随机池、Thompson 采样池
- 会话亲和性:锁定会话模型,保护 prompt cache
- 路由日志:每次决策可追溯
Docker Compose 一键部署,模型和路由配置通过 Admin UI 完成。适合需要根据问题复杂度自动选择模型的场景。
(完)