分享
Dify中的自定义模型插件开发例子:以xinference为例
输入“/”快速插入内容
Dify中的自定义模型插件开发例子:以xinference为例
用户4443
用户4443
2025年5月27日修改
本文使用
Dify v1.0.0-beta.1
版本。模型插件结构基本是模型供应商(模型公司,比如
siliconflow
、
xinference
)- 模型分类(模型类型,比如
llm
、
rerank
、
speech2text
、
text_embedding
、
tts
)- 具体模型(比如,
deepseek-v2.5
)。本文以
xinference
为例,介绍
Dify
中的自定义模型插件开发例子。
自定义模型指的是需要自行部署或配置的
LLM
,默认包含模型类型和模型名称两个参数,无需在供应商 yaml 文件定义。供应商配置文件无需实现
validate_provider_credential
。
Runtime
会根据用户选择的模型类型或模型名称,自动调用对应模型层的
validate_credentials
方法进行验证。
一.
xinference
模型插件
Xorbits Inference (Xinference)
是一个开源平台,用于简化各种
AI
模型的运行和集成。借助
Xinference
,可使用任何开源
LLM
、嵌入模型和多模态模型在云端或本地环境中运行推理,并创建强大的
AI
应用。
1.多层模型分类
代码块
Plain Text
│ xinference_helper.py
│
├─llm
│ llm.py
│ __init__.py
│
├─rerank
│ rerank.py
│ __init__.py
│
├─speech2text
│ speech2text.py
│ __init__.py
│
├─text_embedding
│ text_embedding.py
│ __init__.py
│
└─tts
tts.py
__init__.py
2.通过API秘钥配置
安装
Xinference
插件后,通过输入
API
密钥等信息进行配置。如下所示:
除社区支持开源版外,也提供企业版本,Xinference企业版和开源版本的对比[7],如下所示:
二.创建模型供应商
通过
Dify
插件脚手架工具,创建项目就不再介绍了,主要是选择模型插件模版和配置插件权限等操作[1][2]。