[CI] Reducing mithril-h100-pool in ready&merge CI, optimize ready CI duration (#4354)

Signed-off-by: [Your Name] <your.email@example.com>
Signed-off-by: wangyu <410167048@qq.com>
Signed-off-by: wangyu <53896905+yenuo26@users.noreply.github.com>
Signed-off-by: Hongsheng Liu <liuhongsheng4@huawei.com>
Signed-off-by: [Your Name] <[Your Email]>
Co-authored-by: Hongsheng Liu <liuhongsheng4@huawei.com>
This commit is contained in:
wangyuandHongsheng Liu authored and GitHub committed 2026-06-29 05:17:57 +00:00
1 parent e4026a50ad
commit 7619ed6b82
84 files changed
+1718 -2428

No files matched your search

@@ -1,6 +1,6 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-FileCopyrightText: Copyright contributors to the vLLM project
"""HTTP + WebSocket validation for Qwen3-TTS Base: ``/v1/audio/speech``, ``/v1/audio/speech/stream``, batch, voices."""
"""HTTP + WebSocket validation for Qwen3-TTS Base and Higgs Audio V3 ``/v1/audio/speech`` (and related routes)."""
from __future__ import annotations
@@ -57,6 +57,19 @@ _QWEN3_TTS_SPEECH = [
),
]
_HIGGS_AUDIO_V3_SPEECH = [
pytest.param(
OmniServerParams(
model="bosonai/higgs-audio-v3-tts-4b",
stage_config_path=get_deploy_config_path("higgs_multimodal_qwen3.yaml"),
server_args=_SPEECH_SERVER_ARGS,
env_dict={"VLLM_USE_DEEP_GEMM": "0", "VLLM_MOE_USE_DEEP_GEMM": "0"},
),
id="higgs_audio_v3",
marks=_L4_SPEECH_HW,
),
]
def _apply_batch_overrides(body: dict[str, object], *, loc: str, overrides: dict[str, object]) -> None:
if loc == "batch":
@@ -240,6 +253,78 @@ def test_speech_invalid_field_values(
)
# Higgs Audio V3: ``references[]`` cookbook alias and serving-layer 400 rejections.
# Raw HTTP keeps JSON bodies intact (OpenAI SDK strips unknown fields such as ``references``).
@pytest.mark.parametrize(
"extra_json, err_message",
[
pytest.param({"input": "", "response_format": "wav"}, ("input", "empty"), id="input_empty"),
pytest.param({"input": " ", "response_format": "wav"}, ("input", "empty"), id="input_whitespace_only"),
pytest.param(
{"input": "Hello world.", "max_new_tokens": 0}, ("max_new_tokens", "least 1"), id="max_new_tokens_below_min"
),
pytest.param(
{
"input": "Hello world.",
"references": [
{"audio_path": REF_AUDIO_URL, "text": REF_TEXT},
{"audio_path": REF_AUDIO_URL, "text": REF_TEXT},
],
"response_format": "wav",
},
("references", "only supports a single reference"),
id="multi_reference_payload",
),
pytest.param(
{"input": "Hello world.", "references": [], "response_format": "wav"},
("references", "non-empty"),
id="references_empty_array",
),
pytest.param(
{"input": "Hello world.", "references": [{"text": REF_TEXT}], "response_format": "wav"},
("audio_path", "required"),
id="references_missing_audio_path",
),
pytest.param(
{"input": "Hello world.", "references": [1], "response_format": "wav"},
("references[0]", "must be an object"),
id="references_bad_element_type",
),
pytest.param(
{
"input": "Hello world.",
"ref_audio": REF_AUDIO_URL,
"references": [{"audio_path": "https://example.com/other.wav"}],
"response_format": "wav",
},
("mutually exclusive", "ref_audio", "references"),
id="ref_audio_and_references_exclusive",
),
pytest.param(
{
"input": "Hello world.",
"ref_text": "different transcript",
"references": [{"audio_path": REF_AUDIO_URL, "text": REF_TEXT}],
"response_format": "wav",
},
("references[0].text", "ref_text", "conflict"),
id="references_text_conflicts_ref_text",
),
],
)
@pytest.mark.parametrize("omni_server", _HIGGS_AUDIO_V3_SPEECH, indirect=True)
def test_speech_higgs_invalid_field_values(
omni_server: OmniServer,
openai_client: OpenAIClientHandler,
extra_json: dict[str, object],
err_message: str | tuple[str, ...],
) -> None:
body = {"model": omni_server.model, **extra_json}
openai_client.send_audio_speech_http_request(
{"json": body, "timeout": 120, "err_code": 400, "err_message": err_message}
)
# ─────────────────────────────────────────────────────────────────────────────
# POST /v1/audio/speech/batch (JSON)
# ─────────────────────────────────────────────────────────────────────────────