工具

工具可用於將代理連結至外部系統,或直接提供給代理的內嵌程式碼。有了工具,代理就能與其他系統互動,進而擷取、更新、格式化或分析資訊。本頁各節說明支援的各種工具。

建立工具

如要建立工具,請按照下列步驟操作:

  1. 按一下代理程式建構工具右側的工具圖示。
  2. 選取工具類型 (請參閱本文中的工具類型說明)。
  3. 提供工具要求的資訊。
  4. 工具名稱請使用蛇形命名法。
  5. 工具說明會提供給代理模型。

在代理程式中使用工具

建立工具後,您需要指示特定代理使用該工具。

  1. 將游標懸停在代理程式上。
  2. 按一下「新增工具」。
  3. 選取工具。
  4. 在代理程式指令中說明工具的使用方式。

測試工具

在代理程式中使用工具前,您可以在控制台中測試工具:

  1. 開啟工具面板。
  2. 按一下面板頂端的「測試工具」按鈕。
  3. 根據工具結構定義,提供工具的輸入內容。 舉例來說,如果結構定義是包含 place 和 city 屬性的 JSON,您可以輸入:

    {
      "place": "automobile repair center",
      "city": "austin texas"
    }
    
  4. 按一下「提交」。 系統會使用輸入內容執行工具,並填入輸出內容。

直接測試工具後,您也可以使用「Preview agent」測試工具。

可用的工具

可用的工具如下:

工具 說明
A2A 通訊協定 使用 A2A 訊息標準,將代理連結至外部代理。(預覽)
代理做為工具 重複使用代理程式的功能,不必轉移給其他代理程式。
用戶端函式工具 在用戶端執行的程式碼工具,而非由代理執行。
Confluence 工具 將代理程式連結至 Confluence 執行個體。
資料儲存庫工具 根據網站內容和上傳的資料,提供 AI 生成的代理回覆。
檔案搜尋工具 將檔案上傳至代理程式,或提供 RAG 知識庫。
Google 地圖工具 將代理程式連結至 Google 地圖。(預覽)
Google 搜尋工具 讓代理程式透過 Google 搜尋建立基準。
Integration Connector 工具 建立使用已設定連結的工具。
Jira 工具 將代理連結至 Jira 執行個體。
MCP 工具 連線至 MCP 伺服器。
OpenAPI 工具 使用 OpenAPI 結構定義連線至外部 API。
Python 程式碼工具 提供 Python 程式碼做為代理的工具。
Salesforce 工具 將代理程式連結至 Salesforce 執行個體。
Service Now 工具 將代理程式連結至 Service Now 執行個體。
SharePoint 工具 將代理程式連結至 SharePoint 執行個體。
系統工具 代理程式可使用內建工具執行常見工作。
小工具工具 彈性小工具工具,可建立豐富的使用者互動。

執行作業類型

工具支援兩種執行類型:非同步 (非封鎖) 和同步 (封鎖)。選取適當的執行類型取決於工具的延遲時間和所需的代理程式體驗。這項設定位於工具設定的「進階」分頁中。

同步執行作業類型

如果工具執行作業應封鎖代理程式回覆生成作業,直到工具回應可用為止,就應使用這種類型。代理不會生成任何回覆,直到工具回覆可用為止。 這些工具的延遲時間應盡量短 (少於 5 秒),以確保整體代理程式的回應延遲時間較短。

非同步執行類型

這個類型應適用於工具的非封鎖執行作業。 觸發工具呼叫時,代理程式會繼續處理「待處理」回應。在系統擷取工具回應時,代理程式可以繼續與使用者對話。 回覆生成後,系統會在下次生成代理回覆時,將回覆加入情境。建議用於回應延遲時間為 5 到 60 秒的工具。

非同步執行類型的對話流程:

  1. 代理觸發函式呼叫: 代理觸發函式呼叫,並等待回覆。 例如,叫用訂單狀態工具。
  2. 工具待處理回應: 工具會立即傳回 function_response, 其中包含待處理狀態,例如 "status": "pending"。
  3. 代理處理待處理工具: 應指示代理視需要處理待處理的回覆。 範例指令: 「在擷取訂單狀態時,詢問使用者是否有其他問題」。 代理回覆範例:「在查詢訂單狀態時,還有什麼需要幫忙的地方嗎?」
  4. 代理處理最終回覆: 代理可查看實際的工具回覆。 這會做為內容標記。 例如:

    <context>function [<tool_name>] completed with response <response JSON></context>
    

最佳做法

使用工具時,請遵循下列最佳做法:

  • 請務必撰寫與工具執行工作相關的語意有意義工具名稱。
  • 請務必提供工具的優質說明,以及工具可執行的工作。
  • 如果是非同步工具,請針對下列情境提供詳細操作說明:
    • 告知專員 是非同步工具,一開始會傳回待處理的回覆。
    • 如果工具傳回「待處理」,請提供代理程式應如何回應的指示。
    • 加入代理程式在實際工具回應可用時應如何回應的指示。
    • 如果工具傳回錯誤,請加入代理程式應如何回應的指示。