Skip to content

transformers>=5.6,<6 下 GLM5 导入不兼容,导致 AngelSlim 全部 CLI 无法启动 #382

Description

@AlpacaKnight

transformers>=5.6,<6 下 GLM5 导入不兼容,导致 AngelSlim 全部 CLI 无法启动

环境

  • AngelSlim: 当前 main 源码安装
  • Python: 3.12.0
  • PyTorch: 2.14.0
  • Transformers: 5.17.0
  • 安装约束:transformers>=5.6.0,<6.0

问题描述

运行任意 AngelSlim CLI 命令时,即使目标模型不是 GLM5(例如 Qwen3 GPTQ),程序也会在全量导入模型注册表时失败:

python tools/run.py --help

报错:

ImportError: cannot import name 'GlmMoeDsaNaiveMoe'
from 'transformers.models.glm_moe_dsa.modeling_glm_moe_dsa'

问题位置:

# angelslim/models/llm/glm5_1.py
from transformers.models.glm_moe_dsa.modeling_glm_moe_dsa import GlmMoeDsaNaiveMoe

在当前 Transformers 5.17.0 中,不存在 GlmMoeDsaNaiveMoe,对应的融合专家模块为 GlmMoeDsaExperts。

由于 angelslim/models/llm/__init__.py 会无条件导入 GLM5_1,该问题会阻断 Engine、tools/run.py,以及所有非 GLM5 的量化流
程。

## 复现步骤

git clone https://github.com/Tencent/AngelSlim.git
cd AngelSlim
# 按项目方式安装依赖与源码
python tools/run.py --help

## 期望行为

- transformers 版本在项目声明范围内时,CLI 应可启动。
- GLM5 的可选适配不应阻断 Qwen、Hunyuan 等其他模型的流程。

## 临时修复

try:
    from transformers.models.glm_moe_dsa.modeling_glm_moe_dsa import (
        GlmMoeDsaNaiveMoe,
    )
except ImportError:
    from transformers.models.glm_moe_dsa.modeling_glm_moe_dsa import (
        GlmMoeDsaExperts,
    )

    GlmMoeDsaNaiveMoe = GlmMoeDsaExperts

该兼容修改后,以下命令均可成功:

python -c "from angelslim import Engine; print('OK')"
python tools/run.py --help

## 建议

建议增加 Transformers API 兼容导入,或者将 GLM5_1 延迟导入,避免可选模型适配阻断整个工具包启动。


`ResourceTracker` 的退出告警是 `multiprocess`/Python 3.12 的独立问题,不建议和这个 Issue 混在一起。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions