# PR #45638 完整报告

- 仓库：`vllm-project/vllm`
- 标题：[Model] Remove XverseForCausalLM
- 合并时间：2026-06-15 13:09
- 原文链接：http://prhub.com.cn/vllm-project/vllm/pull/45638

---

# 执行摘要

- 一句话：移除废弃模型 XverseForCausalLM
- 推荐动作：PR 本身简单直接，但可作为清理废弃模型注册表条目的参照模板。值得关注的是 `_PREVIOUSLY_SUPPORTED_MODELS` 机制的设计，它提供了优雅的弃用路径。

# 功能与动机

XverseForCausalLM 自 PR #10814（2024 年 12 月）删除独立实现后，已成为 LlamaForCausalLM 的注册别名。根据 vllm-release 遥测，近 6 个月内该架构仅被加载 38 次，总计 0.028 GPU 小时，实际已无人使用。本变更旨在清理无效的注册条目，并避免用户混淆。

# 实现拆解

1. **从注册表中删除条目 **在 `vllm/model_executor/models/registry.py` 中，从 `_TEXT_GENERATION_MODELS` 字典中移除 `XverseForCausalLM` 行（原指向 `("llama", "LlamaForCausalLM")`）。 
2. **加入已废弃模型列表 **在同一文件的 `_PREVIOUSLY_SUPPORTED_MODELS` 字典中添加 `"XverseForCausalLM": "0.23.0"`，当用户尝试加载时，vLLM 会给出清晰错误，提示该架构已在 v0.23.0 版本后被移除。 
3. **移除测试条目 **从 `tests/models/registry.py` 中删除 `XverseForCausalLM` 的测试示例配置（包含 `xverse/XVERSE-7B-Chat` 检查点及相关 tokenizer 说明）。 
4. **清理注释代码 **删除 `tests/distributed/test_pipeline_parallel.py` 中被注释掉的 `"xverse/XVERSE-7B-Chat": PPTestSettings.fast()` 行。 
5. **更新文档 **从 `docs/models/supported_models.md` 的模型中删除 `XverseForCausalLM` 表格行。

关键文件：
- `vllm/model_executor/models/registry.py`（模块 模型注册表；类别 source；类型 data-contract）: 核心变更文件：从 _TEXT_GENERATION_MODELS 中删除条目，并加入 _PREVIOUSLY_SUPPORTED_MODELS。
- `tests/models/registry.py`（模块 测试；类别 test；类型 test-coverage）: 从测试注册表中删除对应的检查点配置，保持测试与源码一致。
- `tests/distributed/test_pipeline_parallel.py`（模块 测试；类别 test；类型 test-coverage）: 清理被注释掉的 XVERSE 测试行，保持代码整洁。
- `docs/models/supported_models.md`（模块 文档；类别 docs；类型 documentation）: 从支持模型表格中移除 XVERSE 行，同步文档。

关键符号：未识别

## 关键源码片段

### `vllm/model_executor/models/registry.py`

核心变更文件：从 _TEXT_GENERATION_MODELS 中删除条目，并加入 _PREVIOUSLY_SUPPORTED_MODELS。

```python
# 从 _TEXT_GENERATION_MODELS 字典（行 217 附近）中删除该行：
# "XverseForCausalLM": ("llama", "LlamaForCausalLM"),

# 在 _PREVIOUSLY_SUPPORTED_MODELS 字典（行 725 附近）中添加：
_PREVIOUSLY_SUPPORTED_MODELS = {
    # ... 其他废弃模型 ...
    "XverseForCausalLM": "0.23.0",  # 用户尝试加载时会收到清晰错误，并被告知可映射到 LlamaForCausalLM
}

```

# 评论区精华

该 PR 无 review 评论。review 者 ywang96 直接批准（APPROVED）。

- 暂无高价值评论线程

# 风险与影响

- 风险：**兼容性风险**：若仍有用户主动指定 `--hf-overrides architectures='["XverseForCausalLM"]'` 加载 XVERSE 检查点，将因架构不在 `_TEXT_GENERATION_MODELS` 中而报错。但 PR 提供了清晰的替代方案（映射到 LlamaForCausalLM），且遥测数据表明此类用户极少。
**功能风险**：变更仅涉及注册表和测试配置，不触及模型执行或推理逻辑，回归风险极低。

- 影响：**用户影响**：极少数使用 XverseForCausalLM 的用户将收到友好错误提示并被引导至 LlamaForCausalLM。绝大多数用户不受影响。
**系统影响**：无运行时影响。
**团队影响**：降低模型注册表维护负担，与近期清理废弃模型的趋势一致（如 PR #47058 移除冗余 load_weights）。

- 风险标记：低兼容性风险 , 无功能回归风险

# 关联脉络

- PR #10814 [Model] Delete standalone xverse.py implementation: 本 PR 是对 #10814 的后续清理，后者删除了独立的 xverse.py 文件，使 XverseForCausalLM 成为 LlamaForCausalLM 的别名。
- PR #47058 Remove more unnecessary `load_weights` methods: 同属模型清理主题，移除冗余的模型代码以降低维护负担。