Skip to content

Commit 0779253

Browse files
authored
Merge pull request #719 from ashakirin/fix/moved-conversation_id-to-chat_memory_service
fix: moved adding conversation id into ChatMemoryService
2 parents 8999285 + aad8511 commit 0779253

2 files changed

Lines changed: 5 additions & 3 deletions

File tree

samples/spring-ai/assistant/src/main/java/com/example/assistant/service/ChatMemoryService.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package com.example.assistant.service;
22

3+
import org.springframework.ai.chat.client.ChatClient;
4+
import org.springframework.ai.chat.memory.ChatMemory;
35
import org.springframework.ai.chat.memory.MessageWindowChatMemory;
46
import org.springframework.ai.chat.memory.repository.jdbc.JdbcChatMemoryRepository;
57
import org.springframework.ai.chat.memory.repository.jdbc.PostgresChatMemoryRepositoryDialect;
@@ -51,9 +53,9 @@ public String getCurrentConversationId() {
5153
/**
5254
* Add the conversation ID parameter to the advisor
5355
*/
54-
public void addConversationIdToAdvisor(Object advisor) {
56+
public void addConversationIdToAdvisor(ChatClient.AdvisorSpec advisor) {
5557
String conversationId = getCurrentConversationId();
56-
advisor.getClass().cast(advisor);
5758
logger.debug("Adding conversation ID {} to advisor", conversationId);
59+
advisor.param(ChatMemory.CONVERSATION_ID, conversationId);
5860
}
5961
}

samples/spring-ai/assistant/src/main/java/com/example/assistant/service/ChatService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ public String processChat(ChatRequest request) {
6363
return RetryUtils.executeWithRetry(() -> {
6464
var chatResponse = chatClient
6565
.prompt().user(request.prompt())
66-
.advisors(advisor -> advisor.param(ChatMemory.CONVERSATION_ID, chatMemoryService.getCurrentConversationId()))
66+
.advisors(chatMemoryService::addConversationIdToAdvisor)
6767
.call().chatResponse();
6868

6969
return (chatResponse != null) ? chatResponse.getResult().getOutput().getText() : "I don't know - no response received.";

0 commit comments

Comments
 (0)