BerriAI/litellm · error · ValueError
AdaptiveRouter[{self.router_name}]: no models meet min_quali
Error message
AdaptiveRouter[{self.router_name}]: no models meet min_quality_tier={min_quality_tier} What it means
Adaptive router filtering result: after applying the requested min_quality_tier to the model pools, no configured model's quality tier meets the floor, so Thompson sampling has no eligible arms to draw from.
Source
Thrown at litellm/router_strategy/adaptive_router/adaptive_router.py:219
router_model_name=self.router_name,
router_type="adaptive",
routed_model=chosen_model,
cause="bandit",
request_type=request_type.value,
),
)
# ---- Pick model ------------------------------------------------------
async def pick_model(
self,
request_type: RequestType,
min_quality_tier: int | None = None,
) -> str:
"""Thompson-sample across eligible models. Stateless per-turn."""
eligible: Final = self._eligible_models(min_quality_tier)
if not eligible:
raise ValueError(f"AdaptiveRouter[{self.router_name}]: no models meet min_quality_tier={min_quality_tier}")
cells: Final = {m: self._cells[(request_type, m)] for m in eligible}
costs: Final = {m: self.model_to_cost.get(m, 0.0) for m in eligible}
return pick_best(
cells,
costs,
quality_weight=self.config.weights.quality,
cost_weight=self.config.weights.cost,
)
async def get_state_snapshot(self) -> dict[str, Any]:
"""In-memory snapshot for the introspection endpoint. Cheap; no DB hit."""
cells: Final = []
for (rt, model), cell in sorted(self._cells.items(), key=lambda kv: (kv[0][0].value, kv[0][1])):
total = cell.alpha + cell.beta
cells.append(
{
"request_type": rt.value,View on GitHub (pinned to 77b7c6c40c)
Solutions
- Lower min_quality_tier or add models that meet the tier to the adaptive router pool.
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at litellm/router_strategy/adaptive_router/adaptive_router.py:219 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/5e70a8aa99f94017.
Report an issue: GitHub.