智能路由
OpenHub 的智能路由功能可以自动选择最优模型,帮助你节省 50-70% 的成本。
什么是智能路由
智能路由会根据你的请求内容,自动选择最合适的模型:
- 中文任务 → 使用国产模型(通义千问、文心一言)
- 英文任务 → 使用国外模型(GPT-4、Claude)
- 代码任务 → 使用专业模型(DeepSeek、GPT-4)
- 长文本 → 使用大上下文模型(Claude、Moonshot)
如何使用
只需将 model 参数设置为 auto:
javascript
const response = await client.chat.completions.create({
model: 'auto', // 智能路由
messages: [
{ role: 'user', content: '写一首关于春天的诗' }
]
});选择池
OpenHub 支持选择使用哪个通道池:
池类型
| 池类型 | 前缀 | 说明 |
|---|---|---|
| 系统池 | (无前缀) | 使用平台提供的共享通道 |
| 用户私有池 | self: | 使用您自己配置的 API 通道 |
使用示例
javascript
// 使用系统池(默认)
model: 'auto' // 系统池 + 智能路由
model: 'gpt-4o' // 系统池 + 指定模型
// 使用用户私有池
model: 'self:auto' // 私有池 + 智能路由
model: 'self:gpt-4o' // 私有池 + 指定模型路由策略
1. 语言检测
智能路由会自动检测请求语言:
javascript
// 中文请求 → 通义千问、文心一言
model: 'auto'
content: '介绍一下北京'
// 实际使用: qwen-max
// 英文请求 → GPT-4、Claude
model: 'auto'
content: 'Tell me about Beijing'
// 实际使用: gpt-42. 任务类型识别
根据任务类型选择专业模型:
javascript
// 代码任务 → DeepSeek、GPT-4
model: 'auto'
content: 'Write a Python function to sort a list'
// 实际使用: deepseek-chat
// 长文本分析 → Claude、Moonshot
model: 'auto'
content: '分析这篇 10000 字的文章...'
// 实际使用: claude-3-opus3. 成本优化
在保证质量的前提下,选择最便宜的模型:
javascript
// 简单对话 → 便宜的模型
model: 'auto'
content: '你好'
// 实际使用: qwen-turbo (¥0.002/1K tokens)
// 复杂任务 → 高质量模型
model: 'auto'
content: '设计一个分布式系统架构'
// 实际使用: gpt-4 (¥0.21/1K tokens)路由模式
OpenHub 提供三种路由模式:
auto - 平衡模式(推荐)
综合考虑质量、成本、速度:
javascript
model: 'auto'适用场景:大多数场景
auto-cheap - 成本优先
优先选择最便宜的模型:
javascript
model: 'auto-cheap'适用场景:
- 成本敏感的应用
- 大量简单任务
- 测试和开发环境
auto-fast - 速度优先
优先选择响应最快的模型:
javascript
model: 'auto-fast'适用场景:
- 实时对话
- 需要快速响应的场景
- 用户体验要求高的应用
成本对比
示例 1:中文对话
不使用智能路由:
javascript
model: 'gpt-4'
content: '介绍一下北京'
// 成本: ¥0.21/1K tokens使用智能路由:
javascript
model: 'auto'
content: '介绍一下北京'
// 实际使用: qwen-max
// 成本: ¥0.028/1K tokens
// 节省: 87%示例 2:代码生成
不使用智能路由:
javascript
model: 'gpt-4'
content: 'Write a sorting algorithm'
// 成本: ¥0.21/1K tokens使用智能路由:
javascript
model: 'auto'
content: 'Write a sorting algorithm'
// 实际使用: deepseek-chat
// 成本: ¥0.001/1K tokens
// 节省: 99.5%最佳实践
1. 默认使用智能路由
javascript
// ✅ 推荐
const client = new OpenAI({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://api.myopenhub.com/v1',
defaultQuery: { model: 'auto' }
});2. 特殊场景指定模型
javascript
// 需要特定模型能力时
if (needsLongContext) {
model = 'claude-3-opus'; // 200K 上下文
} else {
model = 'auto'; // 其他情况用智能路由
}3. 监控路由效果
在控制台查看:
- 实际使用的模型分布
- 成本节省情况
- 响应时间对比
4. A/B 测试
javascript
// 对比智能路由和固定模型
const testGroups = {
control: { model: 'gpt-4' },
treatment: { model: 'auto' }
};
// 比较效果和成本路由规则详解
语言检测规则
| 语言 | 优先模型 | 备选模型 |
|---|---|---|
| 中文 | qwen-max, ernie-4.0 | gpt-4 |
| 英文 | gpt-4, claude-3-opus | gpt-3.5-turbo |
| 日文 | gpt-4 | claude-3-sonnet |
| 韩文 | gpt-4 | qwen-max |
任务类型规则
| 任务类型 | 优先模型 | 识别关键词 |
|---|---|---|
| 代码 | deepseek-chat, gpt-4 | code, function, class, debug |
| 翻译 | gpt-4, qwen-max | translate, 翻译 |
| 摘要 | claude-3-haiku, qwen-turbo | summarize, 摘要 |
| 创作 | ernie-4.0, gpt-4 | write, 写, 创作 |
上下文长度规则
| 上下文长度 | 优先模型 |
|---|---|
| < 4K | qwen-turbo, gpt-3.5-turbo |
| 4K - 32K | qwen-max, gpt-4 |
| 32K - 128K | moonshot-v1-128k, gpt-4 |
| > 128K | claude-3-opus |
常见问题
Q: 智能路由会增加延迟吗?
A: 不会。路由决策在毫秒级完成,不会影响响应速度。
Q: 可以查看实际使用的模型吗?
A: 可以。响应中会包含 model 字段,显示实际使用的模型。
Q: 智能路由会影响效果吗?
A: 不会。智能路由会选择最适合的模型,效果通常更好。
Q: 可以禁用智能路由吗?
A: 可以。直接指定具体模型名称即可。
Q: 智能路由支持所有模型吗?
A: 是的。智能路由可以从所有可用模型中选择。