快速结论:这个 bug 发生在使用 vLLM RayExecutorV2 时,外层 Ray 任务携带的 runtime_env(尤其是 worker_process_setup_hook)会被继承到 vLLM 的模型 worker 进程中并在模型加载前执行。[Bug]: RayExecutorV2 should sanitize inherited Ray runtime_env before creating model workers 优先排查你提交 Ray 任务时是否在 runtime_env 里配置了 setup hook、环境变量或工作目录。
适用环境:vLLM(RayExecutorV2 执行器)+ Ray 集群;Issue 实测环境为 Ubuntu 20.04.6 LTS、Python 3.10.20、PyTorch 2.11.0+cu128、CUDA 12.8.93、NVIDIA GeForce RTX 4090、驱动 570.133.20。
最快修复方案:暂无确认的一步修复方案。可优先尝试的方向是:在创建 vLLM worker 前清理继承的 runtime_env——PoC 验证了在 ray.init(...) 和 RayWorkerProc.options(...) 之前 sanitize runtime_env 可以阻断 hook 进入 vLLM worker。
注意事项:该 sanitize 方案来自 Issue 讨论中的 PoC 验证,不代表官方正式补丁;Issue 已关闭但未提供明确的用户侧 workaround。清理 runtime_env 可能影响其他依赖环境变量的 Ray 任务,改动前需确认外层任务没有依赖这些变量。
问题场景
用户在多节点 Ray 集群上使用 vLLM 的 RayExecutorV2 启动模型推理任务。外层 Ray 任务设置了 runtime_env(例如 worker_process_setup_hook、env_vars、working_dir),结果这些配置被传播到 vLLM 的 RayWorkerProc 子进程中,且执行时机早于分布式初始化和模型加载。该问题由安全测试触发——测试方在 runtime_env 中注入了一个 marker setup hook,观察它是否会进入 vLLM worker 进程。
报错原文</h3
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。


