sgl-project/sglang · error · ComponentCheckpointUnsupportedError

A quantized {component_name!r} checkpoint requires an in-tre

Error message

A quantized {component_name!r} checkpoint requires an in-tree native encoder; unsupported architectures: {architectures}

What it means

ComponentCheckpointUnsupportedError raised when the checkpoint itself declares quantization (quant_config is not None), architecture resolution already failed (resolution_error chained), and the original exception is re-raised wrapped: a quantized checkpoint cannot be loaded by a non-native (e.g. transformers-delegated) encoder. This is the checkpoint-side counterpart of 1347.

Source

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

        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,
        ignored_layers,
    )
    return model_cls


def _process_quantized_encoder_weights(

View on GitHub (pinned to 0132848349)

Solutions

  1. Use an unquantized (BF16/FP16) checkpoint of this encoder architecture
  2. Switch to an architecture variant with a native in-tree implementation that supports quantization
  3. Dequantize the checkpoint offline before loading
  4. If the architecture should be supported, check for typos in the architectures list of config.json

Example fix

# before
weights = "clip-community-fp8/"  # arch not natively supported

# after
weights = "clip-original-fp16/"
Defensive patterns

Strategy: validation

Validate before calling

native = resolve_native_encoder_class(architectures)
quantized = checkpoint_declares_quant(model_path) or quant_config is not None
if quantized and native is None:
    raise SystemExit("use an unquantized checkpoint or a natively supported arch")

Prevention

When it happens

Trigger: load_customized on a component whose weights/config carry quantization metadata while config.json architectures resolve to no in-tree native encoder class — e.g. an FP8-serialized encoder with only transformers support.

Common situations: Downloading a community-quantized encoder checkpoint for an architecture sglang only delegates to transformers; mixing quantized component checkpoints into a pipeline that expects native implementations.

Related errors


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