工具定义

工具可以扩展 LLM 的能力,比如联网搜索、科学计算或绘制图片,赋予并增强了 LLM 连接外部世界的能力。Dify 提供了两种工具类型:第一方工具自定义工具

你可以直接使用 Dify 生态提供的第一方内置工具,或者轻松导入自定义的 API 工具(目前支持 OpenAPI / Swagger 和 OpenAI Plugin 规范)。

工具的作用:

  1. 工具使用户可以在 Dify 上创建更强大的 AI 应用,如你可以为智能助理型应用(Agent)编排合适的工具,它可以通过任务推理、步骤拆解、调用工具完成复杂任务。

  2. 方便将你的应用与其他系统或服务连接,与外部环境交互,如代码执行、对专属信息源的访问等。

如何配置第一方工具

工具 - 图1

第一方工具列表

Dify 目前已支持:

工具 工具描述
谷歌搜索 用于执行 Google SERP 搜索并提取片段和网页的工具。输入应该是一个搜索查询
维基百科 用于执行维基百科搜索并提取片段和网页的工具。
DALL-E 绘画 用于通过自然语言输入生成高质量图片
网页抓取 用于爬取网页数据的工具
WolframAlpha 一个强大的计算知识引擎,能根据问题直接给出标准化答案,同时具有强大的数学计算功能
图表生成 用于生成可视化图表的工具,你可以通过它来生成柱状图、折线图、饼图等各类图表
当前时间 用于查询当前时间的工具
雅虎财经 获取并整理出最新的新闻、股票报价等一切你想要的财经信息。
Stable Diffusion 一个可以在本地部署的图片生成的工具,你可以使用 stable-diffusion-webui 来部署它
Vectorizer 一个将 PNG 和 JPG 图像快速轻松地转换为 SVG 矢量图的工具。
YouTube 一个用于获取油管频道视频统计数据的工具

第一方工具授权

若你需要直接使用 Dify 生态提供的第一方内置工具,你需要在使用前配置相应的凭据。

工具 - 图2

配置第一方工具凭据

凭据校验成功后工具会显示“已授权”状态。配置凭据后,工作区中的所有成员都可以在编排应用程序时使用此工具。

工具 - 图3

第一方工具已授权

如何创建自定义工具

你可以在“工具-自定义工具”内导入自定义的 API 工具,目前支持 OpenAPI / Swagger 和 ChatGPT Plugin 规范。你可以将 OpenAPI schema 内容直接粘贴或从 URL 内导入。关于 OpenAPI / Swagger 规范你可以查看官方文档说明

工具目前支持两种鉴权方式:无鉴权 和 API Key。

工具 - 图4

创建自定义工具

在导入 Schema 内容后系统会主动解析文件内的参数,并可预览工具具体的参数、 方法、路径。你也可以在此对工具参数进行测试。

工具 - 图5

自定义工具参数测试

完成自定义工具创建之后,工作区中的所有成员都可以在“工作室”内编排应用程序时使用此工具。

工具 - 图6

已添加自定义工具

Cloudflare Workers

你也可以使用 dify-tools-worker 来快速部署自定义工具。该工具提供了:

  • 可以导入 Dify 的路由 https://difytoolsworker.yourname.workers.dev/doc, 提供了 OpenAPI 兼容的接口文档

  • API 的实现代码,可以直接部署到 Cloudflare Workers

如何在应用内使用工具

目前,你可以在“工作室”中创建智能助手型应用时,将已配置好凭据的工具在其中使用。

工具 - 图7

创建智能助手型应用时添加工具

以下图为例,在财务分析应用内添加工具后,智能助手将在需要时自主调用工具,从工具中查询财务报告数据,并将数据分析后完成与用户之间的对话。

工具 - 图8

智能助手在对话中完成工具调用回复问题