Skip to main content

本文档由 AI 自动翻译。如有任何不准确之处,请参考 英文原版。

该模块用于审查应用中终端用户输入的内容和 LLM 输出的内容,分为两个扩展点类型。

扩展点#

  • app.moderation.input:终端用户输入的内容审查扩展点
    • 用于审查终端用户传入的变量内容以及对话型应用中对话的输入内容。
  • app.moderation.output:LLM 输出的内容审查扩展点
    • 用于审查 LLM 输出的内容,
    • 当 LLM 输出为流式时,输出的内容将分 100 字为一个分段进行请求 API,尽可能避免输出内容较长时,审查不及时的问题。

app.moderation.input 扩展点#

当在 Chatflow、Agent、聊天助手等应用下开启 内容审查>审查输入内容 时,Dify 会给相应的自定义端点发送下列 HTTP POST 请求:

Request Body#

Example:

API 返回规范#

Example:

  • action=direct_output
  • action=overridden

app.moderation.output 扩展点#

当在 Chatflow、Agent、聊天助手等应用下开启 内容审查>审查输出内容 时,Dify 会给相应的自定义端点发送下列 HTTP POST 请求:

Request Body#

Example:

API 返回#

Example:

  • action=direct_output
  • action=overridden

代码示例#

下面展示一段可部署在 Cloudflare 的 src/index.ts 代码。(Cloudflare 完整的使用方法参见 此文档)

代码工作原理是进行关键词匹配,实现对 Input(用户输入的内容)以及输出(大模型返回的内容)进行过滤。用户可以按照需求自行修改匹配逻辑。