exo-explore/exo · error · HTTPException

Prefill/decode disaggregation is disabled. Set ENABLE_DISAGG

Error message

Prefill/decode disaggregation is disabled. Set ENABLE_DISAGGREGATION=true to enable.

What it means

Error "Prefill/decode disaggregation is disabled. Set ENABLE_DISAGGREGATION=true to enable." thrown in exo-explore/exo.

Source

Thrown at src/exo/api/main.py:229

ONBOARDING_COMPLETE_FILE = EXO_CACHE_HOME / "onboarding_complete"


def _format_to_content_type(image_format: Literal["png", "jpeg", "webp"] | None) -> str:
    return f"image/{image_format or 'png'}"


def _ensure_seed(params: AdvancedImageParams | None) -> AdvancedImageParams:
    """Ensure advanced params has a seed set for distributed consistency."""
    if params is None:
        return AdvancedImageParams(seed=random.randint(0, 2**32 - 1))
    if params.seed is None:
        return params.model_copy(update={"seed": random.randint(0, 2**32 - 1)})
    return params


def _require_disaggregation_enabled() -> None:
    if not ENABLE_DISAGGREGATION:
        raise HTTPException(
            status_code=HTTPStatus.NOT_FOUND,
            detail=(
                "Prefill/decode disaggregation is disabled. "
                "Set ENABLE_DISAGGREGATION=true to enable."
            ),
        )


class API:
    def __init__(
        self,
        node_id: NodeId,
        *,
        port: int,
        event_receiver: Receiver[IndexedEvent],
        command_sender: Sender[ForwarderCommand],
        download_command_sender: Sender[ForwarderDownloadCommand],
        # This lets us pause the API if an election is running

View on GitHub (pinned to 21a54c5ea0)

When it happens

Trigger: Thrown at src/exo/api/main.py:229 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/f4891dda45f5eb2a. Report an issue: GitHub.