UnisKB/ui/src/api/application/application.ts

589 lines
14 KiB
TypeScript
Raw Normal View History

2025-06-06 01:39:01 +00:00
import {Result} from '@/request/Result'
import {get, post, postStream, del, put, request, download, exportFile} from '@/request/index'
import type {pageRequest} from '@/api/type/common'
import type {ApplicationFormType} from '@/api/type/application'
import {type Ref} from 'vue'
import type {FormField} from '@/components/dynamics-form/type'
2025-06-03 09:29:33 +00:00
2025-06-06 01:39:01 +00:00
const prefix = '/workspace/' + localStorage.getItem('workspace_id') + '/application'
2025-06-03 09:29:33 +00:00
/**
*
* @param
*/
2025-06-06 01:39:01 +00:00
const getAllApplication: () => Promise<Result<any[]>> = () => {
2025-06-03 09:29:33 +00:00
return get(`${prefix}`)
}
/**
*
* param {
"name": "string",
}
*/
const getApplication: (
page: pageRequest,
param: any,
loading?: Ref<boolean>,
2025-06-06 01:39:01 +00:00
) => Promise<Result<any>> = (page, param, loading) => {
2025-06-03 09:29:33 +00:00
return get(
2025-06-06 01:39:01 +00:00
`${prefix}/${page.current_page}/${page.page_size}`,
2025-06-03 09:29:33 +00:00
param,
loading,
)
}
/**
*
* @param
*/
const postApplication: (
data: ApplicationFormType,
loading?: Ref<boolean>,
2025-06-06 01:39:01 +00:00
) => Promise<Result<any>> = (data, loading) => {
return post(`${prefix}`, data, undefined, loading)
2025-06-03 09:29:33 +00:00
}
/**
*
* @param
*/
const putApplication: (
application_id: String,
data: ApplicationFormType,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, data, loading) => {
return put(`${prefix}/${application_id}`, data, undefined, loading)
}
/**
*
* @param application_id
*/
const delApplication: (
application_id: String,
loading?: Ref<boolean>,
) => Promise<Result<boolean>> = (application_id, loading) => {
return del(`${prefix}/${application_id}`, undefined, {}, loading)
}
/**
*
* @param application_id
*/
const getApplicationDetail: (
application_id: string,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, loading) => {
return get(`${prefix}/${application_id}`, undefined, loading)
}
/**
* 使
* @param application_id
*/
const getApplicationDataset: (
application_id: string,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, loading) => {
return get(`${prefix}/${application_id}/list_dataset`, undefined, loading)
}
/**
* AccessToken
* @param application_id
*/
const getAccessToken: (application_id: string, loading?: Ref<boolean>) => Promise<Result<any>> = (
application_id,
loading,
) => {
return get(`${prefix}/${application_id}/access_token`, undefined, loading)
}
/**
* AccessToken
* @param application_id
* data {
* "is_active": true
* }
*/
const putAccessToken: (
application_id: string,
data: any,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, data, loading) => {
return put(`${prefix}/${application_id}/access_token`, data, undefined, loading)
}
/**
*
* @param
{
"access_token": "string"
}
*/
const postAppAuthentication: (
access_token: string,
loading?: Ref<boolean>,
authentication_value?: any,
) => Promise<any> = (access_token, loading, authentication_value) => {
return post(
`${prefix}/authentication`,
2025-06-06 01:39:01 +00:00
{access_token: access_token, authentication_value},
2025-06-03 09:29:33 +00:00
undefined,
loading,
)
}
/**
*
* @param
{
"access_token": "string"
}
*/
const getAppProfile: (loading?: Ref<boolean>) => Promise<any> = (loading) => {
return get(`${prefix}/profile`, undefined, loading)
}
/**
* Id
* @param
}
*/
const postChatOpen: (data: ApplicationFormType) => Promise<Result<any>> = (data) => {
return post(`${prefix}/chat/open`, data)
}
/**
* Id
* @param
}
*/
const postWorkflowChatOpen: (data: ApplicationFormType) => Promise<Result<any>> = (data) => {
return post(`${prefix}/chat_workflow/open`, data)
}
/**
* Id
* @param
* {
"model_id": "string",
"multiple_rounds_dialogue": true,
"dataset_id_list": [
"string"
]
}
*/
const getChatOpen: (application_id: String) => Promise<Result<any>> = (application_id) => {
return get(`${prefix}/${application_id}/chat/open`)
}
/**
*
* @param
* chat_id: string
* data
*/
const postChatMessage: (chat_id: string, data: any) => Promise<any> = (chat_id, data) => {
return postStream(`/api${prefix}/chat_message/${chat_id}`, data)
}
/**
*
* @param
* application_id : string; chat_id : string; chat_record_id : string
* {
"vote_status": "string", // -1 0 1
}
*/
const putChatVote: (
application_id: string,
chat_id: string,
chat_record_id: string,
vote_status: string,
loading?: Ref<boolean>,
) => Promise<any> = (application_id, chat_id, chat_record_id, vote_status, loading) => {
return put(
`${prefix}/${application_id}/chat/${chat_id}/chat_record/${chat_record_id}/vote`,
{
vote_status,
},
undefined,
loading,
)
}
/**
*
* @param application_id
* @param loading
* @query { query_text: string, top_number: number, similarity: number }
* @returns
*/
const getApplicationHitTest: (
application_id: string,
data: any,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (application_id, data, loading) => {
return get(`${prefix}/${application_id}/hit_test`, data, loading)
}
/**
* 使
* @param application_id
* @param loading
* @query { query_text: string, top_number: number, similarity: number }
* @returns
*/
const getApplicationModel: (
application_id: string,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (application_id, loading) => {
return get(`${prefix}/${application_id}/model`, loading)
}
/**
* 使
* @param application_id
* @param loading
* @query { query_text: string, top_number: number, similarity: number }
* @returns
*/
const getApplicationRerankerModel: (
application_id: string,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (application_id, loading) => {
2025-06-06 01:39:01 +00:00
return get(`${prefix}/${application_id}/model`, {model_type: 'RERANKER'}, loading)
2025-06-03 09:29:33 +00:00
}
/**
* 使
* @param application_id
* @param loading
* @query { query_text: string, top_number: number, similarity: number }
* @returns
*/
const getApplicationSTTModel: (
application_id: string,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (application_id, loading) => {
2025-06-06 01:39:01 +00:00
return get(`${prefix}/${application_id}/model`, {model_type: 'STT'}, loading)
2025-06-03 09:29:33 +00:00
}
/**
* 使
* @param application_id
* @param loading
* @query { query_text: string, top_number: number, similarity: number }
* @returns
*/
const getApplicationTTSModel: (
application_id: string,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (application_id, loading) => {
2025-06-06 01:39:01 +00:00
return get(`${prefix}/${application_id}/model`, {model_type: 'TTS'}, loading)
2025-06-03 09:29:33 +00:00
}
const getApplicationImageModel: (
application_id: string,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (application_id, loading) => {
2025-06-06 01:39:01 +00:00
return get(`${prefix}/${application_id}/model`, {model_type: 'IMAGE'}, loading)
2025-06-03 09:29:33 +00:00
}
const getApplicationTTIModel: (
application_id: string,
loading?: Ref<boolean>,
) => Promise<Result<Array<any>>> = (application_id, loading) => {
2025-06-06 01:39:01 +00:00
return get(`${prefix}/${application_id}/model`, {model_type: 'TTI'}, loading)
2025-06-03 09:29:33 +00:00
}
/**
*
* @param
*/
const putPublishApplication: (
application_id: String,
data: ApplicationFormType,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, data, loading) => {
return put(`${prefix}/${application_id}/publish`, data, undefined, loading)
}
/**
*
* @param application_id id
* @param loading
* @returns
*/
const listFunctionLib: (application_id: String, loading?: Ref<boolean>) => Promise<Result<any>> = (
application_id,
loading,
) => {
return get(`${prefix}/${application_id}/function_lib`, undefined, loading)
}
/**
*
* @param application_id id
* @param loading
* @returns
*/
export const getApplicationList: (
application_id: string,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, loading) => {
return get(`${prefix}/${application_id}/application`, undefined, loading)
}
/**
*
* @param application_id
* @param function_lib_id
* @param loading
* @returns
*/
const getFunctionLib: (
application_id: String,
function_lib_id: String,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, function_lib_id, loading) => {
return get(`${prefix}/${application_id}/function_lib/${function_lib_id}`, undefined, loading)
}
const getMcpTools: (data: any, loading?: Ref<boolean>) => Promise<Result<any>> = (
data,
loading,
) => {
return get(`${prefix}/mcp_servers`, data, loading)
}
const getApplicationById: (
application_id: String,
app_id: String,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, app_id, loading) => {
return get(`${prefix}/${application_id}/application/${app_id}`, undefined, loading)
}
/**
*
* @param application_id id
* @param model_id id
* @param loading
* @returns
*/
const getModelParamsForm: (
application_id: String,
model_id: String,
loading?: Ref<boolean>,
) => Promise<Result<Array<FormField>>> = (application_id, model_id, loading) => {
return get(`${prefix}/${application_id}/model_params_form/${model_id}`, undefined, loading)
}
/**
*
*/
const uploadFile: (
application_id: String,
chat_id: String,
data: any,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, chat_id, data, loading) => {
return post(`${prefix}/${application_id}/chat/${chat_id}/upload_file`, data, undefined, loading)
}
/**
*
*/
const postSpeechToText: (
application_id: String,
data: any,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, data, loading) => {
return post(`${prefix}/${application_id}/speech_to_text`, data, undefined, loading)
}
/**
*
*/
const postTextToSpeech: (
application_id: String,
data: any,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, data, loading) => {
return download(`${prefix}/${application_id}/text_to_speech`, 'post', data, undefined, loading)
}
/**
*
*/
const playDemoText: (
application_id: String,
data: any,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, data, loading) => {
return download(`${prefix}/${application_id}/play_demo_text`, 'post', data, undefined, loading)
}
/**
*
*/
const getPlatformStatus: (application_id: string) => Promise<Result<any>> = (application_id) => {
return get(`/platform/${application_id}/status`)
}
/**
*
*/
const getPlatformConfig: (application_id: string, type: string) => Promise<Result<any>> = (
application_id,
type,
) => {
return get(`/platform/${application_id}/${type}`)
}
/**
*
*/
const updatePlatformConfig: (
application_id: string,
type: string,
data: any,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, type, data, loading) => {
return post(`/platform/${application_id}/${type}`, data, undefined, loading)
}
/**
*
*/
const updatePlatformStatus: (application_id: string, data: any) => Promise<Result<any>> = (
application_id,
data,
) => {
return post(`/platform/${application_id}/status`, data)
}
/**
*
*/
const validatePassword: (
application_id: string,
password: string,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, password, loading) => {
return get(`/application/${application_id}/auth/${password}`, undefined, loading)
}
/**
* workflow
*/
const getWorkFlowVersion: (
application_id: string,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, loading) => {
return get(`/application/${application_id}/work_flow_version`, undefined, loading)
}
/**
* workflow
*/
const getWorkFlowVersionDetail: (
application_id: string,
application_version_id: string,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, application_version_id, loading) => {
return get(
`/application/${application_id}/work_flow_version/${application_version_id}`,
undefined,
loading,
)
}
/**
* workflow
*/
const putWorkFlowVersion: (
application_id: string,
application_version_id: string,
data: any,
loading?: Ref<boolean>,
) => Promise<Result<any>> = (application_id, application_version_id, data, loading) => {
return put(
`/application/${application_id}/work_flow_version/${application_version_id}`,
data,
undefined,
loading,
)
}
const getUserList: (type: string, loading?: Ref<boolean>) => Promise<Result<any>> = (
type,
loading,
) => {
return get(`/user/list/${type}`, undefined, loading)
}
const exportApplication = (
application_id: string,
application_name: string,
loading?: Ref<boolean>,
) => {
return exportFile(
application_name + '.mk',
`/application/${application_id}/export`,
undefined,
loading,
)
}
/**
*
*/
const importApplication: (data: any, loading?: Ref<boolean>) => Promise<Result<any>> = (
data,
loading,
) => {
return post(`${prefix}/import`, data, undefined, loading)
}
export default {
2025-06-06 01:39:01 +00:00
getAllAppilcation: getAllApplication,
2025-06-03 09:29:33 +00:00
getApplication,
postApplication,
putApplication,
postChatOpen,
getChatOpen,
postChatMessage,
delApplication,
getApplicationDetail,
getApplicationDataset,
getAccessToken,
putAccessToken,
postAppAuthentication,
getAppProfile,
putChatVote,
getApplicationHitTest,
getApplicationModel,
putPublishApplication,
postWorkflowChatOpen,
listFunctionLib,
getFunctionLib,
getModelParamsForm,
getApplicationRerankerModel,
getApplicationSTTModel,
getApplicationTTSModel,
getApplicationImageModel,
getApplicationTTIModel,
postSpeechToText,
postTextToSpeech,
getPlatformStatus,
getPlatformConfig,
updatePlatformConfig,
updatePlatformStatus,
validatePassword,
getWorkFlowVersion,
getWorkFlowVersionDetail,
putWorkFlowVersion,
playDemoText,
getUserList,
getApplicationList,
uploadFile,
exportApplication,
importApplication,
getApplicationById,
getMcpTools,
}