diff --git a/spring-ai-client-chat/src/main/java/org/springframework/ai/chat/evaluation/FactCheckingEvaluator.java b/spring-ai-client-chat/src/main/java/org/springframework/ai/chat/evaluation/FactCheckingEvaluator.java index 103e5d03796..0d6c27face3 100644 --- a/spring-ai-client-chat/src/main/java/org/springframework/ai/chat/evaluation/FactCheckingEvaluator.java +++ b/spring-ai-client-chat/src/main/java/org/springframework/ai/chat/evaluation/FactCheckingEvaluator.java @@ -138,7 +138,7 @@ public EvaluationResponse evaluate(EvaluationRequest evaluationRequest) { .call() .content(); - boolean passing = "yes".equalsIgnoreCase(evaluationResponse); + boolean passing = evaluationResponse != null && evaluationResponse.toLowerCase().contains("yes"); return new EvaluationResponse(passing, "", Collections.emptyMap()); } diff --git a/spring-ai-client-chat/src/main/java/org/springframework/ai/chat/evaluation/RelevancyEvaluator.java b/spring-ai-client-chat/src/main/java/org/springframework/ai/chat/evaluation/RelevancyEvaluator.java index 9de2c181fe0..a2d1056bbec 100644 --- a/spring-ai-client-chat/src/main/java/org/springframework/ai/chat/evaluation/RelevancyEvaluator.java +++ b/spring-ai-client-chat/src/main/java/org/springframework/ai/chat/evaluation/RelevancyEvaluator.java @@ -77,12 +77,8 @@ public EvaluationResponse evaluate(EvaluationRequest evaluationRequest) { String evaluationResponse = this.chatClientBuilder.build().prompt().user(userMessage).call().content(); - boolean passing = false; - float score = 0; - if ("yes".equalsIgnoreCase(evaluationResponse)) { - passing = true; - score = 1; - } + boolean passing = evaluationResponse != null && evaluationResponse.toLowerCase().contains("yes"); + float score = passing ? 1 : 0; return new EvaluationResponse(passing, score, "", Collections.emptyMap()); }