فهرست منبع

删除文档调用python接口

S0025136190 7 ماه پیش
والد
کامیت
7ac613db94

+ 4 - 2
takai-admin/src/main/resources/application.yml

@@ -164,9 +164,9 @@ bigmodel:
   prompt: 你是总结和提问大师。 """应用的名称:{{应用名称}} 这是用户的历史对话记录:{{历史对话}}""" 你只根据用户的对话记录,推演出用户接下来可能提出的问题,不要杜撰问题。可以参考应用的名称和应用的简介。 你必须遵守以下要求:1. 不要输出用户问过的问题;2. 你需要输出3个问题供用户选择。3. 你只需要输出问题,不需要解释,不需要提问。4. 你的问题可以是空的,但你不能杜撰问题。5. 问题需要站在使用这个应用的人的视角提出,因此你要注意提问的语气和人称代词。不要用您这个字。你一定要按照以下格式输出:{"问题":["xxx","xxx","xxx"]}
 deepseek:
   #base url
-#  baseurl: http://10.1.27.4:18079
+  baseurl: http://10.1.27.4:18079
 #  baseurl: http://xia0miduo.gicp.net:6001
-  baseurl: https://rag.ryuiso.com:61079
+#  baseurl: https://rag.ryuiso.com:61079
   #创建知识库
   createKnowledge: /rag/create_collection
   #删除知识库
@@ -185,5 +185,7 @@ deepseek:
   chat: /rag/chat
   #异步提示词(还想问)
   asyncCompletions: /rag/query
+  #删除知识文件
+  deleteDoc: /rag/delete_doc
   #提示词
   prompt: 你是总结和提问大师。你只根据用户的对话记录,推演出用户接下来可能提出的问题,不要杜撰问题。可以参考应用的名称和应用的简介。 你必须遵守以下要求:1. 不要输出用户问过的问题;2. 你需要输出3个问题供用户选择。3. 你只需要输出问题,不需要解释,不需要提问。4. 你的问题可以是空的,但你不能杜撰问题。5. 问题需要站在使用这个应用的人的视角提出,因此你要注意提问的语气和人称代词。不要用您这个字。你一定要按照以下格式输出:{"问题":["xxx","xxx","xxx"]}

+ 21 - 1
takai-ai/src/main/java/com/takai/ai/service/impl/TakaiAiServiceImpl.java

@@ -527,7 +527,27 @@ public class TakaiAiServiceImpl implements ITakaiAiService {
 
     @Override
     public int delDocument(String documentId) {
-        return takaiDocumentMapper.delDocument(documentId);
+        TakaiDocument vo = takaiDocumentMapper.selectTargetDocument(TakaiDocument.builder().documentId(documentId).build());
+        if(vo != null){
+            String url = deepseekConfig.getBaseurl() + deepseekConfig.getDeleteDoc() + "/" + documentId + "/" + vo.getKnowledgeId();
+            Request request = buildDeleteRequest(url);
+            OkHttpClient client = buildOkHttpClient();
+            try {
+                Response response = client.newCall(request).execute();
+                if (response.isSuccessful()) {
+                    String body = response.body().string();
+                    logger.info("删除知识文件调用python接口返回结果:{}", body);
+                    JSONObject obj = JSON.parseObject(body);
+                    Integer code = obj.getInteger("code");
+                    if (code == 200) {
+                        return takaiDocumentMapper.delDocument(documentId);
+                    }
+                }
+            } catch (IOException e) {
+                logger.error("删除知识文件调用python接口失败", e.getMessage());
+            }
+        }
+        return 0;
     }
 
     @Override

+ 10 - 0
takai-common/src/main/java/com/takai/common/config/DeepseekConfig.java

@@ -30,6 +30,8 @@ public class DeepseekConfig {
 
     private String prompt;
 
+    private String deleteDoc;
+
     public String getBaseurl() {
         return baseurl;
     }
@@ -117,4 +119,12 @@ public class DeepseekConfig {
     public void setAsyncCompletions(String asyncCompletions) {
         this.asyncCompletions = asyncCompletions;
     }
+
+    public String getDeleteDoc() {
+        return deleteDoc;
+    }
+
+    public void setDeleteDoc(String deleteDoc) {
+        this.deleteDoc = deleteDoc;
+    }
 }