必看!手把手教你玩轉Dify的3大核心工具!
作者:磊哥
工具是擴展大模型能力邊界的主要手段,也是實現復雜任務的核心機制,正確、靈活的使用工具是我們開發 AI 應用中必不可少的技能。一起行動起來,體驗一下 Dify 中好玩又有用的這些插件吧。
Dify 中的工具是指其平臺內置或支持集成的功能插件,用于擴展 AI 應用的能力。
1.工具作用
- 擴展 LLM 的能力:工具可以賦予 LLM 連接外部世界的能力,例如聯網搜索、科學計算、繪制圖片等。例如,通過集成谷歌搜索工具,AI 助手可以回答實時問題。
- 完成復雜任務:工具可以幫助 LLM 進行任務推理、步驟拆解和工具調用,從而完成復雜的任務。例如,在開發數據報表生成助手時,可以通過連接數據庫工具獲取數據,再利用數據分析工具進行處理,最后借助文件處理工具將結果生成報表。
- 與其他系統或服務連接:工具可以方便地將 Dify 應用與其他系統或服務連接,實現與外部環境的交互。例如,通過集成郵件發送工具,可以實現自動發送郵件的功能。
2.工具分類
Dify 中工具分為以下 3 種類型:
- 內置工具:Dify 第一方提供的工具,使用該工具前可能需要先給工具進行 授權。
- 自定義工具:如果內置工具無法滿足使用需求,你可以在 Dify 菜單導航 —工具,內創建自定義工具。你可以通過 OpenAPI/Swagger 標準格式導入或配置的工具,但在此之前你需要預先提供自定義服務器端,Http 協議的接口,讓 Dify 進行調用。
- 工作流:你可以編排一個更復雜的工作流,并將其發布為工具。詳細說明請參考工具配置說明。
3.內置工具
內置工具可以點擊“插件”、“市場”,通過瀏覽或搜索進行安裝,如下圖所示:
4.自定義工具
自定義工具實現分為以下兩步:
- HTTP 協議的自定義服務器端,用于處理某個業務邏輯。
- 使用 OpenAPI/Swagger 協議將其添加到 Dify 中。
自定義的服務器端使用任何語言都可以,只要是 HTTP 協議即可,OpenAI/Swagger 協議如下。
例如添加一個天氣預報的協議:
配置如下:
{
"openapi": "3.1.0",
"info": {
"title": "Get weather data",
"description": "Retrieves current weather data for a location.",
"version": "v1.0.0"
},
"servers": [
{
"url": "https://weather.example.com"
}
],
"paths": {
"/location": {
"get": {
"description": "Get temperature for a specific location",
"operationId": "GetCurrentWeather",
"parameters": [
{
"name": "location",
"in": "query",
"description": "The city and state to retrieve the weather for",
"required": true,
"schema": {
"type": "string"
}
}
],
"deprecated": false
}
}
},
"components": {
"schemas": {}
}
}
5.工作流
工作流就是將 Dify 中創建的 WorkFlow 發布為工具,讓 Dify 其他地方進行調用:
小結
工具是擴展大模型能力邊界的主要手段,也是實現復雜任務的核心機制,正確、靈活的使用工具是我們開發 AI 應用中必不可少的技能。一起行動起來,體驗一下 Dify 中好玩又有用的這些插件吧。
責任編輯:姜華
來源:
磊哥和Java