將工具新增至 Azure AI 代理程式
在 Microsoft 代理程式架構中,工具可讓您的 AI 代理程式使用現有的 API 和服務來執行無法自行執行的工作。 工具通過函數調用工作,允許 AI 自動請求和使用特定功能。 框架將請求路由到程式碼庫中的適當函數,並將結果傳回大型語言模型 (LLM),以便產生最終回應。
若要啟用自動函式呼叫,工具需要提供描述其運作方式的詳細資料。 函數的輸入、輸出和用途應該以 AI 可以理解的方式描述,否則 AI 無法正確呼叫函數。
如何使用 Microsoft Foundry 代理工具
Microsoft Agent Framework 支援自訂函式工具和內建工具,這些工具可立即使用。
內建工具
Microsoft Foundry 代理程式內建了幾個你可以立即使用的工具:
- 程式碼解釋器 - 執行 Python 程式碼進行計算、資料分析等
- 檔案搜尋 - 搜尋和分析文件
- 網路搜尋 - 從網際網路擷取資訊
這些工具會自動可用,不需要任何額外的設定。
自訂功能工具
在為您的 Microsoft Foundry 代理建立客製化工具時,您需要了解幾個關鍵概念:
函數定義和註釋
透過定義具有適當類型註釋的常規 Python 函數來建立您的工具。 使用
Annotated和Fieldfrom Pydantic 提供詳細描述,幫助 AI 理解函數的用途以及如何使用其參數。 您的註釋描述性越強,AI 就越能理解何時以及如何呼叫您的函數。將工具新增至您的代理程式
建立時,使用
tools參數將您的自訂函數傳遞給 ChatAgent。 您可以新增單一函式或多個函式的清單。 框架會自動註冊這些函數,並使其可供 AI 調用。透過對話來調用工具
向代理程式註冊工具後,您不需要手動叫用它們。 相反,向代理提出問題或給它一些自然會需要使用您工具功能的任務。 AI 根據對話上下文和您提供的工具描述自動確定何時呼叫您的工具。
多種工具和協調
您可以將多個工具添加到單個代理,AI 會根據用戶的請求自動選擇要使用的工具。 該框架處理協調流程,呼叫適當的函數並結合其結果以提供全面的回應。
工具開發的最佳實務
- 清晰描述: 為您的功能和參數撰寫清晰、詳細的描述,以幫助 AI 理解其用途
- 類型註釋: 使用適當的 Python 類型提示來指定預期的輸入和輸出類型
- 錯誤處理: 在您的工具函數中實現適當的錯誤處理,以優雅地處理意外輸入
- 返回有意義的數據: 確保您的函數返回 AI 可以在其回應中有效使用的數據
- 保持功能專注:設計每個工具來處理特定任務,而不是試圖在一個功能中做太多事情
遵循這些概念,您可以擴充 Microsoft Foundry 代理,加入內建與自訂工具,使其能與 API 互動並執行進階任務。 這種方法使您的人工智慧更加強大,並且能夠有效地處理現實世界的應用程式。