Model Designing Rules
Model provider rules are based on the Provider entity.
Model rules are based on the AIModelEntity entity.
All entities below are based on Pydantic BaseModel and can be found in the entities module.
Provider
provider
(string): Provider identifier, e.g., openailabel
(object): Provider display name, i18n, supports en_US (English) and zh_Hans (Chinese)zh_Hans
(string) [optional]: Chinese label, defaults to en_US if not seten_US
(string): English label
description
(object) [optional]: Provider description, i18nzh_Hans
(string) [optional]: Chinese descriptionen_US
(string): English description
icon_small
(string) [optional]: Provider small icon, stored in _assets directoryzh_Hans
(string) [optional]: Chinese iconen_US
(string): English icon
icon_large
(string) [optional]: Provider large icon, stored in _assets directoryzh_Hans
(string) [optional]: Chinese iconen_US
(string): English icon
background
(string) [optional]: Background color value, e.g., #FFFFFF, uses frontend default if emptyhelp
(object) [optional]: Help informationtitle
(object): Help title, i18nzh_Hans
(string) [optional]: Chinese titleen_US
(string): English title
url
(object): Help link, i18nzh_Hans
(string) [optional]: Chinese linken_US
(string): English link
supported_model_types
(array[ModelType]): Supported model typesconfigurate_methods
(array[ConfigurateMethod]): Configuration methodsprovider_credential_schema
([ProviderCredentialSchema]): Provider credential specificationsmodel_credential_schema
([ModelCredentialSchema]): Model credential specifications
AIModelEntity
model
(string): Model identifier, e.g., gpt-3.5-turbolabel
(object) [optional]: Model display name, i18nzh_Hans
(string) [optional]: Chinese labelen_US
(string): English label
model_type
([ModelType]): Model typefeatures
(array[[ModelFeature]]) [optional]: List of supported featuresmodel_properties
(object): Model propertiesmode
([LLMMode]): Mode (available for llm model type)context_size
(int): Context size (available for llm and text-embedding types)max_chunks
(int): Maximum number of chunks (available for text-embedding and moderation types)file_upload_limit
(int): Maximum file upload limit in MB (available for speech2text type)supported_file_extensions
(string): Supported file extensions, e.g., mp3,mp4 (available for speech2text type)default_voice
(string): Default voice, must be one of: alloy,echo,fable,onyx,nova,shimmer (available for tts type)voices
(list): Available voice listmode
(string): Voice model (available for tts type)name
(string): Voice model display name (available for tts type)language
(string): Voice model supported languages (available for tts type)word_limit
(int): Single conversion word limit, defaults to paragraph division (available for tts type)audio_type
(string): Supported audio file extensions, e.g., mp3,wav (available for tts type)max_workers
(int): Maximum concurrent tasks for text-to-audio conversion (available for tts type)max_characters_per_chunk
(int): Maximum characters per chunk (available for moderation type)
parameter_rules
(array[ParameterRule]) [optional]: Model call parameter rulespricing
([PriceConfig]) [optional]: Pricing informationdeprecated
(bool): Whether deprecated. If true, model won't show in list but configured ones can still be used. Default: False
ModelType
llm
: Text generation modeltext-embedding
: Text embedding modelrerank
: Rerank modelspeech2text
: Speech to texttts
: Text to speechmoderation
: Moderation
ConfigurateMethod
predefined-model
: Predefined models Users only need to configure unified provider credentials to use predefined models under the provider.customizable-model
: Custom models Users need to add credential configurations for each model.fetch-from-remote
: Fetch from remote Similar to predefined-model configuration, only requires unified provider credentials, models are fetched from provider using credential information.
ModelFeature
agent-thought
: Agent reasoning, generally models over 70B have chain-of-thought capabilityvision
: Visual capability, i.e., image understandingtool-call
: Tool callingmulti-tool-call
: Multiple tool callingstream-tool-call
: Streaming tool calling
FetchFrom
predefined-model
: Predefined modelsfetch-from-remote
: Remote models
LLMMode
completion
: Text completionchat
: Conversation
ParameterRule
name
(string): Actual parameter name for model callsuse_template
(string) [optional]: Template usage Five preset variable content configuration templates:temperature
top_p
frequency_penalty
presence_penalty
max_tokens Can directly set template variable name in use_template, will use default config from entities.defaults.PARAMETER_RULE_TEMPLATE
label
(object) [optional]: Labels, i18nzh_Hans
(string) [optional]: Chinese labelen_US
(string): English label
type
(string) [optional]: Parameter typeint
: Integerfloat
: Floatstring
: Stringboolean
: Boolean
help
(string) [optional]: Help informationzh_Hans
(string) [optional]: Chinese help infoen_US
(string): English help info
required
(bool): Whether required, default Falsedefault
(int/float/string/bool) [optional]: Default valuemin
(int/float) [optional]: Minimum value, only for numeric typesmax
(int/float) [optional]: Maximum value, only for numeric typesprecision
(int) [optional]: Precision, decimal places, only for numeric typesoptions
(array[string]) [optional]: Dropdown options, only for string type
PriceConfig
input
(float): Input price, i.e., Prompt priceoutput
(float): Output price, i.e., Return content priceunit
(float): Price unit, e.g., if priced per 1M tokens, unit token number is 0.000001currency
(string): Currency unit
ProviderCredentialSchema
credential_form_schemas
(array[CredentialFormSchema]): Credential form specifications
ModelCredentialSchema
model
(object): Model identifier, default variable name is 'model'label
(object): Model form item display nameen_US
(string): Englishzh_Hans
(string) [optional]: Chinese
placeholder
(object): Model prompt contenten_US
(string): Englishzh_Hans
(string) [optional]: Chinese
credential_form_schemas
(array[CredentialFormSchema]): Credential form specifications
CredentialFormSchema
variable
(string): Form item variable namelabel
(object): Form item labelen_US
(string): Englishzh_Hans
(string) [optional]: Chinese
type
([FormType]): Form item typerequired
(bool): Whether requireddefault
(string): Default valueoptions
(array[FormOption]): Form item options for select or radio typesplaceholder
(object): Form item placeholder for text-input typeen_US
(string): Englishzh_Hans
(string) [optional]: Chinese
max_length
(int): Maximum input length for text-input type, 0 means no limitshow_on
(array[FormShowOnObject]): Show when other form items meet conditions, always show if empty
FormType
text-input
: Text input componentsecret-input
: Password input componentselect
: Single-select dropdownradio
: Radio componentswitch
: Switch component, only supports true and false
FormOption
label
(object): Labelen_US
(string): Englishzh_Hans
(string) [optional]: Chinese
value
(string): Dropdown option valueshow_on
(array[FormShowOnObject]): Show when other form items meet conditions, always show if empty
FormShowOnObject
variable
(string): Other form item variable namevalue
(string): Other form item variable value
Last updated