diff --git a/advisors/spring-ai-advisors-vector-store/src/main/java/org/springframework/ai/chat/client/advisor/vectorstore/QuestionAnswerAdvisor.java b/advisors/spring-ai-advisors-vector-store/src/main/java/org/springframework/ai/chat/client/advisor/vectorstore/QuestionAnswerAdvisor.java index 8c301fbdd04..979e50b238f 100644 --- a/advisors/spring-ai-advisors-vector-store/src/main/java/org/springframework/ai/chat/client/advisor/vectorstore/QuestionAnswerAdvisor.java +++ b/advisors/spring-ai-advisors-vector-store/src/main/java/org/springframework/ai/chat/client/advisor/vectorstore/QuestionAnswerAdvisor.java @@ -48,6 +48,7 @@ * @author Timo Salm * @author Ilayaperumal Gopinathan * @author Thomas Vitale + * @author Yanming Zhou * @since 1.0.0 */ public class QuestionAnswerAdvisor implements BaseAdvisor { @@ -82,6 +83,12 @@ public class QuestionAnswerAdvisor implements BaseAdvisor { private final int order; + /** + * Construct instance by given VectorStore + * @param vectorStore the given VectorStore + * @deprecated in favor of {@link #builder(VectorStore)}} + */ + @Deprecated public QuestionAnswerAdvisor(VectorStore vectorStore) { this(vectorStore, SearchRequest.builder().build(), DEFAULT_PROMPT_TEMPLATE, BaseAdvisor.DEFAULT_SCHEDULER, DEFAULT_ORDER); @@ -122,8 +129,9 @@ public ChatClientRequest before(ChatClientRequest chatClientRequest, AdvisorChai Map context = new HashMap<>(chatClientRequest.context()); context.put(RETRIEVED_DOCUMENTS, documents); - String documentContext = documents == null ? "" - : documents.stream().map(Document::getText).collect(Collectors.joining(System.lineSeparator())); + String documentContext = documents.stream() + .map(Document::getText) + .collect(Collectors.joining(System.lineSeparator())); // 3. Augment the user prompt with the document context. UserMessage userMessage = chatClientRequest.prompt().getUserMessage();