exo-explore/exo · error · ValueError
Model must either have a 'model', 'transformer', or 'backbon
Error message
Model must either have a 'model', 'transformer', or 'backbone' attribute
What it means
Error "Model must either have a 'model', 'transformer', or 'backbone' attribute" thrown in exo-explore/exo.
Source
Thrown at src/exo/worker/engines/mlx/auto_parallel.py:228
inner = getattr(model, "model", None)
if isinstance(inner, nn.Module):
return inner
inner = getattr(model, "transformer", None)
if isinstance(inner, nn.Module):
return inner
inner = getattr(model, "language_model", None)
if isinstance(inner, nn.Module):
inner_inner = getattr(inner, "model", None)
if isinstance(inner_inner, nn.Module):
return inner_inner
inner = getattr(model, "backbone", None)
if isinstance(inner, nn.Module):
return inner
raise ValueError(
"Model must either have a 'model', 'transformer', or 'backbone' attribute"
)
def get_layers(inner_model_instance: nn.Module) -> list[_LayerCallable]:
# Handle both model.layers and model.h cases
layers: list[_LayerCallable]
if hasattr(inner_model_instance, "layers"):
layers = cast(list[_LayerCallable], inner_model_instance.layers)
elif hasattr(inner_model_instance, "h"):
layers = cast(list[_LayerCallable], inner_model_instance.h)
else:
raise ValueError("Model must have either a 'layers' or 'h' attribute")
return layers
def _patch_hybrid_cache(View on GitHub (pinned to 21a54c5ea0)
When it happens
Trigger: Thrown at src/exo/worker/engines/mlx/auto_parallel.py:228 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/fda5cdafb40ca948.
Report an issue: GitHub.