[Bug]: RayExecutorV2 should sanitize inherited Ray runtime_env before creating model workers

这个 bug 发生在使用 vLLM RayExecutorV2 时,外层 Ray 任务携带的 runtime_env(尤其是 worker_process_setup_hook )会被继承到 vLLM 的模型 worker 进程中并在模型加载前执行。 [Bug]: RayExecutorV2 sho

快速结论:这个 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_hookenv_varsworking_dir),结果这些配置被传播到 vLLM 的 RayWorkerProc 子进程中,且执行时机早于分布式初始化和模型加载。该问题由安全测试触发——测试方在 runtime_env 中注入了一个 marker setup hook,观察它是否会进入 vLLM worker 进程。

报错原文</h3

参考来源

vllm-project/vllm #50413

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 16407

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注