本文档由 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
供应商标识符,例如
openai。背景颜色值,例如
#FFFFFF。若为空,则使用前端默认颜色。支持的模型类型。
配置方法。
供应商凭据规范。
模型凭据规范。
AIModelEntity
模型标识符,例如
gpt-3.5-turbo。模型类型。
支持的特性。
模型属性。
模式(模型类型
llm)。上下文大小(模型类型
llm 和 text-embedding)。最大分段数(模型类型
text-embedding 和 moderation)。最大文件上传大小,单位为 MB(模型类型
speech2text)。支持的文件扩展名,例如
mp3,mp4(模型类型 speech2text)。默认语音,取值为
alloy、echo、fable、onyx、nova、shimmer 之一(模型类型 tts)。单次转换的字数限制,默认按段落分割(模型类型
tts)。支持的音频文件扩展名,例如
mp3,wav(模型类型 tts)。文字转音频转换的并发任务数(模型类型
tts)。每个分段的最大字符数(模型类型
moderation)。模型调用参数的规则。
价格信息。
模型是否已弃用。已弃用的模型不再出现在模型列表中,但已有配置仍可继续使用。默认为
False。ModelType
文本生成模型。
文本嵌入模型。
重排序模型。
语音转文字。
文字转语音。
内容审核。
ConfigurateMethod
预定义模型。用户只需配置一次统一的供应商凭据,即可使用该供应商下的所有预定义模型。
自定义模型。用户需要为每个模型添加凭据配置。
从远程获取。与
predefined-model 类似,只需统一的供应商凭据,但模型列表是使用这些凭据从供应商获取的。ModelFeature
Agent 推理。通常 70B 以上的模型具备思维链能力。
视觉(图像理解)。
工具调用。
多工具调用。
流式工具调用。
FetchFrom
预定义模型。
远程模型。
LLMMode
文本续写。
对话。
ParameterRule
模型调用中使用的实际参数名称。
使用的模板。
temperaturetop_pfrequency_penaltypresence_penaltymax_tokens
use_template 中设置上述名称之一,即可继承 entities.defaults.PARAMETER_RULE_TEMPLATE 中的默认配置,此时只需提供 name 和 use_template。你设置的任何额外参数都会覆盖模板默认值。参见 openai/llm/gpt-3.5-turbo.yaml 以及 创建新模型供应商 中的示例。
参数是否必填。默认为
False。默认值。
最小值。仅适用于数值类型。
最大值。仅适用于数值类型。
保留的小数位数。仅适用于数值类型。
下拉选项值。仅当
type 为 string 时适用。若未设置或为 null,则不限制取值。PriceConfig
输入(提示词)单价。
输出(返回内容)单价。
价格单位。例如,若按每 1M token 计价,则单价对应的单位 token 数为
0.000001。货币单位。
ProviderCredentialSchema
凭据表单规范。
ModelCredentialSchema
凭据表单规范。
CredentialFormSchema
表单项变量名。
表单项类型。
表单项是否必填。
默认值。
下拉内容。仅适用于
select 和 radio 类型。最大输入长度。仅适用于
text-input 类型。0 表示无限制。仅当其他表单项的值满足给定条件时才显示此项。为空表示始终显示。
FormType
文本输入组件。
密码输入组件。
单选下拉框。
单选按钮组件。
开关组件。仅支持
true 和 false。FormOption
下拉选项值。
仅当其他表单项的值满足给定条件时才显示此选项。为空表示始终显示。
FormShowOnObject
其他表单项的变量名。
其他表单项的变量值。