sgl-project/sglang · error · ComponentCheckpointUnsupportedError

Online quantization for {component_name!r} requires an in-tr

Error message

Online quantization for {component_name!r} requires an in-tree native encoder; unsupported architectures: {architectures}

What it means

ComponentCheckpointUnsupportedError raised when explicit online quantization was requested, no serialized quant_config exists, AND the checkpoint's architectures do not resolve to an in-tree native encoder class (resolution_error is chained). Online quantization hooks (quantized linear construction, process_weights_after_loading) only exist for native implementations.

Source

Thrown at python/sglang/multimodal_gen/runtime/loader/component_loaders/text_encoder_loader.py:346

        model_cls, _ = ModelRegistry.resolve_model_cls(architectures)
    except Exception as resolution_error:
        _delegate_standard_bnb4_to_transformers(
            component_config,
            component_name,
        )
        try:
            quant_config = _get_encoder_quant_config(
                component_config,
                component_model_path,
                component_weights_path,
            )
        except Exception as quantization_error:
            raise ComponentCheckpointUnsupportedError(
                f"Cannot parse checkpoint quantization for {component_name!r}: "
                f"{quantization_error}"
            ) from quantization_error
        if explicit_quantization is not None and quant_config is None:
            raise ComponentCheckpointUnsupportedError(
                f"Online quantization for {component_name!r} requires an in-tree "
                f"native encoder; unsupported architectures: {architectures}"
            ) from resolution_error
        if quant_config is None:
            raise
        raise ComponentCheckpointUnsupportedError(
            f"A quantized {component_name!r} checkpoint requires an in-tree "
            f"native encoder; unsupported architectures: {architectures}"
        ) from resolution_error

    _configure_encoder_quantization(
        model_config,
        model_cls,
        component_config,
        component_model_path,
        component_weights_path,
        component_name,
        explicit_quantization,

View on GitHub (pinned to 0132848349)

Solutions

  1. Remove the online quantization override for this component and load it unquantized
  2. Use a checkpoint/architecture with an in-tree native encoder implementation
  3. Fix the architectures field in config.json if it's a naming mismatch against registered native classes
  4. Contribute a native encoder implementation to enable online quantization

Example fix

# before
load_customized(..., explicit_quantization="fp8")  # arch has no native impl

# after
load_customized(..., explicit_quantization=None)
Defensive patterns

Strategy: validation

Validate before calling

native = resolve_native_encoder_class(architectures)  # returns None if absent
if explicit_quantization is not None and native is None:
    explicit_quantization = None  # skip online quant for delegated encoders

Prevention

When it happens

Trigger: load_customized(explicit_quantization="fp8") where architectures in config.json map to no registered native encoder — e.g. a transformers-only encoder — so model resolution failed (resolution_error) and quant_config is None.

Common situations: Applying an online quantization flag to a multimodal model whose text encoder has no native sglang implementation; newly added encoder architectures before native support landed; misnamed architecture strings in config.json.

Related errors


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