sgl-project/sglang · error · ValueError

Currently standalone speculative decoding does not support d

Error message

Currently standalone speculative decoding does not support dp attention.

What it means

The STANDALONE speculative algorithm (separate draft model run end-to-end) does not support dp attention. The eagle-family handler rejects the combo pending a TODO to implement it.

Source

Thrown at python/sglang/srt/arg_groups/speculative_hook.py:676

        logger.warning(
            "Mixed chunked prefill is disabled because of using "
            "Frozen-KV MTP speculative decoding."
        )


def _handle_eagle_family(server_args: ServerArgs) -> None:
    cfg = resolving_view(server_args)
    from sglang.srt.arg_groups.overrides import (
        attention_backends_of,
        resolved_view,
    )

    if (
        cfg.speculative_algorithm == "STANDALONE"
        and resolved_view(server_args).enable_dp_attention
    ):
        # TODO: support dp attention for standalone speculative decoding
        raise ValueError(
            "Currently standalone speculative decoding does not support dp attention."
        )

    if cfg.max_running_requests is None:
        declare_resolution(
            server_args,
            "_handle_eagle_family",
            max_running_requests=48,
        )
        logger.warning(
            "Max running requests is reset to 48 for speculative decoding. You can override this by explicitly setting --max-running-requests."
        )

    _disable_overlap_schedule_for_cpu(server_args)

    if resolved_view(server_args).disable_overlap_schedule:
        logger.warning(
            "Non-overlap (synchronous) spec v2 is used for eagle/eagle3/standalone "

View on GitHub (pinned to 0132848349)

Solutions

  1. Remove --enable-dp-attention for STANDALONE runs
  2. Use EAGLE/NEXTN instead if dp attention is required
  3. Watch upstream for dp-attention support in STANDALONE before retrying

Example fix

# before
--speculative-algorithm STANDALONE --enable-dp-attention
# after
--speculative-algorithm STANDALONE
Defensive patterns

Strategy: validation

Validate before calling

if args.speculative_algorithm == 'STANDALONE' and args.enable_dp_attention:
    raise SystemExit('STANDALONE spec decoding does not support dp attention')

Prevention

When it happens

Trigger: Launching with --speculative-algorithm STANDALONE together with --enable-dp-attention.

Common situations: Users combining a standalone draft model (e.g. an independent small LM) with DeepSeek-style DP attention deployment flags.

Related errors


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