33import com .xiaozhi .communication .common .ChatSession ;
44import com .xiaozhi .dialogue .llm .api .StreamResponseListener ;
55import com .xiaozhi .dialogue .llm .factory .ChatModelFactory ;
6- import com .xiaozhi .dialogue .llm .memory .ChatMemory ;
6+ import com .xiaozhi .dialogue .llm .memory .ChatMemoryStore ;
77import com .xiaozhi .entity .SysDevice ;
88import com .xiaozhi .entity .SysMessage ;
99import com .xiaozhi .utils .EmojiUtils ;
@@ -71,7 +71,7 @@ public class ChatService {
7171 private static final int DEFAULT_HISTORY_LIMIT = 10 ;
7272
7373 @ Resource
74- private ChatMemory chatMemoryRepository ;
74+ private ChatMemoryStore chatMemoryStore ;
7575
7676 // TODO 移到构建者模式,由连接通过认证,可正常对话时,创建实例,构建好一个完整的Role.
7777 @ Resource
@@ -234,9 +234,9 @@ public void initializeHistory(ChatSession chatSession) {
234234 // 同一个设备重新连接至服务器,会被标识为不同的sessionId。
235235 // 可以将这理解为spring-ai的conversation会话,将sessionId作为conversationId
236236 // 从数据库加载历史记录
237- List <SysMessage > history = chatMemoryRepository .getMessages (device .getDeviceId (),
237+ List <SysMessage > history = chatMemoryStore .getMessages (device .getDeviceId (),
238238 SysMessage .MESSAGE_TYPE_NORMAL , DEFAULT_HISTORY_LIMIT );
239- String systemMessage = chatMemoryRepository .getSystemMessage (device .getDeviceId (), device .getRoleId ());
239+ String systemMessage = chatMemoryStore .getSystemMessage (device .getDeviceId (), device .getRoleId ());
240240 MessageWindowChatMemory chatMemory = MessageWindowChatMemory .builder ()
241241 .maxMessages (DEFAULT_HISTORY_LIMIT )
242242 .build ();// 创建一个新的MessageWindowChatMemory实例,限制为10条消息滚动
@@ -252,7 +252,7 @@ public void initializeHistory(ChatSession chatSession) {
252252 * @param deviceId 设备ID
253253 */
254254 public void clearMessageCache (String deviceId ) {
255- chatMemoryRepository .clearMessages (deviceId );
255+ chatMemoryStore .clearMessages (deviceId );
256256 }
257257
258258 /**
@@ -262,7 +262,7 @@ public void clearMessageCache(String deviceId) {
262262 */
263263 public void addUserMessage (SysDevice device , String message , String messageType ) {
264264 // 更新缓存
265- chatMemoryRepository .addMessage (device .getDeviceId (), device .getSessionId (), "user" , message ,
265+ chatMemoryStore .addMessage (device .getDeviceId (), device .getSessionId (), "user" , message ,
266266 device .getRoleId (), messageType , null );
267267 }
268268
@@ -272,7 +272,7 @@ public void addUserMessage(SysDevice device, String message, String messageType)
272272 * @param message AI消息
273273 */
274274 public void addAssistantMessage (SysDevice device , String message , String messageType ) {
275- chatMemoryRepository .addMessage (device .getDeviceId (), device .getSessionId (), "assistant" , message ,
275+ chatMemoryStore .addMessage (device .getDeviceId (), device .getSessionId (), "assistant" , message ,
276276 device .getRoleId (), messageType , null );
277277 }
278278
@@ -284,7 +284,7 @@ public void addAssistantMessage(SysDevice device, String message, String message
284284 * @param messageType 消息类型
285285 */
286286 public void addMessage (SysDevice device , String message , String role , String messageType , String audioPath ) {
287- chatMemoryRepository .addMessage (device .getDeviceId (), device .getSessionId (), role , message , device .getRoleId (),
287+ chatMemoryStore .addMessage (device .getDeviceId (), device .getSessionId (), role , message , device .getRoleId (),
288288 messageType , audioPath );
289289 }
290290
0 commit comments