Skip to main content
本文档由 AI 自动翻译。如有任何不准确之处,请参考 英文原版
模型插件通过两个实体描述自身:Provider 负责认证并列出所支持的模型,每个模型对应一个 AIModelEntity,用于声明其类型、特性和参数。
下文所有实体均为 dify_plugin.entities.model 模块中的 Pydantic BaseModel 子类。

快速决策

仅需认证:预定义模型

用户粘贴 API key 即可获得你的完整模型列表。设置 configurate_methods: [predefined-model],并在 YAML 中定义每个模型的 AIModelEntity。

用户自备模型

用户自行配置模型名称和 base URL(OpenAI 兼容端点、自定义部署)。设置 configurate_methods: [customizable-model],详见 自定义模型

混合

内置目录加上用户添加的自定义模型。同时使用两种 configurate_methods 取值。

完整示例

完整的端到端示例,详见 创建新模型供应商

Provider

provider
string
供应商标识符,例如 openai
label
object
供应商显示名称(i18n)。支持 en_US(英文)和 zh_Hans(中文)。
zh_Hans
string
中文标签。若未设置,回退使用 en_US
en_US
string
required
英文标签
description
object
供应商描述(i18n)。
zh_Hans
string
中文描述。
en_US
string
required
英文描述。
icon_small
object
供应商小图标,存储在供应商实现目录下的 _assets 目录中。
zh_Hans
string
中文图标。
en_US
string
required
英文图标。
icon_large
object
供应商大图标,存储在供应商实现目录下的 _assets 目录中。
zh_Hans
string
中文图标。
en_US
string
required
英文图标。
background
string
背景颜色值,例如 #FFFFFF。若为空,则使用前端默认颜色。
help
object
帮助信息。
title
object
帮助标题(i18n)。
zh_Hans
string
中文标题。
en_US
string
required
英文标题。
url
object
帮助链接(i18n)。
zh_Hans
string
中文链接。
en_US
string
required
英文链接。
supported_model_types
array[ModelType]
required
支持的模型类型。
configurate_methods
array[ConfigurateMethod]
required
配置方法。
provider_credential_schema
ProviderCredentialSchema
required
供应商凭据规范。
model_credential_schema
ModelCredentialSchema
模型凭据规范。

AIModelEntity

model
string
required
模型标识符,例如 gpt-3.5-turbo
label
object
模型显示名称(i18n)。支持 en_US(英文)和 zh_Hans(中文)。
zh_Hans
string
中文标签。
en_US
string
required
英文标签。
model_type
ModelType
required
模型类型。
features
array[ModelFeature]
支持的特性。
model_properties
object
required
模型属性。
mode
LLMMode
模式(模型类型 llm)。
context_size
integer
上下文大小(模型类型 llmtext-embedding)。
max_chunks
integer
最大分段数(模型类型 text-embeddingmoderation)。
file_upload_limit
integer
最大文件上传大小,单位为 MB(模型类型 speech2text)。
supported_file_extensions
string
支持的文件扩展名,例如 mp3,mp4(模型类型 speech2text)。
default_voice
string
默认语音,取值为 alloyechofableonyxnovashimmer 之一(模型类型 tts)。
voices
array
可用语音(模型类型 tts)。
mode
string
语音模型。
name
string
语音模型显示名称。
language
string
语音模型支持的语言。
word_limit
integer
单次转换的字数限制,默认按段落分割(模型类型 tts)。
audio_type
string
支持的音频文件扩展名,例如 mp3,wav(模型类型 tts)。
max_workers
integer
文字转音频转换的并发任务数(模型类型 tts)。
max_characters_per_chunk
integer
每个分段的最大字符数(模型类型 moderation)。
parameter_rules
array[ParameterRule]
模型调用参数的规则。
pricing
PriceConfig
价格信息。
deprecated
boolean
模型是否已弃用。已弃用的模型不再出现在模型列表中,但已有配置仍可继续使用。默认为 False

ModelType

llm
string
文本生成模型。
text-embedding
string
文本嵌入模型。
rerank
string
重排序模型。
speech2text
string
语音转文字。
tts
string
文字转语音。
moderation
string
内容审核。

ConfigurateMethod

predefined-model
string
预定义模型。用户只需配置一次统一的供应商凭据,即可使用该供应商下的所有预定义模型。
customizable-model
string
自定义模型。用户需要为每个模型添加凭据配置。
fetch-from-remote
string
从远程获取。与 predefined-model 类似,只需统一的供应商凭据,但模型列表是使用这些凭据从供应商获取的。

ModelFeature

agent-thought
string
Agent 推理。通常 70B 以上的模型具备思维链能力。
vision
string
视觉(图像理解)。
tool-call
string
工具调用。
multi-tool-call
string
多工具调用。
stream-tool-call
string
流式工具调用。

FetchFrom

predefined-model
string
预定义模型。
fetch-from-remote
string
远程模型。

LLMMode

completion
string
文本续写。
chat
string
对话。

ParameterRule

name
string
required
模型调用中使用的实际参数名称。
use_template
string
使用的模板。
预定义了 5 个参数模板:
  • temperature
  • top_p
  • frequency_penalty
  • presence_penalty
  • max_tokens
use_template 中设置上述名称之一,即可继承 entities.defaults.PARAMETER_RULE_TEMPLATE 中的默认配置,此时只需提供 nameuse_template。你设置的任何额外参数都会覆盖模板默认值。参见 openai/llm/gpt-3.5-turbo.yaml 以及 创建新模型供应商 中的示例。
label
object
标签(i18n)。
zh_Hans
string
中文标签。
en_US
string
required
英文标签。
type
string
参数类型。
int
string
整数。
float
string
浮点数。
string
string
字符串。
boolean
string
布尔值。
help
object
帮助信息(i18n)。
zh_Hans
string
中文帮助文本。
en_US
string
required
英文帮助文本。
required
boolean
参数是否必填。默认为 False
default
int/float/string/boolean
默认值。
min
int/float
最小值。仅适用于数值类型。
max
int/float
最大值。仅适用于数值类型。
precision
integer
保留的小数位数。仅适用于数值类型。
options
array[string]
下拉选项值。仅当 typestring 时适用。若未设置或为 null,则不限制取值。

PriceConfig

input
float
输入(提示词)单价。
output
float
输出(返回内容)单价。
unit
float
价格单位。例如,若按每 1M token 计价,则单价对应的单位 token 数为 0.000001
currency
string
货币单位。

ProviderCredentialSchema

credential_form_schemas
array[CredentialFormSchema]
required
凭据表单规范。

ModelCredentialSchema

model
object
required
模型标识符。默认变量名为 model
label
object
required
模型表单项的显示名称。
en_US
string
required
英文。
zh_Hans
string
中文。
placeholder
object
required
模型表单项的占位符文本。
en_US
string
required
英文。
zh_Hans
string
中文。
credential_form_schemas
array[CredentialFormSchema]
required
凭据表单规范。

CredentialFormSchema

variable
string
required
表单项变量名。
label
object
required
表单项标签。
en_US
string
required
英文。
zh_Hans
string
中文。
type
FormType
required
表单项类型。
required
boolean
表单项是否必填。
default
string
默认值。
options
array[FormOption]
下拉内容。仅适用于 selectradio 类型。
placeholder
object
表单项占位符。仅适用于 text-input 类型。
en_US
string
required
英文。
zh_Hans
string
中文。
max_length
integer
最大输入长度。仅适用于 text-input 类型。0 表示无限制。
show_on
array[FormShowOnObject]
仅当其他表单项的值满足给定条件时才显示此项。为空表示始终显示。

FormType

text-input
string
文本输入组件。
secret-input
string
密码输入组件。
select
string
单选下拉框。
radio
string
单选按钮组件。
switch
string
开关组件。仅支持 truefalse

FormOption

label
object
required
标签。
en_US
string
required
英文。
zh_Hans
string
中文。
value
string
required
下拉选项值。
show_on
array[FormShowOnObject]
仅当其他表单项的值满足给定条件时才显示此选项。为空表示始终显示。

FormShowOnObject

variable
string
required
其他表单项的变量名。
value
string
required
其他表单项的变量值。

相关资源

Last modified on June 25, 2026