在服务器上装的 transformers 4.47 用 AutoModelForCausalLM.from_pretrained 加载本地 Qwen3-8B 目录,报 ValueError: The checkpoint you are trying to load has type qwen3 but Transformers does not recognize this architecture,同一个目录用 vLLM 0.6.4 能正常起服务。
一开始怀疑是「装的是精简发行版,自定义模型实现没打包进去」,查了一圈,方向不对。
原因不止一个,得分开看。4.47 的模型注册表里还没有 qwen3 这个架构。还有一种是本地目录的 config.json 被手工改过,architectures 写错。
少数情况下是没开 trust_remote_code,仓库里的实现没被加载。
上来先确认版本与架构支持情况
python -c "import transformers;print(transformers.__version__)"
升到明确支持该架构的版本
pip install -U transformers==4.51.0
临时允许加载模型自带实现
python load_model.py --path ./Qwen3-8B --trust-remote-code
末了打印实际加载的类名确认
python -c "from transformers import AutoModelForCausalLM;m=AutoModelForCausalLM.from_pretrained('./Qwen3-8B',trust_remote_code=True);print(m.__class__.__name__)"
这台环境是别人交接的,不少默认值被动过,只能一项项核。
别只看报错消失,验证要多做一步。模型能加载并生成一段文本,config 里的 architectures 与实际加载类一致,不再报 model type 不识别。
提醒一点。新架构往往先在主分支支持,稳定版要滞后一两周,急着上线就锁一个明确支持的版本号。拖得越久,排查成本越高,因为现场状态会被后续操作覆盖。
