298 lines
12 KiB
YAML
298 lines
12 KiB
YAML
# CUDA CI L2 (`core_model` e2e) plus L1 CPU Simple Test (`core_model and cpu`).
|
|
# Uploaded by Upload Ready Pipeline: PR label `ready`, or main+WEEKLY=1 with --e2e.
|
|
|
|
env:
|
|
VLLM_WORKER_MULTIPROC_METHOD: spawn
|
|
HF_HUB_DOWNLOAD_TIMEOUT: 300
|
|
HF_HUB_ETAG_TIMEOUT: 60
|
|
|
|
steps:
|
|
- group: ":card_index_dividers: Simple Test"
|
|
depends_on: upload-ready-pipeline
|
|
steps:
|
|
- label: "Simple · Model Executor Test"
|
|
timeout_in_minutes: 20
|
|
commands:
|
|
- "pytest -sv tests/model_executor -m 'core_model and cpu'"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Simple · CosyVoice3 Packed Flow Test"
|
|
timeout_in_minutes: 15
|
|
source_file_dependencies:
|
|
- tests/model_executor/models/cosyvoice3/test_cosyvoice3_full_batch.py
|
|
- vllm_omni/model_executor/models/cosyvoice3/
|
|
commands:
|
|
- "pytest -sv tests/model_executor/models/cosyvoice3/test_cosyvoice3_full_batch.py -k packed -m 'core_model and cuda' --run-level=core_model"
|
|
mirror_hardwares: h100_1
|
|
|
|
- label: "Simple · MRV2 FA3 Graph Bounds Test"
|
|
timeout_in_minutes: 15
|
|
source_file_dependencies:
|
|
- tests/worker_v2/test_capture_query_bound_gpu.py
|
|
- tests/worker_v2/test_decode_query_bound_gpu.py
|
|
- vllm_omni/worker_v2/model_states/omni_model_state.py
|
|
commands:
|
|
- "pytest -sv tests/worker_v2/test_capture_query_bound_gpu.py tests/worker_v2/test_decode_query_bound_gpu.py -m 'core_model and cuda and H100' --run-level=core_model"
|
|
mirror_hardwares: h100_1
|
|
|
|
- label: "Simple · Diffusion Test"
|
|
timeout_in_minutes: 30
|
|
commands:
|
|
- "pytest -sv tests/diffusion -m 'core_model and cpu'"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Simple · Engine&Entrypoints Test"
|
|
timeout_in_minutes: 20
|
|
commands:
|
|
- "pytest -sv tests/entrypoints tests/engine -m 'core_model and cpu'"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Simple · Other Test"
|
|
timeout_in_minutes: 20
|
|
commands:
|
|
- "pytest -sv tests/ -m 'core_model and cpu' --ignore=tests/diffusion --ignore=tests/model_executor --ignore=tests/entrypoints --ignore=tests/engine"
|
|
mirror_hardwares: l4_1
|
|
|
|
- group: ":card_index_dividers: Diffusion Test"
|
|
depends_on: upload-ready-pipeline
|
|
steps:
|
|
|
|
- label: "Diffusion · FlashAttention Test"
|
|
timeout_in_minutes: 20
|
|
commands:
|
|
- timeout 15m pytest -s -v tests/diffusion/attention/ -m 'core_model and cuda and L4 and cards_1' --run-level "core_model"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Diffusion · Offloader Test"
|
|
commands:
|
|
- timeout 40m pytest -s -v tests/diffusion/offloader -m "core_model and cuda" --run-level "core_model"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Diffusion · Cache Test"
|
|
commands:
|
|
- timeout 15m pytest -sv tests/diffusion/cache -m 'core_model and cuda' --run-level "core_model"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Diffusion · Batch Test"
|
|
commands:
|
|
- timeout 15m pytest -sv tests/diffusion/batching -m 'core_model and cuda' --run-level "core_model"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Diffusion · Distributed Test · Single-GPU"
|
|
source_file_dependencies: diffusion_distributed_attention
|
|
commands:
|
|
- timeout 20m pytest -sv tests/diffusion/distributed -m 'core_model and cuda and L4 and cards_1' --run-level "core_model"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Diffusion · Distributed Test · 2-GPU"
|
|
source_file_dependencies: diffusion_distributed_attention
|
|
commands:
|
|
- timeout 20m pytest -sv tests/diffusion/distributed -m 'core_model and cuda and L4 and cards_2' --run-level "core_model"
|
|
- timeout 10m pytest -sv tests/diffusion/attention/test_ulysses_uaa.py -m 'core_model and cuda and L4 and cards_2' --run-level "core_model"
|
|
mirror_hardwares: l4_2
|
|
|
|
- label: "Diffusion · Distributed & Attention Test · 4-GPU"
|
|
source_file_dependencies: diffusion_distributed_attention
|
|
commands:
|
|
- timeout 20m pytest -sv tests/diffusion/distributed -m 'core_model and cuda and L4 and cards_4' --run-level "core_model"
|
|
- timeout 20m pytest -sv tests/diffusion/attention/test_attention_sp.py -m 'core_model and cuda and L4 and cards_4' --run-level "core_model"
|
|
mirror_hardwares: l4_4
|
|
|
|
- label: "Diffusion · Model Test"
|
|
commands:
|
|
- timeout 15m pytest -sv tests/diffusion/models/ -m 'core_model and cuda' --run-level "core_model"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Diffusion · Other Test"
|
|
commands:
|
|
- timeout 15m pytest -sv tests/diffusion/*.py tests/diffusion/ar_diffusion tests/diffusion/layers/test_adalayernorm_*.py -m 'core_model and cuda' --run-level "core_model"
|
|
mirror_hardwares: l4_1
|
|
|
|
- group: ":card_index_dividers: Tiny Model Tests [Single GPU]"
|
|
depends_on: upload-ready-pipeline
|
|
steps:
|
|
|
|
- label: "Tiny Model Tests · Diffusion (base)"
|
|
commands:
|
|
- timeout 15m pytest -sv -n 4 tests/model_tests/diffusion -m 'core_model and cuda' --run-level "core_model"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Engine&Model Executor Test"
|
|
depends_on: upload-ready-pipeline
|
|
commands:
|
|
- |
|
|
timeout 15m bash -c "
|
|
pytest -sv tests/engine/ tests/model_executor/ tests/worker/test_batched_omni_output.py tests/worker/test_gpu_generation_async_output.py tests/worker_v2/ -m 'core_model and cuda' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Distributed Test"
|
|
depends_on: upload-ready-pipeline
|
|
commands:
|
|
- |
|
|
timeout 20m bash -c "
|
|
pytest -sv tests/distributed/ -m 'core_model and cuda and L4' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Entrypoints Test"
|
|
depends_on: upload-ready-pipeline
|
|
# Workaround https://github.com/vllm-project/vllm-omni/issues/8016: shutdown()
|
|
# leaves inline UniProc DiffusionWorker VRAM mapped in the pytest parent.
|
|
# Isolate that leftover case in its own process so the driver drops the
|
|
# mapping; the rest stays a directory sweep with --deselect. Revert to a
|
|
# single sweep after the product shutdown fix.
|
|
commands:
|
|
- |
|
|
timeout 30m bash -c "
|
|
set -eu
|
|
export VLLM_WORKER_MULTIPROC_METHOD=spawn
|
|
pytest -sv tests/entrypoints/test_async_omni.py::test_diffusion_generate_request_id -m 'core_model and cuda' --run-level 'core_model'
|
|
pytest -sv tests/entrypoints/ -m 'core_model and cuda' --run-level 'core_model' --deselect tests/entrypoints/test_async_omni.py::test_diffusion_generate_request_id
|
|
"
|
|
mirror_hardwares: l4_1
|
|
|
|
- group: ":card_index_dividers: E2E Test"
|
|
depends_on: upload-ready-pipeline
|
|
steps:
|
|
- label: "Custom Pipeline Test"
|
|
source_file_dependencies: custom_pipeline
|
|
commands:
|
|
- timeout 20m pytest -s -v tests/e2e/features/custom_pipeline/ -m "core_model"
|
|
mirror_hardwares: l4_1
|
|
|
|
|
|
- label: "RLHF · VeRL-Omni E2E Test"
|
|
source_file_dependencies: rlhf_verl_omni
|
|
commands:
|
|
- |
|
|
timeout 20m bash -c "
|
|
pytest -s -v tests/e2e/features/rlhf_test/test_verl_omni_e2e.py
|
|
"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Omni · Qwen3-Omni Test"
|
|
source_file_dependencies: omni_qwen3_omni_function
|
|
commands:
|
|
- |
|
|
timeout 20m bash -c "
|
|
pytest -s -v tests/e2e/online_serving/test_qwen3_omni.py -m 'core_model' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: h100_2
|
|
|
|
- label: "Omni · MiniCPM-o 4.5 Offline Test"
|
|
source_file_dependencies: omni_minicpmo_4_5_function
|
|
commands:
|
|
- |
|
|
timeout 20m bash -c "
|
|
pytest -s -v tests/e2e/offline_inference/test_minicpmo_4_5.py -m 'core_model' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: h100_1
|
|
|
|
- label: "Omni · MiniCPM-o 4.5 Online Test"
|
|
source_file_dependencies: omni_minicpmo_4_5_function
|
|
commands:
|
|
- |
|
|
timeout 20m bash -c "
|
|
pytest -s -v tests/e2e/online_serving/test_minicpmo_4_5.py -m 'core_model' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: h100_1
|
|
|
|
- label: "Omni · MiniCPM-o 4.5 Duplex Test"
|
|
source_file_dependencies: omni_minicpmo_4_5_duplex_function
|
|
commands:
|
|
- |
|
|
timeout 35m bash -c "
|
|
pytest -s -v tests/e2e/online_serving/test_minicpmo_4_5_duplex.py tests/e2e/online_serving/test_duplex_client_live.py -m 'core_model and cuda' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: h100_1
|
|
|
|
- label: "Omni · MiniCPM-o 4.5 Perf Test"
|
|
timeout_in_minutes: 60
|
|
source_file_dependencies: omni_minicpmo_4_5_perf
|
|
commands:
|
|
- export BENCHMARK_DIR=tests/dfx/perf/results
|
|
- pytest -s -v tests/dfx/perf/scripts/run_benchmark.py --test-config-file tests/dfx/perf/tests/test_minicpmo_4_5_ready.json -m 'core_model and cuda'
|
|
mirror_hardwares: h100_1
|
|
|
|
- label: "TTS · Higgs v3 Full Response Test"
|
|
source_file_dependencies:
|
|
- tests/e2e/online_serving/test_higgs_audio_v3.py
|
|
- vllm_omni/model_executor/models/higgs_audio_v3/
|
|
- vllm_omni/model_executor/stage_input_processors/higgs_audio_v3.py
|
|
- vllm_omni/deploy/higgs_multimodal_qwen3.yaml
|
|
commands:
|
|
- timeout 20m pytest -s -v tests/e2e/online_serving/test_higgs_audio_v3.py::test_full_response_v1_preserves_audio -m 'core_model and cuda' --run-level 'core_model'
|
|
mirror_hardwares: h100_1
|
|
|
|
- label: "TTS · Qwen3-TTS CustomVoice Test"
|
|
source_file_dependencies: tts_qwen3_tts_function
|
|
commands:
|
|
- |
|
|
timeout 20m bash -c "
|
|
export VLLM_ALLOW_LONG_MAX_MODEL_LEN=1
|
|
pytest -s -v tests/e2e/online_serving/test_qwen3_tts_customvoice.py -m 'core_model' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: l4_1
|
|
|
|
- label: "Diffusion · Wan22 Test"
|
|
source_file_dependencies: diffusion_wan22_function
|
|
commands:
|
|
- |
|
|
timeout 40m bash -c "
|
|
export VLLM_IMAGE_FETCH_TIMEOUT=60
|
|
pytest -s -v tests/e2e/online_serving/test_wan22_t2v.py -m 'core_model and cuda' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: h100_1
|
|
|
|
- label: "Diffusion · Cosmos3 Test"
|
|
source_file_dependencies: diffusion_cosmos3_function
|
|
commands:
|
|
- |
|
|
timeout 40m bash -c "
|
|
export VLLM_IMAGE_FETCH_TIMEOUT=60
|
|
pytest -s -v tests/e2e/online_serving/test_cosmos3.py -m 'core_model' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: h100_1
|
|
|
|
- label: "Diffusion · MiniMax-H3 DLO DP2 T2VA Test"
|
|
timeout_in_minutes: 90
|
|
source_file_dependencies: diffusion_minimax_h3_function
|
|
commands:
|
|
- |
|
|
timeout 80m bash -c "
|
|
export VLLM_IMAGE_FETCH_TIMEOUT=60
|
|
pytest -s -v tests/e2e/online_serving/test_minimax_h3_dlo_dp2_t2va.py -m 'core_model and cuda and diffusion' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: h100_2
|
|
|
|
- label: "Diffusion · Qwen Image Test"
|
|
source_file_dependencies: diffusion_qwen_image_function
|
|
commands:
|
|
- |
|
|
timeout 40m bash -c "
|
|
export VLLM_IMAGE_FETCH_TIMEOUT=60
|
|
pytest -s -v tests/e2e/online_serving/test_qwen_image.py -m 'core_model' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: h100_1
|
|
|
|
- label: "Diffusion · HunyuanVideo-1.5 Test"
|
|
source_file_dependencies: diffusion_hunyuan_video_function
|
|
commands:
|
|
- |
|
|
timeout 40m bash -c "
|
|
export VLLM_IMAGE_FETCH_TIMEOUT=60
|
|
pytest -s -v tests/e2e/online_serving/test_hunyuan_video_15_expansion.py -m 'core_model and diffusion' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: h100_1
|
|
|
|
- label: "Diffusion · LingBot-Video Test"
|
|
source_file_dependencies: diffusion_lingbot_function
|
|
commands:
|
|
- |
|
|
timeout 40m bash -c "
|
|
export VLLM_IMAGE_FETCH_TIMEOUT=60
|
|
pytest -s -v tests/e2e/online_serving/test_lingbot_video.py -m 'core_model and cuda' --run-level 'core_model'
|
|
"
|
|
mirror_hardwares: h100_1
|