Skip to content

feat: 聚合供应商支持按模型路由 - #1780

Open
kokotao wants to merge 3 commits into
BigPizzaV3:mainfrom
kokotao:codex/aggregate-relay-model-routing
Open

feat: 聚合供应商支持按模型路由#1780
kokotao wants to merge 3 commits into
BigPizzaV3:mainfrom
kokotao:codex/aggregate-relay-model-routing

Conversation

@kokotao

@kokotao kokotao commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

概述

  • 新增聚合供应商按模型路由规则,支持通配符匹配与优先级排序
  • 路由命中时直接选择目标成员供应商,未命中才走原有聚合策略
  • 聚合模式下,代理转发前会将上游 model 改写为被选中成员供应商的默认模型
  • 聚合供应商写入 Codex 配置时设置 requires_openai_auth = false
  • 新增管理器 UI 辅助函数与测试,用于聚合路由规则的编辑与校验

详细说明

  • 支持 deepseek-*gpt-* 等通配符模式及精确模型名匹配。
  • 未命中路由时保留原有聚合策略行为。
  • 路由目标无效时跳过并记录 route matched / unmatched / skipped 诊断日志。
  • 选中成员供应商请求失败时,继续按聚合成员顺序 fallback。

修复:聚合供应商不再强制要求 OpenAI 登录

  • 问题:切换到聚合供应商时,Codex 配置此前会写入 requires_openai_auth = true,强制要求聚合中继并不需要的 OpenAI 登录态。
  • 修复:RelayMode::Aggregate 生成的供应商配置现在写入 requires_openai_auth = false,并且 relay_config_status_from_home 会将「base_url + bearer token」的聚合配置视为已配置,无需 OpenAI 登录。
  • 对应测试:relay_config_status_treats_aggregate_provider_as_configured_without_openai_auth

Closes #1744.

测试计划

  • npm test
  • npm run check
  • cargo test -p codex-plus-core --test relay_rotation
  • cargo test -p codex-plus-core --test protocol_proxy aggregate -- --nocapture
  • cargo test -p codex-plus-core --test relay_config
  • cargo test -p codex-plus-core --test relay_switch

…-model-routing

# Conflicts:
#	crates/codex-plus-core/src/relay_config.rs
@kokotao kokotao changed the title feat: route aggregate providers by model feat: 聚合供应商支持按模型路由 Aug 10, 2026
@BigPizzaV3

Copy link
Copy Markdown
Owner

审查结论:暂不建议合并。当前 Windows artifacts CI 失败,失败用例是 upstream_theme_assets 的字节校验:assets/inject/upstream/dream-skin/windows/renderer-inject.jsassets/inject/upstream/skin-packs/packs/caishen-lite/theme.json 的 SHA-256 均不匹配。请先同步/修正资源或对应基线后重新跑全平台 CI,再继续评审。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature]: 聚合供应商支持根据模型来源自动路由到不同供应商

2 participants