Files
nl-tcm-agent-admin/src/api/kb.js

36 lines
2.2 KiB
JavaScript
Raw Normal View History

2026-08-15 12:52:39 +08:00
import { get, post, put, del, upload } from './request'
// ---------------- 知识库:库管理 ----------------
export const getLibraries = (opts) => get('/kb/admin/libraries', {}, opts)
export const getLibrary = (id) => get(`/kb/admin/libraries/${id}`)
export const createLibrary = (data) => post('/kb/admin/libraries', data)
export const deleteLibrary = (id) => del(`/kb/admin/libraries/${id}`)
// ---------------- 知识库:文档管理 ----------------
export const getDocs = (libraryId) => get(`/kb/admin/libraries/${libraryId}/docs`)
export const getDoc = (id) => get(`/kb/admin/docs/${id}`)
export const deleteDoc = (id) => del(`/kb/admin/docs/${id}`)
// 导入formData 需含 library_id / file可选 title / max_len / overlap
// opts 可传 { silent: true }(批量导入逐文件报错由队列 UI 展示,不弹全局 message
export const importDoc = (formData, opts) => upload('/kb/admin/docs/import', formData, { timeout: 300000, ...opts })
// ---------------- 知识库:药品抓取任务 ----------------
export const getCrawlSources = () => get('/kb/admin/crawl/sources')
export const getCrawlTasks = (opts) => get('/kb/admin/crawl/tasks', {}, opts)
export const createCrawlTask = (data) => post('/kb/admin/crawl/tasks', data)
export const updateCrawlTask = (id, data) => put(`/kb/admin/crawl/tasks/${id}`, data)
export const deleteCrawlTask = (id) => del(`/kb/admin/crawl/tasks/${id}`)
export const runCrawlTask = (id) => post(`/kb/admin/crawl/tasks/${id}/run`)
export const getCrawlLogs = (id, limit = 20) => get(`/kb/admin/crawl/tasks/${id}/logs`, { limit })
// 重新分段:用新参数对已导入文档重切(旧分段软删)
export const rechunkDoc = (id, data) => post(`/kb/admin/docs/${id}/rechunk`, data)
// ---------------- 知识库:分段管理 ----------------
export const getChunks = (docId) => get(`/kb/admin/docs/${docId}/chunks`)
export const updateChunk = (id, data) => put(`/kb/admin/chunks/${id}`, data)
// 批量启用/禁用/删除:{ids: [], action: 'enable'|'disable'|'delete'}
export const batchChunks = (data) => put('/kb/admin/chunks/batch', data)
// ---------------- 知识库:检索 ----------------
export const kbSearch = (data) => post('/kb/admin/search', data) // {library_id, query, top_k}