feat: knowledge

This commit is contained in:
wangdan-fit2cloud 2025-06-09 19:57:49 +08:00
parent f0bbe1c2f8
commit 76e3eeba14
2 changed files with 134 additions and 111 deletions

View File

@ -39,38 +39,6 @@ const getKnowledgeList: (
return get(`${prefix}/knowledge/${page.current_page}/${page.page_size}`, param, loading) return get(`${prefix}/knowledge/${page.current_page}/${page.page_size}`, param, loading)
} }
/**
*
* @param
*/
const getAllKnowledge: (loading?: Ref<boolean>) => Promise<Result<any[]>> = (loading) => {
return get(`${prefix}`, undefined, loading)
}
/**
*
* @param knowledge_id
* @query sync_type // 同步类型->replace:替换同步,complete:完整同步
*/
const putSyncWebKnowledge: (
knowledge_id: string,
sync_type: string,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (knowledge_id, sync_type, loading) => {
return put(`${prefix}/knowledge/${knowledge_id}/sync`, undefined, { sync_type }, loading)
}
/**
*
* @param knowledge_id
*/
const putReEmbeddingKnowledge: (
knowledge_id: string,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (knowledge_id, loading) => {
return put(`${prefix}/knowledge/${knowledge_id}/embedding`, undefined, undefined, loading)
}
/** /**
* *
* @param knowledge_id * @param knowledge_id
@ -82,41 +50,6 @@ const getKnowledgeDetail: (knowledge_id: string, loading?: Ref<boolean>) => Prom
return get(`${prefix}/knowledge/${knowledge_id}`, undefined, loading) return get(`${prefix}/knowledge/${knowledge_id}`, undefined, loading)
} }
/**
*
* @param
* {
"name": "string",
"folder_id": "string",
"desc": "string",
"embedding": "string"
}
*/
const postKnowledge: (data: knowledgeData, loading?: Ref<boolean>) => Promise<Result<any>> = (
data,
loading,
) => {
return post(`${prefix}/knowledge/base`, data, undefined, loading, 1000 * 60 * 5)
}
/**
* Web知识库
* @param
* {
"name": "string",
"folder_id": "string",
"desc": "string",
"embedding": "string",
"source_url": "string",
"selector": "string"
}
*/
const postWebKnowledge: (data: any, loading?: Ref<boolean>) => Promise<Result<any>> = (
data,
loading,
) => {
return post(`${prefix}/knowledge/web`, data, undefined, loading)
}
/** /**
* *
* @param * @param
@ -135,18 +68,25 @@ const putKnowledge: (
} }
/** /**
* *
* @param knowledge_id * @param knowledge_id
* @param loading
* @query { query_text: string, top_number: number, similarity: number }
* @returns
*/ */
const getKnowledgeHitTest: ( const delKnowledge: (knowledge_id: String, loading?: Ref<boolean>) => Promise<Result<boolean>> = (
knowledge_id,
loading,
) => {
return del(`${prefix}/${knowledge_id}`, undefined, {}, loading)
}
/**
*
* @param knowledge_id
*/
const putReEmbeddingKnowledge: (
knowledge_id: string, knowledge_id: string,
data: any,
loading?: Ref<boolean>, loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (knowledge_id, data, loading) => { ) => Promise<Result<any>> = (knowledge_id, loading) => {
return get(`${prefix}/${knowledge_id}/hit_test`, data, loading) return put(`${prefix}/knowledge/${knowledge_id}/embedding`, undefined, undefined, loading)
} }
/** /**
@ -160,7 +100,12 @@ const exportKnowledge: (
knowledge_id: string, knowledge_id: string,
loading?: Ref<boolean>, loading?: Ref<boolean>,
) => Promise<any> = (knowledge_name, knowledge_id, loading) => { ) => Promise<any> = (knowledge_name, knowledge_id, loading) => {
return exportExcel(knowledge_name + '.xlsx', `${prefix}/${knowledge_id}/knowledge/${knowledge_id}/export`, undefined, loading) return exportExcel(
knowledge_name + '.xlsx',
`${prefix}/${knowledge_id}/knowledge/${knowledge_id}/export`,
undefined,
loading,
)
} }
/** /**
*Zip知识库 *Zip知识库
@ -182,6 +127,80 @@ const exportZipKnowledge: (
) )
} }
/**
*
* @param knowledge_id id
* @param data
* @param loading
* @returns
*/
const putGenerateRelated: (
knowledge_id: string,
data: any,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (knowledge_id, data, loading) => {
return put(`${prefix}/${knowledge_id}/generate_related`, data, null, loading)
}
/**
*
* @param knowledge_id
* @param loading
* @query { query_text: string, top_number: number, similarity: number }
* @returns
*/
const getKnowledgeHitTest: (
knowledge_id: string,
data: any,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (knowledge_id, data, loading) => {
return get(`${prefix}/${knowledge_id}/hit_test`, data, loading)
}
/**
*
* @param knowledge_id
* @query sync_type // 同步类型->replace:替换同步,complete:完整同步
*/
const putSyncWebKnowledge: (
knowledge_id: string,
sync_type: string,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (knowledge_id, sync_type, loading) => {
return put(`${prefix}/knowledge/${knowledge_id}/sync`, undefined, { sync_type }, loading)
}
/**
*
* @param
* {
"name": "string",
"folder_id": "string",
"desc": "string",
"embedding": "string"
}
*/
const postKnowledge: (data: knowledgeData, loading?: Ref<boolean>) => Promise<Result<any>> = (
data,
loading,
) => {
return post(`${prefix}/knowledge/base`, data, undefined, loading, 1000 * 60 * 5)
}
/**
* 使
* @param application_id
* @param loading
* @query { query_text: string, top_number: number, similarity: number }
* @returns
*/
const getKnowledgeEmdeddingModel: (
knowledge_id: string,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (knowledge_id, loading) => {
return get(`${prefix}/${knowledge_id}/emdedding_model`, loading)
}
/** /**
* 使 * 使
* @param application_id * @param application_id
@ -195,6 +214,34 @@ const getKnowledgeModel: (
) => Promise<Result<Array<any>>> = (knowledge_id, loading) => { ) => Promise<Result<Array<any>>> = (knowledge_id, loading) => {
return get(`${prefix}/${knowledge_id}/model`, loading) return get(`${prefix}/${knowledge_id}/model`, loading)
} }
/**
* Web知识库
* @param
* {
"name": "string",
"folder_id": "string",
"desc": "string",
"embedding": "string",
"source_url": "string",
"selector": "string"
}
*/
const postWebKnowledge: (data: any, loading?: Ref<boolean>) => Promise<Result<any>> = (
data,
loading,
) => {
return post(`${prefix}/knowledge/web`, data, undefined, loading)
}
/**
*
* @param
*/
const getAllKnowledge: (loading?: Ref<boolean>) => Promise<Result<any[]>> = (loading) => {
return get(`${prefix}`, undefined, loading)
}
/** /**
* *
* @param knowledge_id * @param knowledge_id
@ -218,48 +265,24 @@ const importLarkDocument: (
) => Promise<Result<Array<any>>> = (knowledge_id, data, loading) => { ) => Promise<Result<Array<any>>> = (knowledge_id, data, loading) => {
return post(`${prefix}/lark/${knowledge_id}/import`, data, null, loading) return post(`${prefix}/lark/${knowledge_id}/import`, data, null, loading)
} }
/**
*
* @param knowledge_id id
* @param data
* @param loading
* @returns
*/
const generateRelated: (
knowledge_id: string,
data: any,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (knowledge_id, data, loading) => {
return put(`${prefix}/${knowledge_id}/generate_related`, data, null, loading)
}
/**
*
* @param knowledge_id
*/
const delKnowledge: (knowledge_id: String, loading?: Ref<boolean>) => Promise<Result<boolean>> = (
knowledge_id,
loading
) => {
return del(`${prefix}/${knowledge_id}`, undefined, {}, loading)
}
export default { export default {
getKnowledgeByFolder, getKnowledgeByFolder,
getKnowledgeList, getKnowledgeList,
putReEmbeddingKnowledge,
putSyncWebKnowledge,
getKnowledgeDetail, getKnowledgeDetail,
postKnowledge,
postWebKnowledge,
putKnowledge, putKnowledge,
getKnowledgeHitTest, delKnowledge,
putReEmbeddingKnowledge,
exportKnowledge, exportKnowledge,
exportZipKnowledge, exportZipKnowledge,
putGenerateRelated,
getKnowledgeHitTest,
putSyncWebKnowledge,
postKnowledge,
getKnowledgeModel, getKnowledgeModel,
postWebKnowledge,
getLarkDocumentList, getLarkDocumentList,
importLarkDocument, importLarkDocument,
generateRelated, getAllKnowledge,
delKnowledge,
getAllKnowledge
} }

View File

@ -176,7 +176,7 @@ const submitHandle = async (formEl: FormInstance) => {
...form.value, ...form.value,
state_list: stateMap[state.value] state_list: stateMap[state.value]
} }
knowledgeApi.generateRelated(id ? id : knowledgeId.value, data, loading).then(() => { knowledgeApi.putGenerateRelated(id ? id : knowledgeId.value, data, loading).then(() => {
MsgSuccess(t('views.document.generateQuestion.successMessage')) MsgSuccess(t('views.document.generateQuestion.successMessage'))
dialogVisible.value = false dialogVisible.value = false
}) })