mirror of
https://github.com/fawney19/Aether.git
synced 2026-01-04 00:32:26 +08:00
86 lines
1.9 KiB
TypeScript
86 lines
1.9 KiB
TypeScript
|
|
import client from '../client'
|
||
|
|
import type {
|
||
|
|
GlobalModelCreate,
|
||
|
|
GlobalModelUpdate,
|
||
|
|
GlobalModelResponse,
|
||
|
|
GlobalModelWithStats,
|
||
|
|
GlobalModelListResponse
|
||
|
|
} from './types'
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 获取 GlobalModel 列表
|
||
|
|
*/
|
||
|
|
export async function getGlobalModels(params?: {
|
||
|
|
skip?: number
|
||
|
|
limit?: number
|
||
|
|
is_active?: boolean
|
||
|
|
search?: string
|
||
|
|
}): Promise<GlobalModelListResponse> {
|
||
|
|
const response = await client.get('/api/admin/models/global', { params })
|
||
|
|
return response.data
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 获取单个 GlobalModel 详情
|
||
|
|
*/
|
||
|
|
export async function getGlobalModel(id: string): Promise<GlobalModelWithStats> {
|
||
|
|
const response = await client.get(`/api/admin/models/global/${id}`)
|
||
|
|
return response.data
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 创建 GlobalModel
|
||
|
|
*/
|
||
|
|
export async function createGlobalModel(data: GlobalModelCreate): Promise<GlobalModelResponse> {
|
||
|
|
const response = await client.post('/api/admin/models/global', data)
|
||
|
|
return response.data
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 更新 GlobalModel
|
||
|
|
*/
|
||
|
|
export async function updateGlobalModel(
|
||
|
|
id: string,
|
||
|
|
data: GlobalModelUpdate
|
||
|
|
): Promise<GlobalModelResponse> {
|
||
|
|
const response = await client.patch(`/api/admin/models/global/${id}`, data)
|
||
|
|
return response.data
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 删除 GlobalModel
|
||
|
|
*/
|
||
|
|
export async function deleteGlobalModel(
|
||
|
|
id: string,
|
||
|
|
force: boolean = false
|
||
|
|
): Promise<void> {
|
||
|
|
await client.delete(`/api/admin/models/global/${id}`, { params: { force } })
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 批量为 GlobalModel 添加关联提供商
|
||
|
|
*/
|
||
|
|
export async function batchAssignToProviders(
|
||
|
|
globalModelId: string,
|
||
|
|
data: {
|
||
|
|
provider_ids: string[]
|
||
|
|
create_models: boolean
|
||
|
|
}
|
||
|
|
): Promise<{
|
||
|
|
success: Array<{
|
||
|
|
provider_id: string
|
||
|
|
provider_name: string
|
||
|
|
model_id?: string
|
||
|
|
}>
|
||
|
|
errors: Array<{
|
||
|
|
provider_id: string
|
||
|
|
error: string
|
||
|
|
}>
|
||
|
|
}> {
|
||
|
|
const response = await client.post(
|
||
|
|
`/api/admin/models/global/${globalModelId}/assign-to-providers`,
|
||
|
|
data
|
||
|
|
)
|
||
|
|
return response.data
|
||
|
|
}
|