| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250 | 
							- 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[]
 
- }
 
 
  |