diff --git a/vllm/platforms/xpu.py b/vllm/platforms/xpu.py index af8979af36643..2d67551eed9f6 100644 --- a/vllm/platforms/xpu.py +++ b/vllm/platforms/xpu.py @@ -159,7 +159,10 @@ class XPUPlatform(Platform): # check and update parallel config parallel_config = vllm_config.parallel_config - parallel_config.worker_cls = "vllm.v1.worker.xpu_worker.XPUWorker" + # Only override worker_cls if it's still the default "auto" + # This allows custom workers (like vllm-omni workers) to be used on XPU + if parallel_config.worker_cls == "auto": + parallel_config.worker_cls = "vllm.v1.worker.xpu_worker.XPUWorker" if vllm_config.kv_transfer_config is not None: vllm_config.kv_transfer_config.enable_permute_local_kv = True