路由策略
poeti.ai 的核心能力是智能路由——当你的 Key Pool 中有多个 API Key 时,路由引擎会根据设定的策略自动决定将每个请求发往哪个 Key。
路由触发条件:路由策略只在 Key Pool 中有 多个可用 Key 时生效。如果只有一个 Key,请求会直接发往该 Key,无论配置哪种策略。
路由决策流程
收到请求
→
过滤不可用 Key
→
应用路由策略
→
选出最优 Key
→
转发请求
不可用 Key 包括:已禁用、超过配额、连续失败次数超限、当前处于冷却期的 Key
6 种路由策略详解
根据业务场景选择合适的策略:
1
轮询(Round Robin)
按顺序依次使用每个可用 Key。第 1 个请求用 Key A,第 2 个用 Key B,第 3 个用 Key C,第 4 个回到 Key A……
✅ 适合:负载均衡
✅ 适合:Key 性能相近
✅ 适合:确定性分配
不考虑 Key 的实时状态(延迟/成功率),均匀分摊流量。如果某个 Key 响应慢,部分请求会受影响。
2
加权随机(Weighted Random)
根据每个 Key 的 weight 值按比例随机分配流量。权重越高,被选中的概率越大。
# 示例:Key A 权重 200,Key B 权重 100,Key C 权重 100
# Key A 被选中概率 50%,Key B 25%,Key C 25%
Key A: weight=200 → 50% 流量
Key B: weight=100 → 25% 流量
Key C: weight=100 → 25% 流量
✅ 高配额 Key 多用
✅ 灰度测试新 Key
✅ 差异化 Key 分级
3
故障转移(Failover)
按 Key 的 priority 优先级顺序使用。始终优先使用最高优先级的 Key,只有它不可用时才切换到次优 Key。
# 示例:priority 越大越优先
Key A: priority=100 → 主 Key(优先)
Key B: priority=50 → 备用 Key(A 故障时使用)
Key C: priority=10 → 最后备用(A、B 都故障时)
✅ 主备高可用架构
✅ 有主力 Key 的场景
✅ 成本敏感(便宜 Key 先用)
4
延迟优先(Latency-based)
实时选择历史平均延迟最低的 Key 发送请求。系统会持续跟踪每个 Key 的滑动平均延迟。
// 系统内部实时数据示例
Key A: avg_latency = 620ms ← 被优先选中
Key B: avg_latency = 840ms
Key C: avg_latency = 1240ms
✅ 实时聊天场景
✅ 用户体验优先
✅ 流式输出场景
5
成功率优先(Success Rate)
选择成功率最高的 Key,最大化每个请求的成功概率。适合需要极高稳定性的场景。
// 系统内部实时数据示例
Key A: success_rate = 99.8% ← 被优先选中
Key B: success_rate = 97.2%
Key C: success_rate = 94.5%
✅ 高稳定性要求
✅ 批量处理任务
✅ 不允许失败的场景
6
综合评分(Comprehensive)
⭐ 推荐综合考虑健康分数、成功率、平均延迟、权重,计算每个 Key 的综合评分,选择评分最高的 Key。
// 综合评分公式(v2.6.0 引入成本因素)
score = health_score × 0.4 // 健康分数(成功率+失败惩罚综合)
+ success_rate × 0.3 // 近期成功率
+ latency_score × 0.2 // 延迟评分(越低越高)
+ weight_factor × 0.1 // 权重因子
// 关联供应商后,成本因素也纳入计算
✅ 生产环境默认推荐
✅ 多指标均衡
✅ 自动应对 Key 状态变化
💡 推荐理由:综合评分策略会实时学习每个 Key 的表现,当某个 Key 开始变慢或出错时,系统会自动降低其权重;当它恢复正常时,权重自动回升。无需人工干预。
如何配置路由策略
方式一:控制台图形界面
- 进入控制台 → 智能路由
- 选择要配置的 Provider(如 OpenAI)
- 在"路由策略"下拉菜单中选择策略
- 保存设置,立即生效
方式二:API 配置
# 设置路由策略
curl -X PUT https://api.poeti.ai/api/v1/routing/config \
-H "Authorization: Bearer $ADMIN_KEY" \
-H "Content-Type: application/json" \
-d '{
"provider": "openai",
"strategy": "comprehensive",
"fallback_strategy": "round_robin"
}'
健康监控机制
路由引擎持续追踪每个 Key 的健康状态:
🔄 自动恢复:被暂停的 Key 会在 5 分钟后自动进入"试探模式"——先发送少量请求测试,如果成功则逐步恢复正常权重。无需人工干预。