我自己做了一个老滚5的自动翻译软件,模型采用Qwen3-32B-AWQ,用我自己为RTX5090编译的0.8.5dev948(或A5000跑官方版本0.8.5),都是正常的,翻译质量也很高。
但是更改为0.9.0以后,翻译经常错乱,输出的结果不知所谓。
翻译软件并没有做任何参数调整。Qwen3-32B-AWQ在调用时填写:
temperature = 0.6
top_k = 20
min_p = 0.0
top_p = 0.95
vLLM启动命令:
VLLM_ATTENTION_BACKEND=FLASHINFER vllm serve ~/models/Qwen3-32B-AWQ
–served-model-name Qwen3-32B
–api-key aiai
–seed 3407
–disable-log-requests
–gpu-memory-utilization 0.98
–host 0.0.0.0 --port 6006
–max-model-len 40800
–dtype bfloat16
–trust-remote-code
–max-num-seqs 256
模型开启了YaRN:
{
...,
"rope_scaling": {
"rope_type": "yarn",
"factor": 2.0,
"original_max_position_embeddings": 32768
}
根据你的描述,Qwen3-32B-AWQ在vLLM 0.8.5及以下版本表现正常,但升级到0.9.0后翻译输出经常混乱且结果不通顺,且未调整任何参数。根据vLLM官方文档,v0.8.0及以后版本默认采样参数来源于模型作者提供的generation_config.json,而不是vLLM自身的中性默认值,这可能导致部分模型在新版本下生成质量下降。你可以尝试在vLLM启动时加上--generation-config vllm
参数,强制使用vLLM默认采样参数,看是否能恢复原有翻译质量(详见官方troubleshooting文档 )。
此外,YaRN扩展窗口机制在vLLM中为静态实现,开启后会有15-20%的性能下降,但不会直接导致输出混乱。如果仅升级vLLM版本后出现问题,建议优先排查采样参数和generation_config的变化。相关说明 。
需要更详细的排查步骤或参数调整建议吗?
Sources:
RunLLM:
–generation-config vllm
添加–generation-config vllm并没有本质区别,还是会出现混乱。
我猜测是因为在自己的代码中强制使用了Qwen3的参数:
temperature = 0.6
top_k = 20
min_p = 0.0
top_p = 0.95
于是我在代码中屏蔽掉这些参数后也并没有改善。新测试结果:
你在vLLM 0.9.0中即使加了--generation-config vllm
,并且在代码中屏蔽了Qwen3的采样参数(如temperature、top_k、top_p等),但输出依然混乱,没有改善。根据官方文档,vLLM 0.8.0及以后版本采样参数优先级为:API/代码传入 > 启动参数 > generation_config.json > vLLM默认值。如果你在API或代码层没有传递采样参数,且--generation-config vllm
已指定,理论上应使用vLLM默认参数,输出应与0.8.5一致。
但如果依然混乱,说明问题可能不在采样参数,而是vLLM 0.9.0本身对Qwen3-32B-AWQ支持存在兼容性或推理实现差异。社区有类似反馈,部分模型在0.9.0及以上版本表现异常,建议回退到0.8.5或等待官方修复。相关讨论 。
需要进一步分析日志或尝试其他参数组合吗?
Sources:
我近期做了多次代码编译(git clone主分支):
0.8.5dev948、0.9.1dev、0.9.0dev等。
其中0.8.5dev948、0.9.1dev都是正常的。
0.9.0dev和本次发布的0.9.0官方版本输出结果都是混乱的。
根据你的测试,0.8.5dev948和0.9.1dev分支编译的vLLM都能正常输出,但0.9.0dev和0.9.0官方正式版输出混乱。说明0.9.0主分支存在影响推理质量的bug,而该问题在0.9.1dev已被修复,0.8.5dev948也未受影响。
这种情况在社区有类似反馈,部分模型在0.9.0正式版表现异常,建议直接使用0.9.1dev或0.8.5系列,避免0.9.0正式版。相关讨论 。需要进一步分析具体commit差异或定位bug原因吗?
Sources:
基本确认是0.9.0推理出现了问题。已回退到0.8.5dev948。
谢谢回复。后续如需配合,请回复我。
你的判断是正确的,vLLM 0.9.0确实存在推理输出异常的问题,回退到0.8.5dev948是有效的解决办法。社区也有类似反馈,建议暂时避免使用0.9.0正式版,优先选择0.8.5或0.9.1dev等已验证正常的版本。相关讨论 。
如后续有新需求或需要协助,请随时联系。需要更详细的版本兼容性分析或升级建议吗?
Sources:
Hi, thank you for your feedback. I recently updated the awq marlin kernel, which may cause this issue, could you provide the commit id of 0.8.5dev948、0.9.1dev and 0.9.0dev.
RunLLM
May 30, 2025, 4:10pm
10
虽然我无法直接给出每个dev版本的commit id,但根据官方说明 和安装文档 ,vLLM的每个commit都可以通过主分支历史查找。你可以在GitHub主仓库的commits页面 查找0.8.5dev948、0.9.1dev、0.9.0dev的具体commit id。
如果需要精确定位某个dev版本的commit id,建议在本地用如下命令查找tag或分支对应的commit:
git fetch --all
git log --oneline --decorate
如需进一步协助定位commit id,请告知具体需求。
Sources: