BerriAI/litellm · error · ValueError
No embeddings found in LiteLLM embedding response.
Error message
No embeddings found in LiteLLM embedding response.
What it means
Guard in litellm_to_list: the object passed as an embedding response is falsy, not a litellm.EmbeddingResponse, or has an empty data list, so there are no embedding vectors to return to semantic-router.
Source
Thrown at litellm/router_strategy/auto_router/litellm_encoder.py:23
from semantic_router.encoders.base import AsymmetricDenseMixin
import litellm
from litellm._logging import verbose_router_logger
if TYPE_CHECKING:
from litellm.router import Router
else:
Router = Any
def litellm_to_list(embeds: litellm.EmbeddingResponse) -> list[list[float]]:
"""Convert a LiteLLM embedding response to a list of embeddings.
:param embeds: The LiteLLM embedding response.
:return: A list of embeddings.
"""
if not embeds or not isinstance(embeds, litellm.EmbeddingResponse) or not embeds.data:
raise ValueError("No embeddings found in LiteLLM embedding response.")
return [x["embedding"] for x in embeds.data]
class CustomDenseEncoder(DenseEncoder):
model_config = ConfigDict(extra="allow")
def __init__(self, litellm_router_instance: Optional["Router"] = None, **kwargs):
# Extract litellm_router_instance from kwargs if passed there
if "litellm_router_instance" in kwargs:
litellm_router_instance = kwargs.pop("litellm_router_instance")
super().__init__(**kwargs)
self.litellm_router_instance = litellm_router_instance
class LiteLLMRouterEncoder(CustomDenseEncoder, AsymmetricDenseMixin):
"""LiteLLM encoder class for generating embeddings using LiteLLM.
View on GitHub (pinned to 77b7c6c40c)
Solutions
- Verify the embedding model returns embeddings; check model name and credentials for the embedding call.
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at litellm/router_strategy/auto_router/litellm_encoder.py:23 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/f3c75aa9e2bce3e7.
Report an issue: GitHub.