From 850bce0540c01b4b3f6be42e13431c1a93a4cc4a Mon Sep 17 00:00:00 2001 From: wangxiyuan Date: Tue, 14 Jan 2025 10:37:32 +0800 Subject: [PATCH] Do not raise error if _Backend is not found Signed-off-by: wangxiyuan --- vllm/attention/layer.py | 8 ++++---- vllm/attention/selector.py | 9 +++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/vllm/attention/layer.py b/vllm/attention/layer.py index c7e7a4d52e5a7..d657243a5d451 100644 --- a/vllm/attention/layer.py +++ b/vllm/attention/layer.py @@ -194,11 +194,11 @@ def __init__( kv_cache_dtype=None, block_size=16, is_attention_free=False) - attn_backend = backend_name_to_enum(attn_backend.get_name()) - if attn_backend in {_Backend.FLASH_ATTN, _Backend.FLASH_ATTN_VLLM_V1}: - attn_backend = _Backend.XFORMERS + backend = backend_name_to_enum(attn_backend.get_name()) + if backend in {_Backend.FLASH_ATTN, _Backend.FLASH_ATTN_VLLM_V1}: + backend = _Backend.XFORMERS - self.attn_backend = attn_backend if attn_backend in { + self.attn_backend = backend if backend in { _Backend.TORCH_SDPA, _Backend.XFORMERS } else _Backend.TORCH_SDPA diff --git a/vllm/attention/selector.py b/vllm/attention/selector.py index 0ff007c87b1c9..3651d251f76fa 100644 --- a/vllm/attention/selector.py +++ b/vllm/attention/selector.py @@ -14,14 +14,15 @@ logger = init_logger(__name__) -def backend_name_to_enum(backend_name: str) -> _Backend: +def backend_name_to_enum(backend_name: str) -> Optional[_Backend]: assert backend_name is not None backend_members = _Backend.__members__ if backend_name not in backend_members: - raise ValueError(f"Invalid attention backend '{backend_name}'. " - f"Available backends: {', '.join(backend_members)} " - "(case-sensitive).") + logger.warning( + "Invalid attention backend %s. Available backends: {%s} " + "(case-sensitive).", backend_name, ', '.join(backend_members)) + return None return _Backend[backend_name]