BerriAI/litellm · error · Exception

api_base not found in vector store configuration for {vector

Error message

api_base not found in vector store configuration for {vector_store_name}

What it means

While building the target URL for the Milvus pass-through request, provider_config.get_complete_url() could not determine an api_base: the vector store's litellm_params contain no usable api_base/host and no environment default applies, so no upstream URL can be constructed. Thrown as a bare Exception.

Source

Thrown at litellm/proxy/pass_through_endpoints/llm_passthrough_endpoints.py:525

    if vector_store is None:
        raise Exception(f"Vector store not found for {vector_store_name}")
    await assert_user_can_access_vector_store(
        vector_store=vector_store,
        user_api_key_dict=user_api_key_dict,
    )
    litellm_params = vector_store.get("litellm_params") or {}
    auth_credentials: Final = provider_config.get_auth_credentials(litellm_params=litellm_params)

    extra_headers = auth_credentials.get("headers") or {}

    litellm_params = vector_store.get("litellm_params") or {}

    base_target_url = provider_config.get_complete_url(
        api_base=litellm_params.get("api_base"), litellm_params=litellm_params
    )

    if base_target_url is None:
        raise Exception(f"api_base not found in vector store configuration for {vector_store_name}")

    encoded_endpoint = httpx.URL(endpoint).path

    # Ensure endpoint starts with '/' for proper URL construction
    if not encoded_endpoint.startswith("/"):
        encoded_endpoint = "/" + encoded_endpoint

    # Construct the full target URL using httpx, preserving any base path
    # prefix that the operator configured on base_target_url.
    base_url: Final = httpx.URL(base_target_url)
    updated_url: Final = base_url.copy_with(
        path=HttpPassThroughEndpointHelpers.join_base_and_endpoint_path(base_url, encoded_endpoint)
    )
    ## CREATE PASS-THROUGH
    endpoint_func: Final = create_pass_through_route(
        endpoint=endpoint,
        target=str(updated_url),
        custom_headers=extra_headers,

View on GitHub (pinned to 77b7c6c40c)

Solutions

  1. Add api_base to the vector store configuration for the named vector store in config.yaml.
  2. For Milvus, set api_base to the Milvus endpoint URI (e.g. http://localhost:19530).
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at litellm/proxy/pass_through_endpoints/llm_passthrough_endpoints.py:525 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/77e8c09102eab113. Report an issue: GitHub.