feat(knowledge): add chunk management and document processing features

This commit is contained in:
2025-10-16 16:23:53 +08:00
parent 4f956e79ba
commit 5a0a9ef2a1
17 changed files with 1655 additions and 366 deletions

View File

@@ -5,6 +5,7 @@ import type {
IFetchKnowledgeListRequestParams,
IFetchDocumentListRequestBody,
ITestRetrievalRequestBody,
IFetchChunkListRequestBody,
} from '@/interfaces/request/knowledge';
import type {
IKnowledge,
@@ -12,8 +13,10 @@ import type {
IChunk,
IRenameTag,
IParserConfig,
IKnowledgeFileParserConfig,
} from '@/interfaces/database/knowledge';
import type { GridRowSelectionModel } from '@mui/x-data-grid';
import type { IRunDocumentRequestBody } from '@/interfaces/request/document';
// 知识库相关API服务
const knowledgeService = {
@@ -110,18 +113,21 @@ const knowledgeService = {
return request.delete(`${api.document_delete}/${doc_id}`);
},
// 更改文档状态
changeDocumentStatus: (data: { doc_id: string | Array<string | number>; status: string }) => {
/**
* 更改文档状态
* @param data 文档ID列表和状态 status 0 禁用 1 启用
*/
changeDocumentStatus: (data: { doc_ids: Array<string | number>; status: string | number }) => {
return post(api.document_change_status, data);
},
// 运行文档处理
runDocument: (data: { doc_id: string | Array<string | number>}) => {
runDocument: (data: IRunDocumentRequestBody) => {
return post(api.document_run, data);
},
// 更改文档解析器配置
changeDocumentParser: (data: { doc_id: string; parser_config: IParserConfig }) => {
changeDocumentParser: (data: { doc_id: string; parser_config: IKnowledgeFileParserConfig }) => {
return post(api.document_change_parser, data);
},
@@ -132,11 +138,13 @@ const knowledgeService = {
// 获取文档文件
getDocumentFile: (params: { doc_id: string }) => {
return request.get(api.get_document_file, { params });
return request.get(`${api.get_document_file}/${params.doc_id}`, {
responseType: 'blob'
});
},
// 获取文档信息
getDocumentInfos: (data: { doc_id: string | Array<string | number> }) => {
getDocumentInfos: (data: { doc_ids: string | Array<string | number> }) => {
return post(api.document_infos, data);
},
@@ -158,7 +166,7 @@ const knowledgeService = {
// ===== 分块管理 =====
// 获取分块列表
getChunkList: (data: any) => {
getChunkList: (data: IFetchChunkListRequestBody) => {
return post(api.chunk_list, data);
},