A high-throughput and memory-efficient inference and serving engine for LLMs
Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git
Synced Nov 15, 04:45 UTC
[CI/Build] Add new CI job to validate Hybrid Models for every PR (#20147)
Signed-off-by: Thomas Parnell <tpa@zurich.ibm.com>
Thomas Parnell committed
Jun 28, 2025 at 08:00 UTC
8615d9776fb066e3b11284bb9e6871e5d8820463
3 files changed
+16
-1
.buildkite/test-pipeline.yaml
+12
-1
@@ -536,6 +536,17 @@ steps:
536
- pip freeze | grep -E 'torch'
537
- pytest -v -s models/language -m core_model
538
539
+- label: Language Models Test (Hybrid) # 35 min
540
+ mirror_hardwares: [amdexperimental]
541
+ torch_nightly: true
542
+ source_file_dependencies:
543
+ - vllm/
544
+ - tests/models/language/generation
545
+ commands:
546
+ # Install causal-conv1d for plamo2 models here, as it is not compatible with pip-compile.
547
+ - pip install 'git+https://github.com/Dao-AILab/causal-conv1d@v1.5.0.post8'
548
+ - pytest -v -s models/language/generation -m hybrid_model
549
+
550
- label: Language Models Test (Extended Generation) # 1hr20min
551
mirror_hardwares: [amdexperimental]
552
optional: true
@@ -545,7 +556,7 @@ steps:
556
commands:
557
# Install causal-conv1d for plamo2 models here, as it is not compatible with pip-compile.
558
- pip install 'git+https://github.com/Dao-AILab/causal-conv1d@v1.5.0.post8'
548
- - pytest -v -s models/language/generation -m 'not core_model'
559
+ - pytest -v -s models/language/generation -m '(not core_model) and (not hybrid_model)'
560
561
- label: Language Models Test (Extended Pooling) # 36min
562
mirror_hardwares: [amdexperimental]
pyproject.toml
+1
@@ -150,6 +150,7 @@ skip_gitignore = true
150
markers = [
151
"skip_global_cleanup",
152
"core_model: enable this model test in each PR instead of only nightly",
153
+ "hybrid_model: models that contain mamba layers (including pure SSM and hybrid architectures)",
154
"cpu_model: enable this model test in CPU tests",
155
"split: run this test as part of a split",
156
"distributed: run this test only in distributed GPU tests",
tests/models/language/generation/test_hybrid.py
+3
@@ -9,6 +9,9 @@ from vllm.sampling_params import SamplingParams
9
10
from ...utils import check_logprobs_close, check_outputs_equal
11
12
+# Mark all tests as hybrid
13
+pytestmark = pytest.mark.hybrid_model
14
+
15
# NOTE: The first model in each list is taken as the primary model,
16
# meaning that it will be used in all tests in this file
17
# The rest of the models will only be tested by test_models