Browse Source

提示词修改提交

S0025136190 9 tháng trước cách đây
mục cha
commit
2aad02a8ea

+ 1 - 1
takai-admin/src/main/resources/application.yml

@@ -161,6 +161,6 @@ bigmodel:
   #模型列表
   modelList: https://open.bigmodel.cn/api/biz/model/trial/list
   #提示词
-  prompt: 总结三个建议,二十个字内,固定格式
+  prompt: 你是总结和提问大师。 """应用的名称:{{应用名称}} 这是用户的历史对话记录:{{历史对话}}""" 你只根据用户的对话记录,推演出用户接下来可能提出的问题,不要杜撰问题。可以参考应用的名称和应用的简介。 你必须遵守以下要求:1. 不要输出用户问过的问题;2. 你需要输出3个问题供用户选择。3. 你只需要输出问题,不需要解释,不需要提问。4. 你的问题可以是空的,但你不能杜撰问题。5. 问题需要站在使用这个应用的人的视角提出,因此你要注意提问的语气和人称代词。不要用您这个字。你一定要按照以下格式输出:{"问题":["xxx","xxx","xxx"]}
 
 

+ 9 - 2
takai-bigmodel/src/main/java/com/takai/bigmodel/service/impl/BigModelServiceImpl.java

@@ -787,8 +787,15 @@ public class BigModelServiceImpl implements IBigModelService
                                             String content = String.valueOf(message.get("content"));
                                             if(com.takai.common.utils.StringUtils.isNotEmpty(content)){
                                                 content = content.replace("*", "").replace("1.", "")
-                                                        .replace("2.", "").replace("3.", "");
-                                                if(content.contains("\n")){
+                                                        .replace("2.", "").replace("3.", "")
+                                                        .replace("```json", "").replace("```", "");
+                                                if(isJsonObject(content)){
+                                                    JSONObject conObj = JSON.parseObject(content);
+                                                    JSONArray conArray = conObj.getJSONArray("问题");
+                                                    if(conArray != null && conArray.size() > 0){
+                                                        resultList.addAll(conArray.toJavaList(String.class));
+                                                    }
+                                                } else if(content.contains("\n")){
                                                     String[] strings = content.split("\n");
                                                     List<String> listFromArray = new ArrayList<>(Arrays.asList(strings));
                                                     resultList.addAll(listFromArray);