BerriAI/litellm · error · HTTPException

retrieval_config must be an object

Error message

retrieval_config must be an object

What it means

RAG query type check: retrieval_config was supplied but is not a JSON object/dict (e.g. a string or list), so its fields cannot be read; rejected with 400 after the presence check passed.

Source

Thrown at litellm/proxy/rag_endpoints/endpoints.py:650

        # Validate required fields
        if not model:
            raise HTTPException(
                status_code=400,
                detail={"error": "model is required"},
            )
        if not messages:
            raise HTTPException(
                status_code=400,
                detail={"error": "messages is required"},
            )
        if not retrieval_config:
            raise HTTPException(
                status_code=400,
                detail={"error": "retrieval_config is required"},
            )
        if not isinstance(retrieval_config, dict):
            raise HTTPException(
                status_code=400,
                detail={"error": "retrieval_config must be an object"},
            )
        if "vector_store_id" not in retrieval_config:
            raise HTTPException(
                status_code=400,
                detail={"error": "retrieval_config must contain 'vector_store_id'"},
            )
        await _authorize_nested_vector_store_ids(
            payload=retrieval_config,
            user_api_key_dict=user_api_key_dict,
        )

        # Add litellm data
        request_data: dict[str, object] = {}
        request_data = await add_litellm_data_to_request(
            data=request_data,
            request=request,

View on GitHub (pinned to 77b7c6c40c)

Solutions

  1. Send retrieval_config as a JSON object, not a string or array.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at litellm/proxy/rag_endpoints/endpoints.py:650 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/196586537152c573. Report an issue: GitHub.