From c2a6b02b571717fafe30411f74e7cbeb5b83a24d Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sun, 2 Mar 2025 21:52:41 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E5=8A=9F=E8=83=BD=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E3=80=91AI=EF=BC=9A=E6=96=B0=E5=A2=9E=E7=9F=A5=E8=AF=86?= =?UTF-8?q?=E5=BA=93=E5=88=86=E6=AE=B5=E7=9A=84=E6=96=B0=E5=A2=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/ai/knowledge/segment/index.ts | 32 ++- src/router/modules/remaining.ts | 12 ++ src/views/ai/knowledge/document/index.vue | 16 ++ .../segment/KnowledgeSegmentForm.vue | 101 ++++++++++ src/views/ai/knowledge/segment/index.vue | 190 ++++++++++++++++++ 5 files changed, 344 insertions(+), 7 deletions(-) create mode 100644 src/views/ai/knowledge/segment/KnowledgeSegmentForm.vue create mode 100644 src/views/ai/knowledge/segment/index.vue diff --git a/src/api/ai/knowledge/segment/index.ts b/src/api/ai/knowledge/segment/index.ts index 81a3f3f3..d234d997 100644 --- a/src/api/ai/knowledge/segment/index.ts +++ b/src/api/ai/knowledge/segment/index.ts @@ -1,7 +1,7 @@ import request from '@/config/axios' -// AI 知识库分片 VO -export interface AiKnowledgeSegmentRespVO { +// AI 知识库分段 VO +export interface KnowledgeSegmentVO { id: number // 编号 documentId: number // 文档编号 knowledgeId: number // 知识库编号 @@ -14,23 +14,41 @@ export interface AiKnowledgeSegmentRespVO { createTime: number // 创建时间 } -// AI 知识库分片 API +// AI 知识库分段 API export const KnowledgeSegmentApi = { - // 查询知识库分片分页 + // 查询知识库分段分页 getKnowledgeSegmentPage: async (params: any) => { return await request.get({ url: `/ai/knowledge/segment/page`, params }) }, - // 查询知识库分片详情 + // 查询知识库分段详情 getKnowledgeSegment: async (id: number) => { return await request.get({ url: `/ai/knowledge/segment/get?id=` + id }) }, - // 删除知识库分片 + // 删除知识库分段 deleteKnowledgeSegment: async (id: number) => { return await request.delete({ url: `/ai/knowledge/segment/delete?id=` + id }) }, + // 新增知识库分段 + createKnowledgeSegment: async (data: KnowledgeSegmentVO) => { + return await request.post({ url: `/ai/knowledge/segment/create`, data }) + }, + + // 修改知识库分段 + updateKnowledgeSegment: async (data: KnowledgeSegmentVO) => { + return await request.put({ url: `/ai/knowledge/segment/update`, data }) + }, + + // 修改知识库分段状态 + updateKnowledgeSegmentStatus: async (data: any) => { + return await request.put({ + url: `/ai/knowledge/segment/update-status`, + data + }) + }, + // 切片内容 splitContent: async (url: string, segmentMaxTokens: number) => { return await request.get({ @@ -47,7 +65,7 @@ export const KnowledgeSegmentApi = { }) }, - // 搜索知识库分片 + // 搜索知识库分段 searchKnowledgeSegment: async (params: any) => { return await request.get({ url: `/ai/knowledge/segment/search`, diff --git a/src/router/modules/remaining.ts b/src/router/modules/remaining.ts index e3cc1f30..e8c70a4c 100644 --- a/src/router/modules/remaining.ts +++ b/src/router/modules/remaining.ts @@ -667,6 +667,18 @@ const remainingRouter: AppRouteRecordRaw[] = [ hidden: true, activeMenu: '/ai/knowledge' } + }, + { + path: 'knowledge/segment', + component: () => import('@/views/ai/knowledge/segment/index.vue'), + name: 'AiKnowledgeSegment', + meta: { + title: '知识库分段', + icon: 'ep:tickets', + noCache: true, + hidden: true, + activeMenu: '/ai/knowledge' + } } ] }, diff --git a/src/views/ai/knowledge/document/index.vue b/src/views/ai/knowledge/document/index.vue index eb1798e5..7af64acc 100644 --- a/src/views/ai/knowledge/document/index.vue +++ b/src/views/ai/knowledge/document/index.vue @@ -79,6 +79,14 @@ > 编辑 + + 分段 + { } } +/** 跳转到知识库分段页面 */ +const handleSegment = (id: number) => { + router.push({ + name: 'AiKnowledgeSegment', + query: { documentId: id } + }) +} + /** 初始化 **/ onMounted(() => { // 如果知识库 ID 不存在,显示错误提示并关闭页面 diff --git a/src/views/ai/knowledge/segment/KnowledgeSegmentForm.vue b/src/views/ai/knowledge/segment/KnowledgeSegmentForm.vue new file mode 100644 index 00000000..4818de01 --- /dev/null +++ b/src/views/ai/knowledge/segment/KnowledgeSegmentForm.vue @@ -0,0 +1,101 @@ + + diff --git a/src/views/ai/knowledge/segment/index.vue b/src/views/ai/knowledge/segment/index.vue new file mode 100644 index 00000000..f9f988c5 --- /dev/null +++ b/src/views/ai/knowledge/segment/index.vue @@ -0,0 +1,190 @@ + + +