sgl-project/sglang · error · ValueError
MiniMax H3 does not support enable_upscaling: the accepted d
Error message
MiniMax H3 does not support enable_upscaling: the accepted delivery contract is the resolved target canvas
What it means
MiniMax H3 SGLang backend emits output at the resolved target canvas resolution and does not run an upscaling post-pass. Requests with enable_upscaling=True are rejected to keep the delivery contract explicit.
Source
Thrown at python/sglang/multimodal_gen/runtime/pipelines_core/stages/model_specific_stages/minimax_h3/video_adapter.py:219
self._positive_finite_extra(request, "audio_flow_shift")
if _extra_value(request, "audio_guidance_scale") is not None:
raise ValueError(
"audio_guidance_scale is not supported: MiniMax H3 serves only "
"the CFG-distilled single-positive-branch checkpoint"
)
output_mode = _extra_value(request, "output_mode")
if output_mode not in (None, "decoded_files"):
raise ValueError(
"MiniMax H3 SGLang backend only supports "
f"output_mode='decoded_files', got {output_mode!r}"
)
if request.enable_frame_interpolation:
raise ValueError(
"MiniMax H3 does not support enable_frame_interpolation: the "
"accepted delivery contract is the canonical 24 fps output"
)
if request.enable_upscaling:
raise ValueError(
"MiniMax H3 does not support enable_upscaling: the accepted "
"delivery contract is the resolved target canvas"
)
def validate_sampling_params(self, sampling_params: SamplingParams) -> None:
"""Apply the HTTP task/delivery gate to offline requests as well."""
task = getattr(sampling_params, "task", None)
self.validate_task_gate(task, provided=task is not None)
sampling_params.task = canonical_minimax_h3_task(task)
if getattr(sampling_params, "enable_frame_interpolation", False):
raise ValueError(
"MiniMax H3 does not support enable_frame_interpolation: the "
"accepted delivery contract is the canonical 24 fps output"
)
if getattr(sampling_params, "enable_upscaling", False):
raise ValueError(
"MiniMax H3 does not support enable_upscaling: the accepted "View on GitHub (pinned to 0132848349)
Solutions
- Set enable_upscaling=False and request the desired final resolution directly in the video request parameters
- Upscale offline (ffmpeg/RWGINS/Real-ESRGAN) after decoding the output files
Example fix
// before request.enable_upscaling = True // after request.enable_upscaling = False request.resolution = "1080p" # request target canvas directly
Defensive patterns
Strategy: validation
Validate before calling
assert not getattr(request, "enable_upscaling", False), "MiniMax H3 has no upscaling"
Prevention
- Request the target resolution directly instead of enabling upscale
- Keep per-model feature capability maps in the routing layer
When it happens
Trigger: Passing enable_upscaling=True on a video request lowered through the MiniMax H3 adapter's validate_transport_options.
Common situations: Clients migrating from backends with built-in 2x/4x upscalers; enabling upscale hoping to compensate for a low resolution request.
Related errors
- MiniMax H3 SGLang backend only supports output_mode='decoded
- MiniMax H3 does not support enable_frame_interpolation: the
- MiniMax H3 video generation produced {len(output_paths)} out
- MiniMax-H3 quality="high" is validated only for the strict 4
- MiniMax-H3 adaln_t_table must have shape [N, D] with N >= 2,
AI-assisted analysis of sgl-project/sglang@0132848349 (2026-08-28).
Data as JSON: /api/errors/0a4dea668fa5e0fc.
Report an issue: GitHub.