Endpoint
Author: Yeuoly,Allen
本文将以彩虹猫项目为例,说明插件内的 Endpoint 的结构。完整的插件代码请参考 Github 仓库。
组定义
一个 Endpoint 组是多个 Endpoint 的集合,在 Dify 插件内新建 Endpoint 时可能需要填写如下配置。

除了 Endpoint Name 外,你可以通过编写组的配置信息来添加新的表单项,点击保存后,你可以看到其中包含的多个接口,它们将使用相同的配置信息。

结构
settings(map[string] ProviderConfig ):Endpoint 配置定义endpoints(list[string], required):指向具体的endpoint接口定义
接口定义
path(string):遵循 werkzeug 接口标准method(string):接口方法,仅支持HEADGETPOSTPUTDELETEOPTIONSextra(object):除基础信息外的配置信息python(object)source(string):实现该接口的源代码
接口实现
需要实现一个继承自 dify_plugin.Endpoint 子类,并实现 _invoke 方法。
输入参数
r(Request):werkzeug中的Request对象values(Mapping):从 path 中解析到的路径参数settings(Mapping):该Endpoint的配置信息
返回
werkzeug中的Response对象,支持流式返回不支持直接返回字符串
示例代码:
Last updated