已关闭
【需求】/【Requirement】Hermes Router tokenizer 对齐 KServe llm-d scheduler 契约 #44
xinhongchen创建于 8月21日关闭于 9月11日
8月21日 添加了label:sig/sig-ai-inference
openFuyao-bot
8月21日 评论:
8月21日 评论:
欢迎来到 openFuyao 社区
Hey @xinhongchen , 感谢你对社区的贡献.
机器人使用手册
有关指令的使用,可以点击 此处 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。
联系指引
有疑问可以联系 SIG: sig-ai-inference ,
维护者是: @foxbit, @regandy ,
审核者是: @ShiroChen, @piamposer-li, @qinwenzh .


8月21日 将 kangzhenji 设为负责人
8月21日 关联了看板:openFuyao - v26.09问题单
8月21日 关联了里程碑:v26.09
8月21日 添加了label:feature-request
8月21日 关联了pull request:chore: untrack docs/ and add to gitignore
8月26日 关联了pull request:feat(tokenizer): align with KServe llm-d scheduler pod contract
9月11日 issue状态由 开启 改变为 关闭
9月11日 关闭了 issue
需求描述/ Description
KServe
LLMInferenceService会把预设kserve-config-llm-scheduler(llm-d scheduler)与用户spec.router.scheduler做 strategic merge;用户 overlay 只能改/加字段,不能删除预设中的 command、探针、卷挂载等。当前 InferNex-Bridge Webhook 因此必须先剥掉 llm-d 专用项,再由 LLMISVC 侧写完整 Hermes template,否则 Hermes 配置无法干净覆盖。期望 Hermes Router(含 EPP
main与 tokenizer sidecar,以及相关 Chart / 插件默认值)整体对齐 llm-d 预设契约,使在 KServe 路径上可以 直接用 Hermes 的 template /scheduler.config(含 EPP plugin 等)覆盖或追加配置,而不再依赖 Webhook 先改掉预设。用户仍可按需换镜像、改资源、追加插件与路由策略;目标是这些配置与预设兼容、互不影响,而不是「只能换镜像、不能写配置」。实现上可分步推进(例如先 tokenizer、再 EPP),但需求目标是完整适配。当前 Webhook 对 scheduler Config 删除项主要包括:
main.command、main/tokenizer的tokenizer-uds挂载、tokenizer 的ports/probes/workingDir/env、tokenizer-cache/tokenizer-uds卷等。对齐完成后,这些字段应能按上游预设保留,并由 Hermes 镜像与配置正确消费。需求价值:关键竞争力/ Value: Key Competitive Advantage
需求类型:新增/增强/继承 /Requirement Type: New/Enhancement/Inheritance
增强(对现有 EPP / tokenizer sidecar / Chart / 插件默认契约做兼容对齐)
特性约束:兼容性要求或其他限制性约束或NA/ Property Constraints: Compatibility requirements or other restrictive constraints or NA
kserve/config/llmisvcconfig/config-llm-scheduler.yaml全量 scheduler template 契约/tmp/tokenizer/tokenizer-uds.socket,卷名tokenizer-uds,挂载/tmp/tokenizerGET /healthz端口8082(进程起来即可,不依赖模型加载)workingDir: /mnt/models,TOKENIZERS_DIR=/mnt/modelstokenizer-tmp→/tmp,tokenizer-cache→/.cache;readOnlyRootFilesystem: truemain)约定:main(KServe 只给该容器注入--config-text)command(/app/epp --pool-name ...)或与之等价地通过镜像 ENTRYPOINT + 预设 args 正常启动liveness、readiness)、TLS 挂载/var/run/kserve/tls、以及tokenizer-uds→/tmp/tokenizerscheduler.config/--config-text覆盖或追加插件(如 kv-cache-aware、tokenizer、prediction 等),不另起一套需靠 Webhook 删除的 command/卷约定tokenizer-socket-volume、/var/run/tokenizer、容器名epp等第二套约定交付个人或团队:如团队、SIG等/ Delivery organization: such as teams, SIGs, etc.
SIG AI Inference / Hermes Router
建议改动范围与分步(供实现参考)
:8082/healthz、认TOKENIZERS_DIR、缓存写到/.cache;Chart/examples卷名路径对齐tokenizer-uds/tmp/tokenizer/tokenizer-uds.socket;KServe 路径下用scheduler.config覆盖/追加 Hermes 插件,不依赖 Webhook 删除预设command与 UDS 约定kserve-config-llm-scheduler的修改