[diffusion] CI: deprecate WarmupRunner in CI (#18038)
Co-authored-by: Mick <mickjagger19@icloud.com>
This commit is contained in:
@@ -186,7 +186,9 @@ class GPUWorker:
|
||||
|
||||
# TODO: extract to avoid duplication
|
||||
if req.perf_dump_path is not None or envs.SGLANG_DIFFUSION_STAGE_LOGGING:
|
||||
PerformanceLogger.log_request_summary(timings=output_batch.timings)
|
||||
# Avoid logging warmup perf records that share the same request_id.
|
||||
if not req.is_warmup:
|
||||
PerformanceLogger.log_request_summary(timings=output_batch.timings)
|
||||
except Exception as e:
|
||||
logger.error(
|
||||
f"Error executing request {req.request_id}: {e}", exc_info=True
|
||||
|
||||
@@ -10,8 +10,6 @@ from openai import OpenAI
|
||||
|
||||
from sglang.multimodal_gen.test.server.test_server_utils import (
|
||||
ServerManager,
|
||||
WarmupRunner,
|
||||
download_image_from_url,
|
||||
get_generate_fn,
|
||||
)
|
||||
from sglang.multimodal_gen.test.server.testcase_configs import (
|
||||
@@ -20,7 +18,6 @@ from sglang.multimodal_gen.test.server.testcase_configs import (
|
||||
)
|
||||
from sglang.multimodal_gen.test.test_utils import (
|
||||
get_dynamic_server_port,
|
||||
is_image_url,
|
||||
wait_for_req_perf_record,
|
||||
)
|
||||
|
||||
@@ -68,8 +65,8 @@ def _build_server_extra_args(case: DiffusionTestCase) -> str:
|
||||
a += f" --ring-degree {server_args.ring_degree}"
|
||||
if server_args.lora_path:
|
||||
a += f" --lora-path {server_args.lora_path}"
|
||||
if server_args.enable_warmup:
|
||||
a += " --enable-warmup"
|
||||
if server_args.warmup:
|
||||
a += " --warmup"
|
||||
return a
|
||||
|
||||
|
||||
@@ -110,35 +107,6 @@ def _run_case(case: DiffusionTestCase) -> dict:
|
||||
try:
|
||||
sp = case.sampling_params
|
||||
output_size = os.environ.get("SGLANG_TEST_OUTPUT_SIZE", sp.output_size)
|
||||
w = WarmupRunner(
|
||||
port=ctx.port,
|
||||
model=case.server_args.model_path,
|
||||
prompt=sp.prompt or "A colorful raccoon icon",
|
||||
output_size=output_size,
|
||||
output_format=sp.output_format,
|
||||
)
|
||||
if case.server_args.warmup > 0:
|
||||
if sp.image_path and sp.prompt:
|
||||
image_path_list = sp.image_path
|
||||
if not isinstance(image_path_list, list):
|
||||
image_path_list = [image_path_list]
|
||||
new_image_path_list = []
|
||||
for p in image_path_list:
|
||||
if is_image_url(p):
|
||||
new_image_path_list.append(download_image_from_url(str(p)))
|
||||
else:
|
||||
pp = Path(p)
|
||||
if not pp.exists():
|
||||
raise FileNotFoundError(str(pp))
|
||||
new_image_path_list.append(pp)
|
||||
w.run_edit_warmups(
|
||||
count=case.server_args.warmup,
|
||||
edit_prompt=sp.prompt,
|
||||
image_path=new_image_path_list,
|
||||
)
|
||||
else:
|
||||
w.run_text_warmups(case.server_args.warmup)
|
||||
|
||||
client = _openai_client(ctx.port)
|
||||
gen = get_generate_fn(
|
||||
model_path=case.server_args.model_path,
|
||||
|
||||
@@ -31,11 +31,7 @@
|
||||
0.6,
|
||||
0.8,
|
||||
1.0
|
||||
],
|
||||
"warmup_requests": {
|
||||
"text": 1,
|
||||
"image_edit": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
"scenarios": {
|
||||
"qwen_image_t2i": {
|
||||
@@ -53,7 +49,7 @@
|
||||
"DecodingStage": 751.1
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 1077.77,
|
||||
"0": 400.06,
|
||||
"1": 345.13,
|
||||
"2": 413.8,
|
||||
"3": 405.49,
|
||||
@@ -182,8 +178,8 @@
|
||||
"DecodingStage": 653.03
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 165.27,
|
||||
"1": 58.88,
|
||||
"0": 58.88,
|
||||
"1": 165.27,
|
||||
"2": 166.85,
|
||||
"3": 166.51,
|
||||
"4": 166.77,
|
||||
@@ -249,8 +245,8 @@
|
||||
"DecodingStage": 489.8
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 511.3,
|
||||
"1": 132.57,
|
||||
"0": 68.7,
|
||||
"1": 511.3,
|
||||
"2": 541.19,
|
||||
"3": 518.93,
|
||||
"4": 541.2,
|
||||
@@ -470,8 +466,8 @@
|
||||
"DecodingStage": 381.56
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 166.27,
|
||||
"1": 59.6,
|
||||
"0": 73.27,
|
||||
"1": 166.6,
|
||||
"2": 167.31,
|
||||
"3": 168.7,
|
||||
"4": 168.83,
|
||||
@@ -703,56 +699,56 @@
|
||||
"DecodingStage": 52.24
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 239.28,
|
||||
"1": 285.07,
|
||||
"2": 286.65,
|
||||
"3": 299.09,
|
||||
"4": 191.11,
|
||||
"5": 101.8,
|
||||
"6": 51.77,
|
||||
"7": 147.26,
|
||||
"8": 101.68,
|
||||
"9": 51.4,
|
||||
"10": 150.58,
|
||||
"11": 106.56,
|
||||
"12": 53.7,
|
||||
"13": 7.33,
|
||||
"14": 148.41,
|
||||
"15": 102.08,
|
||||
"16": 52.04,
|
||||
"17": 7.3,
|
||||
"18": 145.91,
|
||||
"19": 100.31,
|
||||
"20": 51.68,
|
||||
"21": 7.27,
|
||||
"22": 145.92,
|
||||
"23": 104.35,
|
||||
"24": 54.33,
|
||||
"25": 7.46,
|
||||
"26": 150.96,
|
||||
"27": 104.39,
|
||||
"28": 53.21,
|
||||
"29": 7.22,
|
||||
"30": 148.3,
|
||||
"31": 102.06,
|
||||
"32": 51.88,
|
||||
"33": 7.31,
|
||||
"34": 145.8,
|
||||
"35": 101.95,
|
||||
"36": 52.15,
|
||||
"37": 7.42,
|
||||
"38": 148.87,
|
||||
"39": 103.01,
|
||||
"40": 52.21,
|
||||
"41": 7.28,
|
||||
"42": 147.39,
|
||||
"43": 103.89,
|
||||
"44": 51.44,
|
||||
"45": 7.12,
|
||||
"46": 144.78,
|
||||
"47": 100.34,
|
||||
"48": 195.54,
|
||||
"49": 246.97
|
||||
"0": 227.68,
|
||||
"1": 277.41,
|
||||
"2": 276.7,
|
||||
"3": 291.52,
|
||||
"4": 52.8,
|
||||
"5": 6.58,
|
||||
"6": 231.58,
|
||||
"7": 52.55,
|
||||
"8": 7.69,
|
||||
"9": 230.59,
|
||||
"10": 52.58,
|
||||
"11": 7.14,
|
||||
"12": 6.95,
|
||||
"13": 234.71,
|
||||
"14": 53.28,
|
||||
"15": 7.09,
|
||||
"16": 6.63,
|
||||
"17": 233.93,
|
||||
"18": 52.71,
|
||||
"19": 6.64,
|
||||
"20": 6.5,
|
||||
"21": 231.37,
|
||||
"22": 52.28,
|
||||
"23": 6.61,
|
||||
"24": 6.48,
|
||||
"25": 232.86,
|
||||
"26": 54.92,
|
||||
"27": 7.51,
|
||||
"28": 7.19,
|
||||
"29": 233.51,
|
||||
"30": 52.97,
|
||||
"31": 6.72,
|
||||
"32": 7.02,
|
||||
"33": 233.14,
|
||||
"34": 52.47,
|
||||
"35": 6.66,
|
||||
"36": 6.52,
|
||||
"37": 233.84,
|
||||
"38": 51.49,
|
||||
"39": 6.87,
|
||||
"40": 6.74,
|
||||
"41": 233.75,
|
||||
"42": 52.65,
|
||||
"43": 6.62,
|
||||
"44": 6.55,
|
||||
"45": 233.45,
|
||||
"46": 52.33,
|
||||
"47": 6.55,
|
||||
"48": 232.58,
|
||||
"49": 52.84
|
||||
},
|
||||
"expected_e2e_ms": 5982.78,
|
||||
"expected_avg_denoise_ms": 104.84,
|
||||
@@ -770,7 +766,7 @@
|
||||
"per_frame_generation": null
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 879.71,
|
||||
"0": 240.71,
|
||||
"1": 248.13,
|
||||
"2": 246.48,
|
||||
"3": 247.87,
|
||||
@@ -837,7 +833,7 @@
|
||||
"per_frame_generation": null
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 879.71,
|
||||
"0": 224.71,
|
||||
"1": 248.13,
|
||||
"2": 246.48,
|
||||
"3": 247.87,
|
||||
@@ -971,7 +967,7 @@
|
||||
"per_frame_generation": null
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 1069.91,
|
||||
"0": 266.91,
|
||||
"1": 211.32,
|
||||
"2": 206.59,
|
||||
"3": 208.12,
|
||||
@@ -1237,22 +1233,22 @@
|
||||
"fastwan2_2_ti2v_5b": {
|
||||
"stages_ms": {
|
||||
"InputValidationStage": 300.00,
|
||||
"TextEncodingStage": 2327.87,
|
||||
"TextEncodingStage": 843.86,
|
||||
"ConditioningStage": 0.01,
|
||||
"TimestepPreparationStage": 58.66,
|
||||
"LatentPreparationStage": 28.55,
|
||||
"DmdDenoisingStage": 4438.3,
|
||||
"DecodingStage": 14177.77,
|
||||
"DmdDenoisingStage": 499.34,
|
||||
"DecodingStage": 1924.01,
|
||||
"per_frame_generation": null
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 2022.21,
|
||||
"1": 1263.17,
|
||||
"2": 1149.59
|
||||
"0": 164.76,
|
||||
"1": 165.6,
|
||||
"2": 165.84
|
||||
},
|
||||
"expected_e2e_ms": 21133.36,
|
||||
"expected_avg_denoise_ms": 1478.32,
|
||||
"expected_median_denoise_ms": 1263.17
|
||||
"expected_e2e_ms": 7722.91,
|
||||
"expected_avg_denoise_ms": 165.42,
|
||||
"expected_median_denoise_ms": 165.66
|
||||
},
|
||||
"fast_hunyuan_video": {
|
||||
"stages_ms": {
|
||||
@@ -1266,12 +1262,12 @@
|
||||
"per_frame_generation": null
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 2518.62,
|
||||
"1": 578.59,
|
||||
"2": 1485.76,
|
||||
"3": 1490.86,
|
||||
"4": 1489.93,
|
||||
"5": 1487.02
|
||||
"0": 485.99,
|
||||
"1": 1399.84,
|
||||
"2": 1399.91,
|
||||
"3": 1397.79,
|
||||
"4": 1400.61,
|
||||
"5": 1402.53
|
||||
},
|
||||
"expected_e2e_ms": 16672.15,
|
||||
"expected_avg_denoise_ms": 1608.46,
|
||||
@@ -1290,7 +1286,7 @@
|
||||
"per_frame_generation": null
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 15659.6,
|
||||
"0": 1525.6,
|
||||
"1": 1582.6,
|
||||
"2": 1597.84,
|
||||
"3": 1601.34,
|
||||
@@ -1687,7 +1683,7 @@
|
||||
"per_frame_generation": null
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 1964.07,
|
||||
"0": 233.29,
|
||||
"1": 265.02,
|
||||
"2": 257.83,
|
||||
"3": 260.27,
|
||||
@@ -1756,7 +1752,7 @@
|
||||
"per_frame_generation": null
|
||||
},
|
||||
"denoise_step_ms": {
|
||||
"0": 7828.3,
|
||||
"0": 6680.62,
|
||||
"1": 3765.8,
|
||||
"2": 3774.63,
|
||||
"3": 3772.93,
|
||||
|
||||
@@ -8,7 +8,6 @@ If the actual run is significantly better than the baseline, the improved cases
|
||||
from __future__ import annotations
|
||||
|
||||
import os
|
||||
from pathlib import Path
|
||||
from typing import Any, Callable
|
||||
|
||||
import openai
|
||||
@@ -25,8 +24,6 @@ from sglang.multimodal_gen.test.server.test_server_utils import (
|
||||
PerformanceValidator,
|
||||
ServerContext,
|
||||
ServerManager,
|
||||
WarmupRunner,
|
||||
download_image_from_url,
|
||||
get_generate_fn,
|
||||
)
|
||||
from sglang.multimodal_gen.test.server.testcase_configs import (
|
||||
@@ -37,7 +34,6 @@ from sglang.multimodal_gen.test.server.testcase_configs import (
|
||||
)
|
||||
from sglang.multimodal_gen.test.test_utils import (
|
||||
get_dynamic_server_port,
|
||||
is_image_url,
|
||||
wait_for_req_perf_record,
|
||||
)
|
||||
|
||||
@@ -91,8 +87,8 @@ def diffusion_server(case: DiffusionTestCase) -> ServerContext:
|
||||
if server_args.lora_path:
|
||||
extra_args += f" --lora-path {server_args.lora_path}"
|
||||
|
||||
if server_args.enable_warmup:
|
||||
extra_args += f" --enable-warmup"
|
||||
if server_args.warmup:
|
||||
extra_args += f" --warmup"
|
||||
|
||||
# Build custom environment variables
|
||||
env_vars = {}
|
||||
@@ -115,41 +111,6 @@ def diffusion_server(case: DiffusionTestCase) -> ServerContext:
|
||||
output_size = os.environ.get(
|
||||
"SGLANG_TEST_OUTPUT_SIZE", sampling_params.output_size
|
||||
)
|
||||
warmup = WarmupRunner(
|
||||
port=ctx.port,
|
||||
model=server_args.model_path,
|
||||
prompt=sampling_params.prompt or "A colorful raccoon icon",
|
||||
output_size=output_size,
|
||||
output_format=sampling_params.output_format,
|
||||
)
|
||||
if server_args.warmup > 0:
|
||||
if sampling_params.image_path and case.sampling_params.prompt:
|
||||
# Handle URL or local path
|
||||
image_path_list = sampling_params.image_path
|
||||
if not isinstance(image_path_list, list):
|
||||
image_path_list = [image_path_list]
|
||||
|
||||
new_image_path_list = []
|
||||
for image_path in image_path_list:
|
||||
if is_image_url(image_path):
|
||||
new_image_path_list.append(
|
||||
download_image_from_url(str(image_path))
|
||||
)
|
||||
else:
|
||||
path_obj = Path(image_path)
|
||||
if not path_obj.exists():
|
||||
pytest.skip(f"{case.id}: file missing: {image_path}")
|
||||
new_image_path_list.append(path_obj)
|
||||
|
||||
image_path_list = new_image_path_list
|
||||
|
||||
warmup.run_edit_warmups(
|
||||
count=server_args.warmup,
|
||||
edit_prompt=sampling_params.prompt,
|
||||
image_path=image_path_list,
|
||||
)
|
||||
else:
|
||||
warmup.run_text_warmups(server_args.warmup)
|
||||
except Exception as exc:
|
||||
logger.error("Warm-up failed for %s: %s", case.id, exc)
|
||||
ctx.cleanup()
|
||||
|
||||
@@ -18,7 +18,7 @@ from typing import Any, Callable, Sequence
|
||||
from urllib.request import urlopen
|
||||
|
||||
import pytest
|
||||
from openai import Client, OpenAI
|
||||
from openai import Client
|
||||
|
||||
from sglang.multimodal_gen.benchmarks.compare_perf import calculate_upper_bound
|
||||
from sglang.multimodal_gen.runtime.platforms import current_platform
|
||||
@@ -451,81 +451,6 @@ class ServerManager:
|
||||
return ""
|
||||
|
||||
|
||||
class WarmupRunner:
|
||||
"""Handles warmup requests for a server."""
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
port: int,
|
||||
model: str,
|
||||
prompt: str,
|
||||
output_size: str,
|
||||
output_format: str = None,
|
||||
):
|
||||
self.client = OpenAI(
|
||||
api_key="sglang-anything",
|
||||
base_url=f"http://localhost:{port}/v1",
|
||||
)
|
||||
self.model = model
|
||||
self.prompt = prompt
|
||||
self.output_size = output_size
|
||||
self.output_format = output_format
|
||||
|
||||
def run_text_warmups(self, count: int) -> None:
|
||||
"""Run text-to-image warmup requests."""
|
||||
if count <= 0:
|
||||
return
|
||||
|
||||
logger.info("[server-test] Running %s text warm-up(s)", count)
|
||||
for _ in range(count):
|
||||
result = self.client.images.generate(
|
||||
model=self.model,
|
||||
prompt=self.prompt,
|
||||
n=1,
|
||||
size=self.output_size,
|
||||
response_format="b64_json",
|
||||
)
|
||||
validate_image(result.data[0].b64_json)
|
||||
|
||||
def run_edit_warmups(
|
||||
self,
|
||||
count: int,
|
||||
edit_prompt: str,
|
||||
image_path: Path,
|
||||
) -> None:
|
||||
"""Run image-edit warmup requests."""
|
||||
if count <= 0:
|
||||
return
|
||||
|
||||
if not isinstance(image_path, list):
|
||||
image_path = [image_path]
|
||||
|
||||
for image in image_path:
|
||||
if not image.exists():
|
||||
logger.warning(
|
||||
"[server-test] Skipping edit warmup: image missing at %s", image
|
||||
)
|
||||
return
|
||||
|
||||
logger.info("[server-test] Running %s edit warm-up(s)", count)
|
||||
for _ in range(count):
|
||||
images = [open(image, "rb") for image in image_path]
|
||||
try:
|
||||
result = self.client.images.edit(
|
||||
model=self.model,
|
||||
image=images,
|
||||
prompt=edit_prompt,
|
||||
n=1,
|
||||
size=self.output_size,
|
||||
response_format="b64_json",
|
||||
output_format=self.output_format,
|
||||
)
|
||||
finally:
|
||||
for img in images:
|
||||
img.close()
|
||||
validate_image(result.data[0].b64_json)
|
||||
|
||||
|
||||
class PerformanceValidator:
|
||||
"""Validates performance metrics against expectations."""
|
||||
|
||||
|
||||
@@ -98,7 +98,6 @@ class BaselineConfig:
|
||||
|
||||
scenarios: dict[str, ScenarioConfig]
|
||||
step_fractions: Sequence[float]
|
||||
warmup_defaults: dict[str, int]
|
||||
tolerances: ToleranceConfig
|
||||
improvement_threshold: float
|
||||
|
||||
@@ -127,7 +126,6 @@ class BaselineConfig:
|
||||
return cls(
|
||||
scenarios=scenarios,
|
||||
step_fractions=tuple(data["sampling"]["step_fractions"]),
|
||||
warmup_defaults=data["sampling"].get("warmup_requests", {}),
|
||||
tolerances=tolerances,
|
||||
improvement_threshold=data.get("improvement_reporting", {}).get(
|
||||
"threshold", 0.2
|
||||
@@ -142,7 +140,6 @@ class DiffusionServerArgs:
|
||||
model_path: str # HF repo or local path
|
||||
modality: str = "image" # "image" or "video" or "3d"
|
||||
|
||||
warmup: int = 1 # number of warmup requests
|
||||
custom_validator: str | None = None # optional custom validator name
|
||||
# resources
|
||||
num_gpus: int = 1
|
||||
@@ -161,7 +158,7 @@ class DiffusionServerArgs:
|
||||
None # Second LoRA adapter path for multi-LoRA testing
|
||||
)
|
||||
# misc
|
||||
enable_warmup: bool = False
|
||||
warmup: bool = False
|
||||
|
||||
dit_layerwise_offload: bool = False
|
||||
dit_offload_prefetch_size: int | float | None = None
|
||||
@@ -325,6 +322,7 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Qwen/Qwen-Image",
|
||||
modality="image",
|
||||
warmup=True,
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
@@ -334,22 +332,21 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
|
||||
model_path="Qwen/Qwen-Image",
|
||||
modality="image",
|
||||
enable_cache_dit=True,
|
||||
warmup=True,
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
DiffusionTestCase(
|
||||
"flux_image_t2i",
|
||||
DiffusionServerArgs(
|
||||
model_path="black-forest-labs/FLUX.1-dev",
|
||||
modality="image",
|
||||
model_path="black-forest-labs/FLUX.1-dev", modality="image", warmup=True
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
DiffusionTestCase(
|
||||
"flux_2_image_t2i",
|
||||
DiffusionServerArgs(
|
||||
model_path="black-forest-labs/FLUX.2-dev",
|
||||
modality="image",
|
||||
model_path="black-forest-labs/FLUX.2-dev", modality="image", warmup=True
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
@@ -358,6 +355,7 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
|
||||
DiffusionServerArgs(
|
||||
model_path="black-forest-labs/FLUX.2-klein-4B",
|
||||
modality="image",
|
||||
warmup=True,
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
@@ -371,21 +369,21 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
|
||||
modality="image",
|
||||
dit_layerwise_offload=True,
|
||||
dit_offload_prefetch_size=2,
|
||||
warmup=True,
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
DiffusionTestCase(
|
||||
"zimage_image_t2i",
|
||||
DiffusionServerArgs(
|
||||
model_path="Tongyi-MAI/Z-Image-Turbo",
|
||||
modality="image",
|
||||
model_path="Tongyi-MAI/Z-Image-Turbo", modality="image", warmup=True
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
DiffusionTestCase(
|
||||
"zimage_image_t2i_warmup",
|
||||
DiffusionServerArgs(
|
||||
model_path="Tongyi-MAI/Z-Image-Turbo", modality="image", enable_warmup=True
|
||||
model_path="Tongyi-MAI/Z-Image-Turbo", modality="image", warmup=True
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
@@ -397,6 +395,7 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
|
||||
modality="image",
|
||||
lora_path="reverentelusarca/elusarca-anime-style-lora-z-image-turbo",
|
||||
second_lora_path="tarn59/pixel_art_style_lora_z_image_turbo",
|
||||
warmup=True,
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
@@ -404,32 +403,28 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
|
||||
DiffusionTestCase(
|
||||
"qwen_image_edit_ti2i",
|
||||
DiffusionServerArgs(
|
||||
model_path="Qwen/Qwen-Image-Edit",
|
||||
modality="image",
|
||||
model_path="Qwen/Qwen-Image-Edit", modality="image", warmup=True
|
||||
),
|
||||
TI2I_sampling_params,
|
||||
),
|
||||
DiffusionTestCase(
|
||||
"qwen_image_edit_2509_ti2i",
|
||||
DiffusionServerArgs(
|
||||
model_path="Qwen/Qwen-Image-Edit-2509",
|
||||
modality="image",
|
||||
model_path="Qwen/Qwen-Image-Edit-2509", modality="image", warmup=True
|
||||
),
|
||||
MULTI_IMAGE_TI2I_sampling_params,
|
||||
),
|
||||
DiffusionTestCase(
|
||||
"qwen_image_edit_2511_ti2i",
|
||||
DiffusionServerArgs(
|
||||
model_path="Qwen/Qwen-Image-Edit-2511",
|
||||
modality="image",
|
||||
model_path="Qwen/Qwen-Image-Edit-2511", modality="image", warmup=True
|
||||
),
|
||||
TI2I_sampling_params,
|
||||
),
|
||||
DiffusionTestCase(
|
||||
"qwen_image_layered_i2i",
|
||||
DiffusionServerArgs(
|
||||
model_path="Qwen/Qwen-Image-Layered",
|
||||
modality="image",
|
||||
model_path="Qwen/Qwen-Image-Layered", modality="image", warmup=True
|
||||
),
|
||||
MULTI_FRAME_I2I_sampling_params,
|
||||
),
|
||||
@@ -442,8 +437,8 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
warmup=True,
|
||||
),
|
||||
DiffusionSamplingParams(
|
||||
prompt=T2V_PROMPT,
|
||||
@@ -454,9 +449,9 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
text_encoder_cpu_offload=True,
|
||||
warmup=True,
|
||||
),
|
||||
DiffusionSamplingParams(
|
||||
prompt=T2V_PROMPT,
|
||||
@@ -468,8 +463,8 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
warmup=True,
|
||||
),
|
||||
DiffusionSamplingParams(
|
||||
prompt=T2V_PROMPT,
|
||||
@@ -484,10 +479,10 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
num_gpus=1,
|
||||
dynamic_lora_path="Cseti/Wan-LoRA-Arcane-Jinx-v1",
|
||||
warmup=True,
|
||||
),
|
||||
DiffusionSamplingParams(
|
||||
prompt="csetiarcane Nfj1nx with blue hair, a woman walking in a cyberpunk city at night",
|
||||
@@ -508,8 +503,7 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
|
||||
DiffusionTestCase(
|
||||
"flux_2_ti2i",
|
||||
DiffusionServerArgs(
|
||||
model_path="black-forest-labs/FLUX.2-dev",
|
||||
modality="image",
|
||||
model_path="black-forest-labs/FLUX.2-dev", modality="image", warmup=True
|
||||
),
|
||||
TI2I_sampling_params,
|
||||
),
|
||||
@@ -518,8 +512,8 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
|
||||
DiffusionServerArgs(
|
||||
model_path="FastVideo/FastHunyuan-diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
warmup=True,
|
||||
),
|
||||
DiffusionSamplingParams(
|
||||
prompt=T2V_PROMPT,
|
||||
@@ -531,8 +525,8 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.2-TI2V-5B-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
warmup=True,
|
||||
),
|
||||
TI2V_sampling_params,
|
||||
),
|
||||
@@ -541,8 +535,8 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
|
||||
DiffusionServerArgs(
|
||||
model_path="FastVideo/FastWan2.2-TI2V-5B-FullAttn-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
warmup=True,
|
||||
),
|
||||
TI2V_sampling_params,
|
||||
),
|
||||
@@ -556,8 +550,8 @@ if not current_platform.is_hip():
|
||||
DiffusionServerArgs(
|
||||
model_path="IPostYellow/TurboWan2.1-T2V-1.3B-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
warmup=True,
|
||||
),
|
||||
DiffusionSamplingParams(
|
||||
prompt=T2V_PROMPT,
|
||||
@@ -571,8 +565,8 @@ TWO_GPU_CASES_A = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.2-I2V-A14B-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
warmup=True,
|
||||
),
|
||||
TI2V_sampling_params,
|
||||
),
|
||||
@@ -581,9 +575,9 @@ TWO_GPU_CASES_A = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.2-T2V-A14B-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
num_gpus=2,
|
||||
warmup=True,
|
||||
),
|
||||
DiffusionSamplingParams(
|
||||
prompt=T2V_PROMPT,
|
||||
@@ -595,10 +589,10 @@ TWO_GPU_CASES_A = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.2-T2V-A14B-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
num_gpus=2,
|
||||
lora_path="Cseti/wan2.2-14B-Arcane_Jinx-lora-v1",
|
||||
warmup=True,
|
||||
),
|
||||
DiffusionSamplingParams(
|
||||
prompt="Nfj1nx with blue hair, a woman walking in a cyberpunk city at night",
|
||||
@@ -608,10 +602,10 @@ TWO_GPU_CASES_A = [
|
||||
"wan2_1_t2v_14b_2gpu",
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.1-T2V-14B-Diffusers",
|
||||
warmup=0,
|
||||
modality="video",
|
||||
num_gpus=2,
|
||||
custom_validator="video",
|
||||
warmup=True,
|
||||
),
|
||||
DiffusionSamplingParams(
|
||||
prompt=T2V_PROMPT,
|
||||
@@ -623,10 +617,10 @@ TWO_GPU_CASES_A = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
num_gpus=2,
|
||||
cfg_parallel=True,
|
||||
warmup=True,
|
||||
),
|
||||
DiffusionSamplingParams(
|
||||
prompt=T2V_PROMPT,
|
||||
@@ -642,10 +636,10 @@ if not current_platform.is_hip():
|
||||
DiffusionServerArgs(
|
||||
model_path="IPostYellow/TurboWan2.2-I2V-A14B-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
num_gpus=2,
|
||||
tp_size=2,
|
||||
warmup=True,
|
||||
),
|
||||
TURBOWAN_I2V_sampling_params,
|
||||
)
|
||||
@@ -656,10 +650,10 @@ TWO_GPU_CASES_B = [
|
||||
"wan2_1_i2v_14b_480P_2gpu",
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.1-I2V-14B-480P-Diffusers",
|
||||
warmup=0,
|
||||
modality="video",
|
||||
custom_validator="video",
|
||||
num_gpus=2,
|
||||
warmup=True,
|
||||
),
|
||||
TI2V_sampling_params,
|
||||
),
|
||||
@@ -669,10 +663,10 @@ TWO_GPU_CASES_B = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.1-I2V-14B-720P-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
num_gpus=2,
|
||||
lora_path="starsfriday/Wan2.1-Divine-Power-LoRA",
|
||||
warmup=True,
|
||||
),
|
||||
TI2V_sampling_params,
|
||||
),
|
||||
@@ -681,9 +675,9 @@ TWO_GPU_CASES_B = [
|
||||
DiffusionServerArgs(
|
||||
model_path="Wan-AI/Wan2.1-I2V-14B-720P-Diffusers",
|
||||
modality="video",
|
||||
warmup=0,
|
||||
custom_validator="video",
|
||||
num_gpus=2,
|
||||
warmup=True,
|
||||
),
|
||||
TI2V_sampling_params,
|
||||
),
|
||||
@@ -696,6 +690,7 @@ TWO_GPU_CASES_B = [
|
||||
# test ring attn
|
||||
ulysses_degree=1,
|
||||
ring_degree=2,
|
||||
warmup=True,
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
@@ -706,6 +701,7 @@ TWO_GPU_CASES_B = [
|
||||
modality="image",
|
||||
num_gpus=2,
|
||||
ulysses_degree=2,
|
||||
warmup=True,
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
@@ -715,6 +711,7 @@ TWO_GPU_CASES_B = [
|
||||
model_path="black-forest-labs/FLUX.1-dev",
|
||||
modality="image",
|
||||
num_gpus=2,
|
||||
warmup=True,
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
@@ -725,6 +722,7 @@ TWO_GPU_CASES_B = [
|
||||
modality="image",
|
||||
num_gpus=2,
|
||||
tp_size=2,
|
||||
warmup=True,
|
||||
),
|
||||
T2I_sampling_params,
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user