mirror of
https://gitcode.com/ageerle/ruoyi-ai.git
synced 2026-04-03 23:16:12 +00:00
feat: 对话时记录对话角色
This commit is contained in:
@@ -12,8 +12,8 @@ import okhttp3.sse.EventSource;
|
||||
import okhttp3.sse.EventSourceListener;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.ruoyi.chat.service.chat.IChatCostService;
|
||||
import org.ruoyi.chat.util.SSEUtil;
|
||||
import org.ruoyi.common.chat.entity.chat.ChatCompletionResponse;
|
||||
import org.ruoyi.common.chat.entity.chat.Message;
|
||||
import org.ruoyi.common.chat.request.ChatRequest;
|
||||
import org.ruoyi.common.core.utils.SpringUtils;
|
||||
import org.ruoyi.common.core.utils.StringUtils;
|
||||
@@ -67,6 +67,8 @@ public class SSEEventSourceListener extends EventSourceListener {
|
||||
emitter.complete();
|
||||
// 扣除费用
|
||||
ChatRequest chatRequest = new ChatRequest();
|
||||
// 设置对话角色
|
||||
chatRequest.setRole(Message.Role.ASSISTANT.getName());
|
||||
chatRequest.setModel(modelName);
|
||||
chatRequest.setPrompt(stringBuffer.toString());
|
||||
chatCostService.deductToken(chatRequest);
|
||||
|
||||
@@ -90,6 +90,8 @@ public class SseServiceImpl implements ISseService {
|
||||
chatRequest.setSessionId(chatSessionBo.getId());
|
||||
}
|
||||
LocalCache.CACHE.put("sessionId", chatRequest.getSessionId());
|
||||
// 设置对话角色
|
||||
chatRequest.setRole(Message.Role.USER.getName());
|
||||
// 保存消息记录 并扣除费用
|
||||
chatCostService.deductToken(chatRequest);
|
||||
// 根据模型分类调用不同的处理逻辑
|
||||
|
||||
Reference in New Issue
Block a user