# PR #6873 完整报告

- 仓库：`verl-project/verl`
- 标题：[model] fix: tokenizer.hf_processor: GLM-4V arm uses wrong processor class name (#6814)
- 合并时间：2026-06-29 15:39
- 原文链接：http://prhub.com.cn/verl-project/verl/pull/6873

---

# 执行摘要

- 一句话：修复 GLM-4V processor 类名匹配 bug
- 推荐动作：建议合并，并考虑补充 GLM-4V 的单元测试或 E2E 测试，避免类似回归。

# 功能与动机

训练 GLM-4.1V/GLM-4V 多模态模型时，`hf_processor` 中的类名匹配从未命中，导致 `Glm4vModel` 无法绑定 `get_rope_index`，最终训练失败（Issue #6814）。根因是 `AutoProcessor` 返回的是 `Glm4vProcessor`，而匹配分支写的是 `Glm4vImageProcessor`（它是图像处理器子组件，而非主处理器类）。

# 实现拆解

修改 `verl/utils/tokenizer/tokenizer.py` 中 `hf_processor` 函数的 `match` 语句：将 `case "Glm4vImageProcessor":` 改为 `case "Glm4vProcessor":`，使类名匹配与 `AutoProcessor` 返回的实际类名一致，从而正确执行 `Glm4vModel` 的导入和方法绑定。

关键文件：
- `verl/utils/tokenizer/tokenizer.py`（模块 工具；类别 source；类型 core-logic）: 核心 dispatch 逻辑所在，单行修正直接修复 GLM-4V 训练失败问题。

关键符号：hf_processor

## 关键源码片段

### `verl/utils/tokenizer/tokenizer.py`

核心 dispatch 逻辑所在，单行修正直接修复 GLM-4V 训练失败问题。

```python
# 文件 : verl/utils/tokenizer/tokenizer.py, 函数 : hf_processor
# 原本的 case "Glm4vImageProcessor": 从未匹配，因为 AutoProcessor 返回的是 Glm4vProcessor
# 修正后与其他 VL 分支模式一致
case "Glm4vProcessor":
    from transformers.models.glm4v import Glm4vModel
    model_class = Glm4vModel

```

# 评论区精华

PR 无人工讨论，仅两个 bot 自动审查且均无反对意见。

- 暂无高价值评论线程

# 风险与影响

- 风险：风险极低：单字符级别的类名修正，与 Qwen 等其他 VL 分支模式保持一致。但缺少回归测试覆盖 GLM-4V 的训练流程。
- 影响：直接修复 GLM-4.1V/GLM-4V 多模态模型训练的阻塞问题，对其他模型无影响。
- 风险标记：暂无

# 关联脉络

- 暂无明显关联 PR