sgl-project/sglang · error · NotImplementedError
weight cache transport backend {VMM_FD_BACKEND!r} is not imp
Error message
weight cache transport backend {VMM_FD_BACKEND!r} is not implemented in this build What it means
VmmFdTransportBackend (the 'vmm_fd' weight cache transport) is a stub in this build: every method raises NotImplementedError. Selected when the backend name is vmm_fd, but the feature was not compiled/implemented here.
Source
Thrown at python/sglang/srt/weight_cache/transport.py:154
return MultiprocessingSerializer.deserialize(entry["handle"])
class VmmFdTransportBackend(WeightCacheTransportBackend):
"""Placeholder for the CUDA VMM + fd-passing transport.
The backend is not wired up yet: can_export_state reports False so the
daemon keeps selecting torch_ipc, and every other entry point fails loudly
instead of silently returning None.
"""
name = VMM_FD_BACKEND
def __init__(self):
self._raise_not_implemented()
@staticmethod
def _raise_not_implemented() -> NoReturn:
raise NotImplementedError(
f"weight cache transport backend {VMM_FD_BACKEND!r} is not "
f"implemented in this build"
)
@classmethod
def can_export_state(
cls, state_tensors: Mapping[str, Tuple[torch.Tensor, bool]]
) -> bool:
return False
def prepare_export(
self, state_tensors: Mapping[str, Tuple[torch.Tensor, bool]]
) -> Dict[str, Dict[str, Any]]:
self._raise_not_implemented()
def send_fetch_state_response(
self,
conn: socket.socket,View on GitHub (pinned to 0132848349)
Solutions
- Use the default torch IPC backend (unset the backend name)
- Upgrade sglang to a build that implements vmm_fd
Example fix
# before
backend = get_client_transport_backend("vmm_fd")
# after
backend = get_client_transport_backend(None) # torch IPC Defensive patterns
Strategy: validation
Validate before calling
from sglang.srt.weight_cache.transport import TORCH_IPC_BACKEND, VMM_FD_BACKEND assert name in (None, TORCH_IPC_BACKEND) or implemented(name)
Prevention
- Don't select vmm_fd unless your build implements it
- Default to torch_ipc backend
When it happens
Trigger: Setting the weight cache transport backend to 'vmm_fd' via config/env; any call to its __init__, prepare_export, send/recv_fetch_state_response, or import_tensor.
Common situations: Using a docs/blog config that references the experimental VMM FD backend on a release that lacks it.
Related errors
- [weight_cache:{where}] quantization method {quant_method!r}
- {env_field.name}={template!r} must contain '{{global_rank}}'
- Unknown weight cache transport backend {name!r}
- This browser cannot encode H.264 MP4
- H.264 encoder did not return MP4 decoder config
AI-assisted analysis of sgl-project/sglang@0132848349 (2026-08-28).
Data as JSON: /api/errors/e37b011d7d818118.
Report an issue: GitHub.