exo-explore/exo · error · ValueError
Unsupported wire dtype: {dtype!r}
Error message
Unsupported wire dtype: {dtype!r} What it means
Error "Unsupported wire dtype: {dtype!r}" thrown in exo-explore/exo.
Source
Thrown at src/exo/worker/engines/mlx/disaggregated/adapter.py:55
if dtype not in _MX_TO_STR:
raise ValueError(f"Unsupported mlx dtype on wire: {dtype}")
return _MX_TO_STR[dtype]
def wire_dtype_from_cache(caches: KVCacheType) -> DType:
for c in caches:
keys: mx.array | None = getattr(c, "keys", None)
if keys is None:
continue
if keys.dtype in _MX_TO_STR:
return _MX_TO_STR[keys.dtype]
break
return "bfloat16"
def str_to_mx_dtype(dtype: DType) -> mx.Dtype:
if dtype not in _STR_TO_MX:
raise ValueError(f"Unsupported wire dtype: {dtype!r}")
return _STR_TO_MX[dtype]
def array_to_bytes(t: mx.array) -> bytes:
# bf16 has no native numpy dtype; bitcast through uint16.
if t.dtype == mx.bfloat16:
return np.asarray(t.view(mx.uint16)).tobytes()
if t.dtype in (mx.float16, mx.float32):
return np.asarray(t).tobytes()
raise ValueError(f"Unsupported mlx dtype for wire: {t.dtype}")
def bytes_to_array(data: bytes, shape: tuple[int, ...], dtype: DType) -> mx.array:
match dtype:
case "bfloat16":
arr = np.frombuffer(data, dtype=np.uint16).reshape(shape).copy()
return mx.array(arr).view(mx.bfloat16)
case "float16":View on GitHub (pinned to 21a54c5ea0)
When it happens
Trigger: Thrown at src/exo/worker/engines/mlx/disaggregated/adapter.py:55 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of exo-explore/exo@21a54c5ea0 (2026-08-26).
Data as JSON: /api/errors/53d9b336e41fdc00.
Report an issue: GitHub.