已关闭
【codecheck】PD 打分函数参数过多,需收敛签名 #59
lileqi创建于  9月15日关闭于  9月16日
lileqi成员
9月15日 创建

环境信息 / Environment

  • 目标仓库:openFuyao/hermes-router
  • 涉及文件:pkg/epp/internal/score/core.go
  • 触发:codecheck 函数参数个数检查

问题简述 / Brief Description

codecheck 对 pkg/epp/internal/score 中两处 PD 打分相关函数报参数过多:

  1. ResolvePDWeightDefaults:12 个参数(10 个 *float64 + 2 个默认值)
  2. PDGroup:6 个参数(info、prefill/decode/group 权重、limits、nextRandIntn)

两处都是同一类问题:调用方必须按位置对齐一长串参数,字段对错没有编译期约束,也超过 codecheck 的参数个数上限。

问题详情 / Details

当前插件 Config(pdkvaware / autokvaware)把 PD 权重摊平成扁平 float64 字段,和 score.PrefillWeights / DecodeWeights / GroupWeights 是同一份数据的两种表示。后果是:

  • 写路径(ResolvePDWeightDefaults)无法直接改权重结构体,只能收一串指向 Config 字段的指针,才能把默认值写回插件配置。
  • 读路径(PDGroup)虽然已经按值接收三组权重,但仍把权重、PDLimits、随机函数拆成独立位置参数,合计 6 个。
  • 两个插件各自维护 prefillWeights() / decodeWeights() 一类 Config→score 搬运方法,漏拷某个字段会变成静默错误。

JSON 层 pluginParameters 字段名(如 prefillKVUsageWeight)对外契约不变,不需要改用户配置格式。

期望行为 / Expected

  • ResolvePDWeightDefaults 按组接收现有权重结构体指针,不再展开成 10 个 *float64。
  • PDGroup 收敛为 PDGroup(info *pdgroup.Info, scorer PDScorer),把权重、limits、tie-break RNG 打进一个结构体。
  • 插件 Config 内嵌 score 包权重结构体,去掉运行时 Config→score 搬运;外部 JSON 参数格式保持兼容。
  • codecheck 对上述两处不再报参数超限。
  • pkg/epp/internal/score/core.go
  • pkg/epp/framework/plugins/scheduling/scorer/pdkvaware/plugin.go
  • pkg/epp/framework/plugins/scheduling/scorer/autokvaware/plugin.go
likedislike
Llileqi成员
9月15日 添加了label:sig/sig-ai-inference
openFuyao-bot
openFuyao-bot成员
9月15日 评论:

欢迎来到 openFuyao 社区

Hey @lileqi , 感谢你对社区的贡献.

机器人使用手册

有关指令的使用,可以点击 此处 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。您可以自助配置此仓库的 PR 合并规则,更多详情,请参阅此处。

联系指引

有疑问可以联系 SIG: sig-ai-inference ,
维护者是: @foxbit, @regandy ,
审核者是: @ShiroChen, @piamposer-li, @qinwenzh .

likedislike
Llileqi成员
9月15日 关联了pull request:refactor(score): 将 PD 权重内嵌到插件 Config 并收敛 PDGroup 签名
Llileqi成员
9月15日 关联了里程碑:v26.09
zhengqinwenZZZzhengqinwenZZZ成员
9月16日 关联了看板:openFuyao - v26.09问题单
zhengqinwenZZZzhengqinwenZZZ成员
9月16日 issue状态由 开启 改变为 待测试
zhengqinwenZZZzhengqinwenZZZ成员
9月16日 issue状态由 待测试 改变为 已完成
zhengqinwenZZZzhengqinwenZZZ成员
9月16日 关闭了 issue