mirror of
https://gitcode.com/ageerle/ruoyi-ai.git
synced 2026-03-13 20:53:42 +08:00
fix(小程序): 1. 修复小程序一直停留在加载页面 2. 修复小程序无法正常对话
This commit is contained in:
@@ -61,7 +61,7 @@ public class PlusWebSocketHandler extends AbstractWebSocketHandler {
|
||||
}
|
||||
ChatCompletion chatCompletion = ChatCompletion
|
||||
.builder()
|
||||
.model(ChatCompletion.Model.GPT_3_5_TURBO.getName())
|
||||
.model("gpt-4o-mini")
|
||||
.messages(messages)
|
||||
.temperature(0.2)
|
||||
.stream(true)
|
||||
|
||||
@@ -9,6 +9,7 @@ import okhttp3.sse.EventSource;
|
||||
import okhttp3.sse.EventSourceListener;
|
||||
import org.ruoyi.common.chat.constant.OpenAIConst;
|
||||
import org.ruoyi.common.chat.entity.chat.ChatCompletionResponse;
|
||||
import org.ruoyi.common.chat.entity.chat.Message;
|
||||
import org.springframework.web.socket.TextMessage;
|
||||
import org.springframework.web.socket.WebSocketSession;
|
||||
|
||||
@@ -57,7 +58,12 @@ public class WebSocketEventListener extends EventSourceListener {
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
// 读取Json
|
||||
ChatCompletionResponse completionResponse = mapper.readValue(data, ChatCompletionResponse.class);
|
||||
String delta = mapper.writeValueAsString(completionResponse.getChoices().get(0).getDelta());
|
||||
String delta = "";
|
||||
try {
|
||||
delta = mapper.writeValueAsString(completionResponse.getChoices().get(0).getDelta());
|
||||
}catch (Exception e){
|
||||
log.error("转换失败{}",e.getMessage());
|
||||
}
|
||||
session.sendMessage(new TextMessage(delta));
|
||||
}
|
||||
|
||||
@@ -75,18 +81,9 @@ public class WebSocketEventListener extends EventSourceListener {
|
||||
return;
|
||||
}
|
||||
ResponseBody body = response.body();
|
||||
|
||||
|
||||
if (Objects.nonNull(body)) {
|
||||
// 返回非流式回复内容
|
||||
if(response.code() == OpenAIConst.SUCCEED_CODE){
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
ChatCompletionResponse completionResponse = mapper.readValue(body.string(), ChatCompletionResponse.class);
|
||||
String delta = mapper.writeValueAsString(completionResponse.getChoices().get(0).getMessage().getContent());
|
||||
session.sendMessage(new TextMessage(delta));
|
||||
}else {
|
||||
log.error("Socket连接异常data:{},异常:{}", body.string(), t);
|
||||
}
|
||||
log.error("Socket连接异常data:{},异常:{}", body.string(), t);
|
||||
} else {
|
||||
log.error("Socket连接异常data:{},异常:{}", response, t);
|
||||
}
|
||||
|
||||
@@ -37,6 +37,12 @@ public class ChatMessage extends BaseEntity {
|
||||
@NotBlank(message = "用户ID", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long UserId;
|
||||
|
||||
/**
|
||||
* 对话角色
|
||||
*/
|
||||
private String role;
|
||||
|
||||
|
||||
/**
|
||||
* 消息内容
|
||||
*/
|
||||
|
||||
@@ -30,13 +30,17 @@ public class ChatMessageBo extends BaseEntity {
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
@NotBlank(message = "用户ID", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long UserId;
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 用户名称
|
||||
*/
|
||||
private String UserName;
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 对话角色
|
||||
*/
|
||||
private String role;
|
||||
|
||||
/**
|
||||
* 消息内容
|
||||
@@ -52,19 +56,16 @@ public class ChatMessageBo extends BaseEntity {
|
||||
/**
|
||||
* 累计 Tokens
|
||||
*/
|
||||
@NotNull(message = "累计 Tokens不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Integer totalTokens;
|
||||
|
||||
/**
|
||||
* 模型名称
|
||||
*/
|
||||
@NotBlank(message = "模型名称不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String modelName;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String remark;
|
||||
|
||||
}
|
||||
|
||||
@@ -46,6 +46,12 @@ public class ChatMessageVo implements Serializable {
|
||||
@NotBlank(message = "用户名称")
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 对话角色
|
||||
*/
|
||||
private String role;
|
||||
|
||||
|
||||
/**
|
||||
* 消息内容
|
||||
*/
|
||||
|
||||
2
script/sql/update/update20250328.sql
Normal file
2
script/sql/update/update20250328.sql
Normal file
@@ -0,0 +1,2 @@
|
||||
ALTER TABLE `chat_message`
|
||||
ADD COLUMN `role` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '对话角色' AFTER `content`;
|
||||
Reference in New Issue
Block a user