BerriAI/litellm · error · ValueError

Code execution is not supported for provider: {provider}

Error message

Code execution is not supported for provider: {provider}

What it means

Dispatch guard in the sandbox API: ProviderConfigManager has no BaseSandboxConfig registered for the given provider string (not a supported SandboxProviders value), so code execution cannot be routed.

Source

Thrown at litellm/sandbox/main.py:43

__all__ = [
    "acode_interpreter_tool",
    "acreate_sandbox",
    "adelete_sandbox",
    "arun_code",
]

_LITELLM_INTERNAL_KWARGS: Final = {
    "litellm_logging_obj",
    "litellm_call_id",
    "litellm_trace_id",
    "litellm_metadata",
}


def _get_config(provider: str) -> BaseSandboxConfig:
    config: Final = ProviderConfigManager.get_provider_sandbox_config(SandboxProviders(provider))
    if config is None:
        raise ValueError(f"Code execution is not supported for provider: {provider}")
    return config


def _forward_kwargs(kwargs: dict) -> dict:
    return {k: v for k, v in kwargs.items() if k not in _LITELLM_INTERNAL_KWARGS}


def _update_logging(kwargs: dict, provider: str, operation: str) -> None:
    logging_obj: Final = kwargs.get("litellm_logging_obj")
    if logging_obj is None:
        return
    logging_obj.update_from_kwargs(
        kwargs=kwargs,
        model=f"{provider}/{operation}",
        optional_params={},
        litellm_params={"litellm_call_id": kwargs.get("litellm_call_id")},
        custom_llm_provider=provider,
    )

View on GitHub (pinned to 77b7c6c40c)

Solutions

  1. Use a provider that supports code execution for sandbox runs.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at litellm/sandbox/main.py:43 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18). Data as JSON: /api/errors/15f129b87d27ec23. Report an issue: GitHub.