Spaces:
Build error
Build error
Workflow-Engine
/
web
/app
/components
/header
/account-setting
/model-provider-page
/declarations.ts
export type FormValue = Record<string, any> | |
export type TypeWithI18N<T = string> = { | |
en_US: T | |
zh_Hans: T | |
[key: string]: T | |
} | |
export enum FormTypeEnum { | |
textInput = 'text-input', | |
textNumber = 'number-input', | |
secretInput = 'secret-input', | |
select = 'select', | |
radio = 'radio', | |
boolean = 'boolean', | |
files = 'files', | |
file = 'file', | |
} | |
export type FormOption = { | |
label: TypeWithI18N | |
value: string | |
show_on: FormShowOnObject[] | |
} | |
export enum ModelTypeEnum { | |
textGeneration = 'llm', | |
textEmbedding = 'text-embedding', | |
rerank = 'rerank', | |
speech2text = 'speech2text', | |
moderation = 'moderation', | |
tts = 'tts', | |
} | |
export const MODEL_TYPE_TEXT = { | |
[ModelTypeEnum.textGeneration]: 'LLM', | |
[ModelTypeEnum.textEmbedding]: 'Text Embedding', | |
[ModelTypeEnum.rerank]: 'Rerank', | |
[ModelTypeEnum.speech2text]: 'Speech2text', | |
[ModelTypeEnum.moderation]: 'Moderation', | |
[ModelTypeEnum.tts]: 'TTS', | |
} | |
export enum ConfigurationMethodEnum { | |
predefinedModel = 'predefined-model', | |
customizableModel = 'customizable-model', | |
fetchFromRemote = 'fetch-from-remote', | |
} | |
export enum ModelFeatureEnum { | |
toolCall = 'tool-call', | |
multiToolCall = 'multi-tool-call', | |
agentThought = 'agent-thought', | |
vision = 'vision', | |
} | |
export enum ModelFeatureTextEnum { | |
toolCall = 'Tool Call', | |
multiToolCall = 'Multi Tool Call', | |
agentThought = 'Agent Thought', | |
vision = 'Vision', | |
} | |
export enum ModelStatusEnum { | |
active = 'active', | |
noConfigure = 'no-configure', | |
quotaExceeded = 'quota-exceeded', | |
noPermission = 'no-permission', | |
disabled = 'disabled', | |
} | |
export const MODEL_STATUS_TEXT: { [k: string]: TypeWithI18N } = { | |
'no-configure': { | |
en_US: 'No Configure', | |
zh_Hans: '未配置凭据', | |
}, | |
'quota-exceeded': { | |
en_US: 'Quota Exceeded', | |
zh_Hans: '额度不足', | |
}, | |
'no-permission': { | |
en_US: 'No Permission', | |
zh_Hans: '无使用权限', | |
}, | |
} | |
export enum CustomConfigurationStatusEnum { | |
active = 'active', | |
noConfigure = 'no-configure', | |
} | |
export type FormShowOnObject = { | |
variable: string | |
value: string | |
} | |
export type CredentialFormSchemaBase = { | |
variable: string | |
label: TypeWithI18N | |
type: FormTypeEnum | |
required: boolean | |
default?: string | |
tooltip?: TypeWithI18N | |
show_on: FormShowOnObject[] | |
url?: string | |
} | |
export type CredentialFormSchemaTextInput = CredentialFormSchemaBase & { max_length?: number; placeholder?: TypeWithI18N } | |
export type CredentialFormSchemaNumberInput = CredentialFormSchemaBase & { min?: number; max?: number; placeholder?: TypeWithI18N } | |
export type CredentialFormSchemaSelect = CredentialFormSchemaBase & { options: FormOption[]; placeholder?: TypeWithI18N } | |
export type CredentialFormSchemaRadio = CredentialFormSchemaBase & { options: FormOption[] } | |
export type CredentialFormSchemaSecretInput = CredentialFormSchemaBase & { placeholder?: TypeWithI18N } | |
export type CredentialFormSchema = CredentialFormSchemaTextInput | CredentialFormSchemaSelect | CredentialFormSchemaRadio | CredentialFormSchemaSecretInput | |
export type ModelItem = { | |
model: string | |
label: TypeWithI18N | |
model_type: ModelTypeEnum | |
features?: ModelFeatureEnum[] | |
fetch_from: ConfigurationMethodEnum | |
status: ModelStatusEnum | |
model_properties: Record<string, string | number> | |
load_balancing_enabled: boolean | |
deprecated?: boolean | |
} | |
export enum PreferredProviderTypeEnum { | |
system = 'system', | |
custom = 'custom', | |
} | |
export enum CurrentSystemQuotaTypeEnum { | |
trial = 'trial', | |
free = 'free', | |
paid = 'paid', | |
} | |
export enum QuotaUnitEnum { | |
times = 'times', | |
tokens = 'tokens', | |
credits = 'credits', | |
} | |
export type QuotaConfiguration = { | |
quota_type: CurrentSystemQuotaTypeEnum | |
quota_unit: QuotaUnitEnum | |
quota_limit: number | |
quota_used: number | |
last_used: number | |
is_valid: boolean | |
} | |
export type ModelProvider = { | |
provider: string | |
label: TypeWithI18N | |
description?: TypeWithI18N | |
help: { | |
title: TypeWithI18N | |
url: TypeWithI18N | |
} | |
icon_small: TypeWithI18N | |
icon_large: TypeWithI18N | |
background?: string | |
supported_model_types: ModelTypeEnum[] | |
configurate_methods: ConfigurationMethodEnum[] | |
provider_credential_schema: { | |
credential_form_schemas: CredentialFormSchema[] | |
} | |
model_credential_schema: { | |
model: { | |
label: TypeWithI18N | |
placeholder: TypeWithI18N | |
} | |
credential_form_schemas: CredentialFormSchema[] | |
} | |
preferred_provider_type: PreferredProviderTypeEnum | |
custom_configuration: { | |
status: CustomConfigurationStatusEnum | |
} | |
system_configuration: { | |
enabled: boolean | |
current_quota_type: CurrentSystemQuotaTypeEnum | |
quota_configurations: QuotaConfiguration[] | |
} | |
} | |
export type Model = { | |
provider: string | |
icon_large: TypeWithI18N | |
icon_small: TypeWithI18N | |
label: TypeWithI18N | |
models: ModelItem[] | |
status: ModelStatusEnum | |
} | |
export type DefaultModelResponse = { | |
model: string | |
model_type: ModelTypeEnum | |
provider: { | |
provider: string | |
icon_large: TypeWithI18N | |
icon_small: TypeWithI18N | |
} | |
} | |
export type DefaultModel = { | |
provider: string | |
model: string | |
} | |
export type CustomConfigurationModelFixedFields = { | |
__model_name: string | |
__model_type: ModelTypeEnum | |
} | |
export type ModelParameterRule = { | |
default?: number | string | boolean | string[] | |
help?: TypeWithI18N | |
label: TypeWithI18N | |
min?: number | |
max?: number | |
name: string | |
precision?: number | |
required: false | |
type: string | |
use_template?: string | |
options?: string[] | |
tagPlaceholder?: TypeWithI18N | |
} | |
export type ModelLoadBalancingConfigEntry = { | |
/** model balancing config entry id */ | |
id?: string | |
/** is config entry enabled */ | |
enabled?: boolean | |
/** config entry name */ | |
name: string | |
/** model balancing credential */ | |
credentials: Record<string, string | undefined | boolean> | |
/** is config entry currently removed from Round-robin queue */ | |
in_cooldown?: boolean | |
/** cooldown time (in seconds) */ | |
ttl?: number | |
} | |
export type ModelLoadBalancingConfig = { | |
enabled: boolean | |
configs: ModelLoadBalancingConfigEntry[] | |
} | |