BerriAI/litellm · error · ValueError
QualityRouter: complexity tier '{complexity_name}' not prese
Error message
QualityRouter: complexity tier '{complexity_name}' not present in complexity_to_quality mapping {self.config.complexity_to_quality} What it means
Routing failure in QualityRouter: complexity classification produced a tier that has no entry in the configured complexity_to_quality mapping, so it cannot be translated into a quality tier and model.
Source
Thrown at litellm/router_strategy/quality_router/quality_router.py:414
cause="keyword",
matched_keyword=matched_keyword,
)
keyword_quality_tier: Final = self._model_quality.get(routed_model)
if keyword_quality_tier is not None:
routing_decision["tier"] = str(keyword_quality_tier)
return PreRoutingHookResponse(
model=routed_model,
messages=messages,
routing_decision=routing_decision,
)
# No keyword match → complexity classification flow.
complexity_tier, score, signals = self._scorer.classify(user_message, system_prompt)
complexity_name: Final = complexity_tier.value if hasattr(complexity_tier, "value") else str(complexity_tier)
quality_tier: Final = self.config.complexity_to_quality.get(complexity_name)
if quality_tier is None:
raise ValueError(
f"QualityRouter: complexity tier '{complexity_name}' not present "
f"in complexity_to_quality mapping {self.config.complexity_to_quality}"
)
routed_model = self._resolve_model_for_quality_tier(int(quality_tier))
verbose_router_logger.info(
f"QualityRouter: complexity={complexity_name}, score={score:.3f}, "
f"signals={signals}, quality_tier={quality_tier}, "
f"routed_model={routed_model}"
)
self._stash_decision(
request_kwargs,
{
"router_model_name": self.model_name,
"routed_model": routed_model,
"routed_via": "quality_tier",View on GitHub (pinned to 77b7c6c40c)
Solutions
- Add the complexity tier to the complexity_to_quality mapping in the QualityRouter config.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at litellm/router_strategy/quality_router/quality_router.py:414 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/8da485ff134a0a8e.
Report an issue: GitHub.