BerriAI/litellm · error · ValueError

Input must be a list of strings

Error message

Input must be a list of strings

What it means

Error "Input must be a list of strings" thrown in BerriAI/litellm.

Source

Thrown at litellm/llms/cohere/embed/transformation.py:126

                model=model,
                texts=input,
                input_type=COHERE_DEFAULT_EMBEDDING_INPUT_TYPE,
            )

        for k, v in inference_params.items():
            transformed_request[k] = v

        return transformed_request

    def transform_embedding_request(
        self,
        model: str,
        input: AllEmbeddingInputValues,
        optional_params: dict,
        headers: dict,
    ) -> dict:
        if isinstance(input, list) and (isinstance(input[0], list) or isinstance(input[0], int)):
            raise ValueError("Input must be a list of strings")
        return cast(
            dict,
            self._transform_request(
                model=model,
                input=cast(list[str], input) if isinstance(input, list) else [input],
                inference_params=optional_params,
            ),
        )

    def _calculate_usage(self, input: list[str], encoding: Any, meta: dict) -> Usage:
        input_tokens = 0

        text_tokens: Final[int | None] = meta.get("billed_units", {}).get("input_tokens")

        image_tokens: Final[int | None] = meta.get("billed_units", {}).get("images")

        prompt_tokens_details: PromptTokensDetailsWrapper | None = None
        if image_tokens is None and text_tokens is None:

View on GitHub (pinned to 6c2dcb801b)

Solutions

  1. Pass input as a list of strings.

When it happens

Trigger: Thrown at litellm/llms/cohere/embed/transformation.py:126 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of BerriAI/litellm@6c2dcb801b (2026-08-15). Data as JSON: /api/errors/5aaaa23c731bd09d. Report an issue: GitHub.