反向调用
App
本文档详细介绍了插件如何反向调用Dify平台中的App服务。内容包括三种不同类型的接口:聊天接口(适用于Chatbot/Agent/Chatflow类型应用)、Workflow接口和Completion接口,并提供了每种接口的入口方式、调用规范以及实际的调用示例代码。
反向调用 App 指的是插件能够访问 Dify 中的 App 数据。该模块同时支持流式与非流式的 App 调用。如果你对反向调用的基本概念还不熟悉,请先阅读反向调用 Dify 服务。
接口类型:
- 对于
Chatbot/Agent/Chatflow
类型应用而言,它们都属于聊天类型的应用,因此拥有相同类型的输入参数和输出参数,因此可被统一视为聊天接口。 - 对于 Workflow 应用而言,它单独占据一个 Workflow 接口。
- 对于 Completion(文本生成应用)应用而言,它单独占据一个 Completion 接口。
请注意,插件仅允许访问插件所在的 Workspace 中的 App。
调用聊天接口
入口
接口规范
当 response_mode
为 streaming
时,该接口将直接返回 Generator[dict]
,否则直接返回 dict
,具体的接口字段请参考 ServiceApi
的返回结果。
用例
我们可以在一个 Endpoint
中调用 Chat 类型的 App,并将结果直接返回。
调用 Workflow 接口
入口
接口规范
调用 Completion 接口
入口
接口规范
相关资源
- 反向调用 Dify 服务 - 了解反向调用的根本概念
- 反向调用 Model - 了解如何调用平台内的模型能力
- 反向调用 Tool - 了解如何调用其它插件
- 开发 Slack Bot 插件 - 使用反向调用的实际应用案例
- 开发 Extension 插件 - 学习如何开发扩展插件