52 lines
1.2 KiB
JavaScript
52 lines
1.2 KiB
JavaScript
import { apiGet } from './base'
|
|
|
|
export const graphApi = {
|
|
getGraphs: async () => {
|
|
return await apiGet('/api/graph/list', {}, true)
|
|
},
|
|
|
|
getSubgraph: async (params) => {
|
|
const {
|
|
kb_id,
|
|
node_label = '*',
|
|
max_depth = 2,
|
|
max_nodes = 100,
|
|
exclude_chunk = false
|
|
} = params
|
|
|
|
if (!kb_id) {
|
|
throw new Error('kb_id is required')
|
|
}
|
|
|
|
const queryParams = new URLSearchParams({
|
|
kb_id,
|
|
node_label,
|
|
max_depth: max_depth.toString(),
|
|
max_nodes: max_nodes.toString(),
|
|
exclude_chunk: exclude_chunk.toString()
|
|
})
|
|
|
|
return await apiGet(`/api/graph/subgraph?${queryParams.toString()}`, {}, true)
|
|
},
|
|
|
|
getStats: async (kb_id) => {
|
|
if (!kb_id) {
|
|
throw new Error('kb_id is required')
|
|
}
|
|
|
|
const queryParams = new URLSearchParams({ kb_id })
|
|
return await apiGet(`/api/graph/stats?${queryParams.toString()}`, {}, true)
|
|
},
|
|
|
|
getLabels: async (kb_id) => {
|
|
if (!kb_id) {
|
|
throw new Error('kb_id is required')
|
|
}
|
|
|
|
const queryParams = new URLSearchParams({ kb_id })
|
|
return await apiGet(`/api/graph/labels?${queryParams.toString()}`, {}, true)
|
|
}
|
|
}
|
|
|
|
export const unifiedApi = graphApi
|