[CI] Add nightly CI test cases for the GLM-5 (#7429)

### What this PR does / why we need it?
Add nightly CI test cases for the GLM-5
Add model download for the GLM-5

https://github.com/vllm-project/vllm-ascend/actions/runs/23286178651/job/67710409642#logs
- vLLM version: v0.17.0
- vLLM main:
b31e9326a7
---------
Signed-off-by: liuhaiyang27 <liuhaiyang27@huawei.com>
Signed-off-by: liuhy1213-cell <liuhy1213@gmail.com>
Co-authored-by: liuhaiyang27 <liuhaiyang27@huawei.com>
This commit is contained in:
liuhy1213-cell
2026-03-23 19:14:19 +08:00
committed by GitHub
parent 41dadd4312
commit fb283b5820
5 changed files with 26 additions and 10 deletions

View File

@@ -26,6 +26,7 @@ class SingleNodeConfig:
name: str
model: str
envs: dict[str, Any] = field(default_factory=dict)
special_dependencies: dict[str, Any] = field(default_factory=dict)
prompts: list[str] = field(default_factory=lambda: PROMPTS)
api_keyword_args: dict[str, Any] = field(default_factory=lambda: API_KEYWORD_ARGS)
benchmarks: dict[str, Any] = field(default_factory=dict)
@@ -48,6 +49,8 @@ class SingleNodeConfig:
self.api_keyword_args = API_KEYWORD_ARGS
if self.benchmarks is None:
self.benchmarks = {}
if self.special_dependencies is None:
self.special_dependencies = {}
if self.test_content is None:
self.test_content = []
@@ -100,6 +103,7 @@ class SingleNodeConfigLoader:
"name",
"model",
"envs",
"special_dependencies",
"prompts",
"api_keyword_args",
"benchmarks",
@@ -169,6 +173,7 @@ class SingleNodeConfigLoader:
name=case["name"],
model=case["model"],
envs=case.get("envs", {}),
special_dependencies=case.get("special_dependencies", {}),
server_cmd=full_cmd,
epd_server_cmds=case.get("epd_server_cmds", []),
epd_proxy_args=case.get("epd_proxy_args", []),

View File

@@ -3,6 +3,8 @@ from typing import Any
import openai
import pytest
import subprocess
import sys
from tests.e2e.conftest import DisaggEpdProxy, RemoteEPDServer, RemoteOpenAIServer
from tests.e2e.nightly.single_node.models.scripts.single_node_config import (
@@ -144,6 +146,15 @@ def _run_benchmarks(config: SingleNodeConfig, port: int) -> None:
@pytest.mark.asyncio
@pytest.mark.parametrize("config", configs, ids=[config.name for config in configs])
async def test_single_node(config: SingleNodeConfig) -> None:
# TODO: remove this part after the transformers version upgraded
if config.special_dependencies:
for k, v in config.special_dependencies.items():
command = [
sys.executable,
"-m", "pip", "install",
f"{k}=={v}",
]
subprocess.call(command)
if config.service_mode == "epd":
with (
RemoteEPDServer(vllm_serve_args=config.epd_server_cmds, env_dict=config.envs) as _,