From db5a038b1c407b377f1c25ebff1db806ddfd1868 Mon Sep 17 00:00:00 2001
From: 18586361686 <1207669650@qq.com>
Date: 星期二, 13 五月 2025 00:06:45 +0800
Subject: [PATCH] chore: 更换easyExcel为fastExcel,增加excel分割器
---
aiflowy-modules/aiflowy-module-ai/src/main/java/tech/aiflowy/ai/controller/AiDocumentController.java | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/aiflowy-modules/aiflowy-module-ai/src/main/java/tech/aiflowy/ai/controller/AiDocumentController.java b/aiflowy-modules/aiflowy-module-ai/src/main/java/tech/aiflowy/ai/controller/AiDocumentController.java
index 170aadd..31344db 100644
--- a/aiflowy-modules/aiflowy-module-ai/src/main/java/tech/aiflowy/ai/controller/AiDocumentController.java
+++ b/aiflowy-modules/aiflowy-module-ai/src/main/java/tech/aiflowy/ai/controller/AiDocumentController.java
@@ -12,6 +12,7 @@
import tech.aiflowy.ai.service.*;
import tech.aiflowy.ai.service.impl.AiDocumentServiceImpl;
import tech.aiflowy.common.ai.DocumentParserFactory;
+import tech.aiflowy.common.ai.ExcelDocumentSplitter;
import tech.aiflowy.common.domain.Result;
import tech.aiflowy.common.tree.Tree;
import tech.aiflowy.common.util.RequestUtil;
@@ -208,7 +209,7 @@
if (!userWillSave){
List<AiDocumentChunk> previewList = new ArrayList<>();
// 璁剧疆鍒嗗壊鍣� todo 鏈潵鍙互閫氳繃鍙傛暟鏉ユ寚瀹氬垎鍓插櫒锛屼笉鍚岀殑鏂囨。浣跨敤涓嶅悓鐨勫垎鍓插櫒鏁堟灉鏇村ソ
- DocumentSplitter documentSplitter = getDocumentSplitter(splitterName, chunkSize, overlapSize, regex);
+ DocumentSplitter documentSplitter = getDocumentSplitter(splitterName, chunkSize, overlapSize, regex, 2);
Document document = Document.of(aiDocument.getContent());
List<Document> documents = documentSplitter.split(document);
int sort = 1;
@@ -342,7 +343,7 @@
}
// 璁剧疆鍒嗗壊鍣� todo 鏈潵鍙互閫氳繃鍙傛暟鏉ユ寚瀹氬垎鍓插櫒锛屼笉鍚岀殑鏂囨。浣跨敤涓嶅悓鐨勫垎鍓插櫒鏁堟灉鏇村ソ
- documentStore.setDocumentSplitter(getDocumentSplitter(splitterName, chunkSize, overlapSize, regex));
+ documentStore.setDocumentSplitter(getDocumentSplitter(splitterName, chunkSize, overlapSize, regex, 2));
AiDocument finalEntity = entity;
AtomicInteger sort = new AtomicInteger(1);
@@ -389,7 +390,7 @@
}
}
- public DocumentSplitter getDocumentSplitter (String splitterName, int chunkSize, int overlapSize, String regex){
+ public DocumentSplitter getDocumentSplitter (String splitterName, int chunkSize, int overlapSize, String regex, int excelRows){
if (StringUtil.noText(splitterName)) {
return null;
@@ -405,6 +406,8 @@
} else {
return new SimpleTokenizeSplitter(chunkSize, overlapSize);
}
+ case "ExcelDocumentSplitter":
+ return new ExcelDocumentSplitter(excelRows);
default:
return null;
}
--
Gitblit v1.8.0