mirror of
https://github.com/langgenius/dify.git
synced 2024-11-16 03:32:23 +08:00
66 lines
2.5 KiB
TypeScript
66 lines
2.5 KiB
TypeScript
|
import type { Fetcher } from 'swr'
|
||
|
import { del, get, post } from './base'
|
||
|
import type { AnnotationEnableStatus, AnnotationItemBasic, EmbeddingModelConfig } from '@/app/components/app/annotation/type'
|
||
|
import { ANNOTATION_DEFAULT } from '@/config'
|
||
|
|
||
|
export const fetchAnnotationConfig = (appId: string) => {
|
||
|
return get(`apps/${appId}/annotation-setting`)
|
||
|
}
|
||
|
export const updateAnnotationStatus = (appId: string, action: AnnotationEnableStatus, embeddingModel?: EmbeddingModelConfig, score?: number) => {
|
||
|
let body: any = {
|
||
|
score_threshold: score || ANNOTATION_DEFAULT.score_threshold,
|
||
|
}
|
||
|
if (embeddingModel) {
|
||
|
body = {
|
||
|
...body,
|
||
|
...embeddingModel,
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return post(`apps/${appId}/annotation-reply/${action}`, {
|
||
|
body,
|
||
|
})
|
||
|
}
|
||
|
|
||
|
export const updateAnnotationScore = (appId: string, settingId: string, score: number) => {
|
||
|
return post(`apps/${appId}/annotation-settings/${settingId}`, {
|
||
|
body: { score_threshold: score },
|
||
|
})
|
||
|
}
|
||
|
|
||
|
export const queryAnnotationJobStatus = (appId: string, action: AnnotationEnableStatus, jobId: string) => {
|
||
|
return get(`apps/${appId}/annotation-reply/${action}/status/${jobId}`)
|
||
|
}
|
||
|
|
||
|
export const fetchAnnotationList = (appId: string, params: Record<string, any>) => {
|
||
|
return get(`apps/${appId}/annotations`, { params })
|
||
|
}
|
||
|
|
||
|
export const fetchExportAnnotationList = (appId: string) => {
|
||
|
return get(`apps/${appId}/annotations/export`)
|
||
|
}
|
||
|
|
||
|
export const addAnnotation = (appId: string, body: AnnotationItemBasic) => {
|
||
|
return post(`apps/${appId}/annotations`, { body })
|
||
|
}
|
||
|
|
||
|
export const annotationBatchImport: Fetcher<{ job_id: string; job_status: string }, { url: string; body: FormData }> = ({ url, body }) => {
|
||
|
return post<{ job_id: string; job_status: string }>(url, { body }, { bodyStringify: false, deleteContentType: true })
|
||
|
}
|
||
|
|
||
|
export const checkAnnotationBatchImportProgress: Fetcher<{ job_id: string; job_status: string }, { jobID: string; appId: string }> = ({ jobID, appId }) => {
|
||
|
return get<{ job_id: string; job_status: string }>(`/apps/${appId}/annotations/batch-import-status/${jobID}`)
|
||
|
}
|
||
|
|
||
|
export const editAnnotation = (appId: string, annotationId: string, body: AnnotationItemBasic) => {
|
||
|
return post(`apps/${appId}/annotations/${annotationId}`, { body })
|
||
|
}
|
||
|
|
||
|
export const delAnnotation = (appId: string, annotationId: string) => {
|
||
|
return del(`apps/${appId}/annotations/${annotationId}`)
|
||
|
}
|
||
|
|
||
|
export const fetchHitHistoryList = (appId: string, annotationId: string, params: Record<string, any>) => {
|
||
|
return get(`apps/${appId}/annotations/${annotationId}/hit-histories`, { params })
|
||
|
}
|