sgl-project/sglang · error · ValueError

unsupported MiniMax H3 model variant {variant!r}; supported:

Error message

unsupported MiniMax H3 model variant {variant!r}; supported: {sorted(subfolders)!r}

What it means

Raised by MiniMaxH3Pipeline.model_subfolder_for_variant for a non-empty variant string that, after strip+lowercase normalization, is not one of the known partitions (fl2va -> FL2VA, ref2va -> Ref2VA). The error lists the supported variant keys to make correction immediate.

Source

Thrown at python/sglang/multimodal_gen/runtime/pipelines/minimax_h3_pipeline.py:82

                    "and validated output delivery; missing executables: "
                    f"{', '.join(missing_media_tools)}. Install the ffmpeg system "
                    "package before starting SGLang."
                )
        super().__init__(*args, **kwargs)

    @staticmethod
    def model_subfolder_for_variant(variant: str) -> str:
        if not isinstance(variant, str) or not variant.strip():
            raise ValueError("MiniMax H3 model variant must be a non-empty string")
        normalized = variant.strip().lower()
        subfolders = {
            "fl2va": "FL2VA",
            "ref2va": "Ref2VA",
        }
        try:
            return subfolders[normalized]
        except KeyError as exc:
            raise ValueError(
                f"unsupported MiniMax H3 model variant {variant!r}; "
                f"supported: {sorted(subfolders)!r}"
            ) from exc

    def _load_config(self):
        model_variant = self.server_args.model_variant
        if model_variant is not None:
            semantic_subfolder = self.model_subfolder_for_variant(model_variant)
            explicit_subfolder = self.server_args.model_subfolder
            if (
                explicit_subfolder is not None
                and explicit_subfolder.strip().lower() != semantic_subfolder.lower()
            ):
                raise ValueError(
                    "MiniMax H3 --model-variant and --model-subfolder select "
                    f"different weight partitions: variant={model_variant!r} maps to "
                    f"{semantic_subfolder!r}, model_subfolder="
                    f"{explicit_subfolder!r}"

View on GitHub (pinned to 0132848349)

Solutions

  1. Use exactly 'fl2va' or 'ref2va' (case-insensitive) as printed in the error's supported list
  2. If you expected a newer partition name, upgrade sglang so model_subfolder_for_variant knows it
  3. Omit --model-variant and set --model-subfolder directly if you know the raw subfolder name

Example fix

# before
python -m sglang.launch_server --model minimax-h3 --model-variant fl2v

# after
python -m sglang.launch_server --model minimax-h3 --model-variant fl2va
Defensive patterns

Strategy: validation

Validate before calling

variant = server_args.model_variant.strip().lower()
if variant not in ('fl2va', 'ref2va'):
    raise SystemExit(f'unsupported --model-variant {variant!r}; use fl2va or ref2va')

Type guard

def is_supported_minimax_variant(v: str) -> bool:
    return (v or '').strip().lower() in ('fl2va', 'ref2va')

Prevention

When it happens

Trigger: Passing --model-variant FL2VA_V2, 'vl' or any misspelling like 'fl2v'; case/format variants are fine (normalization handles them) but unknown names raise; new partitions added upstream while the running sglang version predates them.

Common situations: Typos in launch flags or Helm values; copying a variant name from a different model family; sglang version older than the checkpoint's new partition names.

Understand the failure class

Background: "Invalid value" and "allowed values are" config errors: what your library rejected and how to fix it — this error's family across 41 libraries.

Related errors


AI-assisted analysis of sgl-project/sglang@0132848349 (2026-08-28). Data as JSON: /api/errors/d122d5ddebf2874e. Report an issue: GitHub.