Prhub

#44588 [Reasoning][Structured Outputs] Add Command A plus tags for structural tags

原始 PR 作者 rishitdholakia13 合并时间 2026-06-05 21:51 文件变更 1 提交数 3 评论 0 代码增减 +1 / -1

执行摘要

Cohere2Moe 推理时增加 Command A+ 结构标签支持

Cohere2MoeForCausalLM 架构(Command A+ 模型)在推理时需要同时识别两种结构标签:COMMAND_A_JSON_TAG 和 COMMAND_A_PLUS_JSON_TAG。此前配置仅包含前者,导致带 <|START_TEXT|> 标签的响应无法被正确解析,影响结构化输出功能的正确性。

该 PR 改动简单直接,逻辑清晰,无需精读。但可以作为 Cohere 系列模型结构标签配置的参考示例。

讨论亮点

无 review 讨论。

实现拆解

vllm/reasoning/cohere_command_reasoning_parser.py 中,修改 MODEL_TO_TAG_STYLE 字典中 Cohere2MoeForCausalLM 键对应的 json_tags 值,将单元素元组 (COMMAND_A_JSON_TAG,) 扩展为双元素元组 (COMMAND_A_JSON_TAG, COMMAND_A_PLUS_JSON_TAG),使模型支持识别两种结构标签。改动仅涉及一行代码。

文件 模块 状态 重要度
vllm/reasoning/cohere_command_reasoning_parser.py 推理解析 modified 4.09

关键源码片段

vllm/reasoning/cohere_command_reasoning_parser.py core-logic

唯一变更文件,修正 Cohere2MoeForCausalLM 的 json_tags 配置,新增 COMMAND_A_PLUS_JSON_TAG 支持。

# 文件:vllm/reasoning/cohere_command_reasoning_parser.py
# 以下为关键部分,展示模型到标签风格的映射配置COMMAND_A_PLUS_JSON_TAG = CohereTagRegistry(
    trigger="<|START_TEXT|>",
    end="<|END_TEXT|>",
)MODEL_TO_TAG_STYLE: dict[str, CohereTagStyle] = {
    "Cohere2ForCausalLM": CohereTagStyle(
        json_tags=(COMMAND_A_JSON_TAG,), # 仅响应标签
        tools=COMMAND_A_TOOLS_TAG,
    ),
    "Cohere2VisionForConditionalGeneration": CohereTagStyle(
        json_tags=(COMMAND_A_JSON_TAG, COMMAND_A_PLUS_JSON_TAG), # 已有双标签
        tools=COMMAND_A_TOOLS_TAG,
    ),
    # 以下为本次 PR 的变更:为 Cohere2MoeForCausalLM 增加 COMMAND_A_PLUS_JSON_TAG
    "Cohere2MoeForCausalLM": CohereTagStyle(
        json_tags=(COMMAND_A_JSON_TAG, COMMAND_A_PLUS_JSON_TAG), # 新增 <|START_TEXT|> 标签
        tools=COMMAND_A_TOOLS_TAG,
    ),
}

评论区精华

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

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

风险与影响

风险极低。仅修改单个字典条目,属于配置性调整。因为 COMMAND_A_PLUS_JSON_TAG 已在同一文件中预先定义并被其他模型(如 Cohere2VisionForConditionalGeneration)使用,不会引入未定义符号或依赖问题。该变更不会影响其他模型(如 Cohere2ForCausalLMCohere2VisionForConditionalGeneration)的行为。

影响范围小,仅针对 Cohere2MoeForCausalLM 架构模型(如 Command A+)。修复后,该类模型在进行结构化输出解析时能正确识别 <|START_TEXT|><|END_TEXT|> 标签,提升推理结果的完整性和正确性。对用户而言,这是无感的向后兼容修复。

低风险

关联 Issue

未识别关联 Issue

当前没有检测到明确关联的 Issue 链接,后续同步到相关引用后会出现在这里。

完整报告

参与讨论