sgl-project/sglang · error · ValueError
cutedsl_mla backend can only be used with MLA models.
Error message
cutedsl_mla backend can only be used with MLA models.
What it means
The cutedsl_mla attention backend factory only supports MLA models; runner.use_mla_backend must be true. Non-MLA (GQA/MHA) models use different KV layouts and kernels that CuteDslMLABackend cannot execute.
Source
Thrown at python/sglang/srt/layers/attention/attention_registry.py:104
return TRTLLMMLABackend(runner)
@register_attention_backend("tokenspeed_mla")
def create_tokenspeed_mla_backend(runner):
if not runner.use_mla_backend:
raise ValueError("tokenspeed_mla backend can only be used with MLA models.")
from sglang.srt.layers.attention.tokenspeed_mla_backend import (
TokenspeedMLABackend,
)
return TokenspeedMLABackend(runner)
@register_attention_backend("cutedsl_mla")
def create_cutedsl_mla_backend(runner):
if not runner.use_mla_backend:
raise ValueError("cutedsl_mla backend can only be used with MLA models.")
from sglang.srt.layers.attention.cutedsl_mla_backend import CuteDslMLABackend
return CuteDslMLABackend(runner)
@register_attention_backend("aiter")
def create_aiter_backend(runner):
from sglang.srt.layers.attention.aiter_backend import AiterAttnBackend
return AiterAttnBackend(runner)
@register_attention_backend("wave")
def create_wave_backend(runner):
from sglang.srt.layers.attention.wave_backend import WaveAttnBackend
return WaveAttnBackend(runner)
View on GitHub (pinned to 0132848349)
Solutions
- Drop the explicit backend flag and use auto-selection
- Use an MLA-based checkpoint (DeepSeek family) with cutedsl_mla
Example fix
# before --attention-backend cutedsl_mla --model llama-3 # after --model llama-3 # auto backend selection
Defensive patterns
Strategy: validation
Validate before calling
if not model_runner.use_mla_backend and server_args.attention_backend == "cutedsl_mla":
raise SystemExit("cutedsl_mla requires an MLA model") Type guard
def is_mla_model(runner) -> bool:
return bool(getattr(runner, "use_mla_backend", False)) Prevention
- Don't force MLA-only backends on GQA/MHA checkpoints
- Automate a smoke launch in CI for each model+backend pair you deploy
When it happens
Trigger: Launching a server with --attention-backend cutedsl_mla (or resolving that backend string) for a non-MLA model architecture, where use_mla_backend is False.
Common situations: Forcing the CuTe DSL MLA backend on Llama/Qwen-class models, or a stale launch script from a DeepSeek deployment reused with a different checkpoint.
Related errors
- tokenspeed_mla backend can only be used with MLA models.
- trtllm_mha backend can only be used with non-MLA models.
- hpc_ops backend can only be used with non-MLA models.
- trtllm_mla cannot serve decode context parallelism with spec
- trtllm_mla does not forward the cyclic DCP metadata to its d
AI-assisted analysis of sgl-project/sglang@0132848349 (2026-08-28).
Data as JSON: /api/errors/954e76c91b6be4af.
Report an issue: GitHub.