From 722631bb7497b6797be0f13beafb77e5f29b3342 Mon Sep 17 00:00:00 2001 From: Aurelien Chartier <2567591+achartier@users.noreply.github.com> Date: Thu, 28 May 2026 13:07:53 -0700 Subject: [PATCH] fix: update ray executor import for vLLM 0.20 vLLM 0.20 renamed the executor module from ray_distributed_executor to ray_executor; the class name RayDistributedExecutor and its collective_rpc method are unchanged. Without this fix, any FP8 generation path that goes through monkey_patch_vllm_ray_executor() with TP*PP > 1 (i.e. any multi-GPU vllm_cfg.precision='fp8' run) fails at worker init with: ModuleNotFoundError: No module named 'vllm.v1.executor.ray_distributed_executor' Signed-off-by: Aurelien Chartier <2567591+achartier@users.noreply.github.com> --- nemo_rl/models/generation/vllm/quantization/fp8.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nemo_rl/models/generation/vllm/quantization/fp8.py b/nemo_rl/models/generation/vllm/quantization/fp8.py index fda54d11b2..cb538c8a46 100644 --- a/nemo_rl/models/generation/vllm/quantization/fp8.py +++ b/nemo_rl/models/generation/vllm/quantization/fp8.py @@ -82,7 +82,7 @@ def monkey_patch_vllm_ray_executor(fp8_config): if fp8_config.model_parallel_size > 1: # we patch vllm's collective_rpc so that before vllm initalizes the model on each rank, we execute # a ray remote that patches each worker with the required fp8 vllm patches - from vllm.v1.executor.ray_distributed_executor import RayDistributedExecutor + from vllm.v1.executor.ray_executor import RayDistributedExecutor original_run_workers = RayDistributedExecutor.collective_rpc