From 46da48782941020f68e31c30681a96f35d378970 Mon Sep 17 00:00:00 2001 From: Akihiko Kuroda Date: Sat, 31 Jan 2026 09:19:20 -0500 Subject: [PATCH] fix vllm test skip Signed-off-by: Akihiko Kuroda --- mellea/backends/vllm.py | 21 ++++++++++++++------- test/backends/test_vllm.py | 19 +++++++++++++------ test/backends/test_vllm_tools.py | 17 ++++++++++++----- 3 files changed, 39 insertions(+), 18 deletions(-) diff --git a/mellea/backends/vllm.py b/mellea/backends/vllm.py index 4ba2efe3c..2e1fa018b 100644 --- a/mellea/backends/vllm.py +++ b/mellea/backends/vllm.py @@ -16,13 +16,20 @@ from collections.abc import Callable, Sequence from typing import Any, overload -import msgspec -import outlines -import outlines_core -import torch -import vllm -from transformers import AutoTokenizer -from transformers.tokenization_utils_base import PreTrainedTokenizerBase +try: + import msgspec + import outlines + import outlines_core + import torch + import vllm + from transformers import AutoTokenizer + from transformers.tokenization_utils_base import PreTrainedTokenizerBase +except ImportError as e: + raise ImportError( + "vLLM backend dependencies are not installed. " + "Please install with: pip install mellea[vllm]\n" + "Note: vLLM is not supported on macOS. Use other backends like Ollama or HuggingFace instead." + ) from e from ..backends import ModelIdentifier from ..core import ( diff --git a/test/backends/test_vllm.py b/test/backends/test_vllm.py index c4f49a204..99bbef2bd 100644 --- a/test/backends/test_vllm.py +++ b/test/backends/test_vllm.py @@ -18,12 +18,19 @@ ), ] -import mellea.backends.model_ids as model_ids -from mellea import MelleaSession -from mellea.backends import ModelOption -from mellea.backends.vllm import LocalVLLMBackend -from mellea.core import CBlock -from mellea.stdlib.context import ChatContext, SimpleContext +# Try to import vLLM backend - skip all tests if not available +try: + import mellea.backends.model_ids as model_ids + from mellea import MelleaSession + from mellea.backends import ModelOption + from mellea.backends.vllm import LocalVLLMBackend + from mellea.core import CBlock + from mellea.stdlib.context import ChatContext, SimpleContext +except ImportError as e: + pytest.skip( + f"vLLM backend not available: {e}. Install with: pip install mellea[vllm]", + allow_module_level=True, + ) @pytest.fixture(scope="module") diff --git a/test/backends/test_vllm_tools.py b/test/backends/test_vllm_tools.py index db8a511f3..a59ad7e87 100644 --- a/test/backends/test_vllm_tools.py +++ b/test/backends/test_vllm_tools.py @@ -16,11 +16,18 @@ ), ] -import mellea.backends.model_ids as model_ids -from mellea import MelleaSession -from mellea.backends import ModelOption -from mellea.backends.vllm import LocalVLLMBackend -from mellea.stdlib.context import ChatContext +# Try to import vLLM backend - skip all tests if not available +try: + import mellea.backends.model_ids as model_ids + from mellea import MelleaSession + from mellea.backends import ModelOption + from mellea.backends.vllm import LocalVLLMBackend + from mellea.stdlib.context import ChatContext +except ImportError as e: + pytest.skip( + f"vLLM backend not available: {e}. Install with: pip install mellea[vllm]", + allow_module_level=True, + ) @pytest.fixture(scope="module")