diff --git a/spring-ai-core/src/main/java/org/springframework/ai/evaluation/EvaluationRequest.java b/spring-ai-core/src/main/java/org/springframework/ai/evaluation/EvaluationRequest.java index 1beb2a5df0d..40c043bc012 100644 --- a/spring-ai-core/src/main/java/org/springframework/ai/evaluation/EvaluationRequest.java +++ b/spring-ai-core/src/main/java/org/springframework/ai/evaluation/EvaluationRequest.java @@ -1,6 +1,5 @@ package org.springframework.ai.evaluation; -import org.springframework.ai.chat.model.ChatResponse; import org.springframework.ai.model.Content; import java.util.List; @@ -20,12 +19,12 @@ public class EvaluationRequest { private final List dataList; - private final ChatResponse chatResponse; + private final String responseContent; - public EvaluationRequest(String userText, List dataList, ChatResponse chatResponse) { + public EvaluationRequest(String userText, List dataList, String responseContent) { this.userText = userText; this.dataList = dataList; - this.chatResponse = chatResponse; + this.responseContent = responseContent; } public String getUserText() { @@ -36,14 +35,14 @@ public List getDataList() { return dataList; } - public ChatResponse getChatResponse() { - return chatResponse; + public String getResponseContent() { + return responseContent; } @Override public String toString() { return "EvaluationRequest{" + "userText='" + userText + '\'' + ", dataList=" + dataList + ", chatResponse=" - + chatResponse + '}'; + + responseContent + '}'; } @Override @@ -53,12 +52,12 @@ public boolean equals(Object o) { if (!(o instanceof EvaluationRequest that)) return false; return Objects.equals(userText, that.userText) && Objects.equals(dataList, that.dataList) - && Objects.equals(chatResponse, that.chatResponse); + && Objects.equals(responseContent, that.responseContent); } @Override public int hashCode() { - return Objects.hash(userText, dataList, chatResponse); + return Objects.hash(userText, dataList, responseContent); } } diff --git a/spring-ai-core/src/main/java/org/springframework/ai/evaluation/RelevancyEvaluator.java b/spring-ai-core/src/main/java/org/springframework/ai/evaluation/RelevancyEvaluator.java index 650e32bd20d..c912854b27a 100644 --- a/spring-ai-core/src/main/java/org/springframework/ai/evaluation/RelevancyEvaluator.java +++ b/spring-ai-core/src/main/java/org/springframework/ai/evaluation/RelevancyEvaluator.java @@ -30,7 +30,7 @@ public RelevancyEvaluator(ChatClient.Builder chatClientBuilder) { @Override public EvaluationResponse evaluate(EvaluationRequest evaluationRequest) { - var response = doGetResponse(evaluationRequest); + var response = evaluationRequest.getResponseContent(); var context = doGetSupportingData(evaluationRequest); String evaluationResponse = this.chatClientBuilder.build() @@ -52,10 +52,6 @@ public EvaluationResponse evaluate(EvaluationRequest evaluationRequest) { return new EvaluationResponse(passing, score, "", Collections.emptyMap()); } - protected String doGetResponse(EvaluationRequest evaluationRequest) { - return evaluationRequest.getChatResponse().getResult().getOutput().getContent(); - } - protected String doGetSupportingData(EvaluationRequest evaluationRequest) { List data = evaluationRequest.getDataList(); String supportingData = data.stream()