From 55ae8b1a1600f57174f22032dcf42bb5b8b4717f Mon Sep 17 00:00:00 2001 From: Ishaan Jaffer Date: Thu, 23 Apr 2026 19:58:14 -0700 Subject: [PATCH] fix(llm_as_a_judge): use float sum with tolerance for weight validation --- .../guardrails/guardrail_hooks/llm_as_a_judge/__init__.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/litellm/proxy/guardrails/guardrail_hooks/llm_as_a_judge/__init__.py b/litellm/proxy/guardrails/guardrail_hooks/llm_as_a_judge/__init__.py index 24207a6d37d..f09bd8493cf 100644 --- a/litellm/proxy/guardrails/guardrail_hooks/llm_as_a_judge/__init__.py +++ b/litellm/proxy/guardrails/guardrail_hooks/llm_as_a_judge/__init__.py @@ -258,8 +258,8 @@ def initialize_guardrail( if not criteria: raise ValueError("llm_as_a_judge guardrail requires at least one criterion") - weight_total = sum(int(c.get("weight", 0)) for c in criteria) - if weight_total != 100: + weight_total = sum(float(c.get("weight", 0)) for c in criteria) + if abs(weight_total - 100) > 0.5: raise ValueError( f"llm_as_a_judge criterion weights must sum to 100 (got {weight_total})" )