Procházet zdrojové kódy

1、ai模型角色(新增角色设定更改)

liyanbo před 8 měsíci
rodič
revize
0e1ee0f87a

+ 3 - 0
byzs-module-ai/src/main/java/cn/iocoder/byzs/module/ai/controller/admin/chat/vo/conversation/AiChatConversationRespVO.java

@@ -49,6 +49,9 @@ public class AiChatConversationRespVO implements VO {
     @Schema(description = "角色设定", example = "一个快乐的程序员")
     private String systemMessage;
 
+    @Schema(description = "系统消息", example = "一个快乐的程序员")
+    private String description;
+
     @Schema(description = "温度参数", requiredMode = Schema.RequiredMode.REQUIRED, example = "0.8")
     private Double temperature;
 

+ 4 - 1
byzs-module-ai/src/main/java/cn/iocoder/byzs/module/ai/controller/admin/chat/vo/conversation/AiChatConversationUpdateMyReqVO.java

@@ -24,9 +24,12 @@ public class AiChatConversationUpdateMyReqVO {
     @Schema(description = "知识库编号", example = "1")
     private Long knowledgeId;
 
-    @Schema(description = "角色设定", example = "一个快乐的程序员")
+    @Schema(description = "系统消息", example = "一个快乐的程序员")
     private String systemMessage;
 
+    @Schema(description = "角色设定", example = "一个快乐的程序员")
+    private String description;
+
     @Schema(description = "温度参数", example = "0.8")
     private Double temperature;
 

+ 6 - 1
byzs-module-ai/src/main/java/cn/iocoder/byzs/module/ai/dal/dataobject/chat/AiChatConversationDO.java

@@ -96,9 +96,14 @@ public class AiChatConversationDO extends BaseDO {
     // ========== 对话配置 ==========
 
     /**
-     * 角色设定
+     * 系统消息
      */
     private String systemMessage;
+
+    /**
+     * 角色设定
+     */
+    private String description;
     /**
      * 温度参数
      *

+ 1 - 1
byzs-module-ai/src/main/java/cn/iocoder/byzs/module/ai/service/chat/AiChatConversationServiceImpl.java

@@ -71,7 +71,7 @@ public class AiChatConversationServiceImpl implements AiChatConversationService
                 .setModelId(model.getId()).setModel(model.getModel()).setModel2dPath(role != null ? role.getModel2dPath() : null).setModel3dPath(role != null ? role.getModel3dPath() : null)
                 .setTemperature(model.getTemperature()).setMaxTokens(model.getMaxTokens()).setMaxContexts(model.getMaxContexts());
         if (role != null) {
-            conversation.setTitle(role.getName()).setRoleId(role.getId()).setSystemMessage(role.getSystemMessage());
+            conversation.setTitle(role.getName()).setRoleId(role.getId()).setDescription(role.getDescription()).setSystemMessage(role.getSystemMessage());
         } else {
             conversation.setTitle(AiChatConversationDO.TITLE_DEFAULT);
         }

+ 2 - 2
byzs-module-ai/src/main/java/cn/iocoder/byzs/module/ai/service/chat/AiChatMessageServiceImpl.java

@@ -369,8 +369,8 @@ public class AiChatMessageServiceImpl implements AiChatMessageService {
                                AiModelDO model, AiChatMessageSendReqVO sendReqVO) {
         List<Message> chatMessages = new ArrayList<>();
         // 1.1 System Context 角色设定
-        if (StrUtil.isNotBlank(conversation.getSystemMessage())) {
-            chatMessages.add(new SystemMessage(conversation.getSystemMessage()));
+        if (StrUtil.isNotBlank(conversation.getDescription())) {
+            chatMessages.add(new SystemMessage(conversation.getDescription()));
         }
 
         // 1.2 历史 history message 历史消息