Prhub

#52805 [Bugfix][Structured Output] Stop XGrammar token batches at termination

原始 PR 作者 sfeng33 合并时间 2026-08-19 05:21 文件变更 2 提交数 3 评论 9 代码增减 +62 / -5

执行摘要

实现拆解

  1. 核心源码路径
    - vllm/v1/structured_output/backend_xgrammar.py(core-logic):源码主路径;包含 控制流调整、配置键调整;+14/-5

  2. 测试与验证
    - tests/v1/spec_decode/test_mtp_structured_output.py(test-coverage):测试配套;涉及符号 test_xgrammar_accept_tokens_stops_at_termination, test_xgrammar_validate_tokens_stops_at_termination;包含 测试覆盖调整、配置键调整、符号定义调整;+48/-0;关键符号:test_xgrammar_accept_tokens_stops_at_termination, test_xgrammar_validate_tokens_stops_at_termination

文件 模块 状态 重要度
tests/v1/spec_decode/test_mtp_structured_output.py mtp/structured/output modified 6.32
vllm/v1/structured_output/backend_xgrammar.py vllm/v1 modified 6.18

关键符号

test_xgrammar_accept_tokens_stops_at_termination test_xgrammar_validate_tokens_stops_at_termination

分析完成后,这里会展示 LLM 生成的相对完整源码片段和详细注释。

评论区精华

没有提炼出高价值讨论线程

当前评论区没有形成足够清晰的争议点或结论,后续有更多讨论时会体现在这里。

风险与影响

关联 Issue

#52767 [Bug]: MTP spec decode still advances the grammar matcher after termination when a structural tag is built (residual after #44297)

完整报告

参与讨论