@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / 8615d9776f
Fork 0

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