Improve ModelTypeEnum type (#3051)

This commit is contained in:
Nanguan Lin 2024-04-04 15:54:59 +08:00 • committed by GitHub
commit 718ac3f83b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 47 additions and 44 deletions

View file

@ -11,10 +11,11 @@ import type {
DefaultModel,
DefaultModelResponse,
Model,
ModelTypeEnum,
} from './declarations'
import {
ConfigurateMethodEnum,
ModelTypeEnum,
} from './declarations'
import I18n from '@/context/i18n'
import {
@ -99,17 +100,8 @@ export const useProviderCrenditialsFormSchemasValue = (
return value
}
export type ModelTypeIndex = 1 | 2 | 3 | 4 | 5
export const MODEL_TYPE_MAPS = {
1: ModelTypeEnum.textGeneration,
2: ModelTypeEnum.textEmbedding,
3: ModelTypeEnum.rerank,
4: ModelTypeEnum.speech2text,
5: ModelTypeEnum.tts,
}
export const useModelList = (type: ModelTypeIndex) => {
const { data, mutate, isLoading } = useSWR(`/workspaces/current/models/model-types/${MODEL_TYPE_MAPS[type]}`, fetchModelList)
export const useModelList = (type: ModelTypeEnum) => {
const { data, mutate, isLoading } = useSWR(`/workspaces/current/models/model-types/${type}`, fetchModelList)
return {
data: data?.data || [],
@ -118,8 +110,8 @@ export const useModelList = (type: ModelTypeIndex) => {
}
}
export const useDefaultModel = (type: ModelTypeIndex) => {
const { data, mutate, isLoading } = useSWR(`/workspaces/current/default-model?model_type=${MODEL_TYPE_MAPS[type]}`, fetchDefaultModal)
export const useDefaultModel = (type: ModelTypeEnum) => {
const { data, mutate, isLoading } = useSWR(`/workspaces/current/default-model?model_type=${type}`, fetchDefaultModal)
return {
data: data?.data,
@ -152,7 +144,7 @@ export const useTextGenerationCurrentProviderAndModelAndModelList = (defaultMode
}
}
export const useModelListAndDefaultModel = (type: ModelTypeIndex) => {
export const useModelListAndDefaultModel = (type: ModelTypeEnum) => {
const { data: modelList } = useModelList(type)
const { data: defaultModel } = useDefaultModel(type)
@ -162,7 +154,7 @@ export const useModelListAndDefaultModel = (type: ModelTypeIndex) => {
}
}
export const useModelListAndDefaultModelAndCurrentProviderAndModel = (type: ModelTypeIndex) => {
export const useModelListAndDefaultModelAndCurrentProviderAndModel = (type: ModelTypeEnum) => {
const { modelList, defaultModel } = useModelListAndDefaultModel(type)
const { currentProvider, currentModel } = useCurrentProviderAndModel(
modelList,
@ -180,9 +172,8 @@ export const useModelListAndDefaultModelAndCurrentProviderAndModel = (type: Mode
export const useUpdateModelList = () => {
const { mutate } = useSWRConfig()
const updateModelList = useCallback((type: ModelTypeIndex | ModelTypeEnum) => {
const modelType = typeof type === 'number' ? MODEL_TYPE_MAPS[type] : type
mutate(`/workspaces/current/models/model-types/${modelType}`)
const updateModelList = useCallback((type: ModelTypeEnum) => {
mutate(`/workspaces/current/models/model-types/${type}`)
}, [mutate])
return updateModelList