

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 用於呼叫 函數的工具型代理程式
<a name="tool-based-agents-for-calling-functions"></a>

工具型代理程式透過叫用外部函數或 APIs 來完成超出僅語言推理的任務，來擴展推理代理程式的功能。此模式使用 LLM 來決定要使用哪個工具，然後產生呼叫引數，並將工具的輸出納入其推理迴圈。

此模式可讓客服人員採取行動，而不只是提供回應。工具界面代表任何可呼叫的功能，從算術計算和資料庫查詢到外部 APIs 和雲端服務。

## Architecture
<a name="architecture-calling-functions"></a>

下圖顯示用於呼叫 函數的工具型代理程式：

![\[用於呼叫 函數的工具型代理程式。\]](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/agentic-ai-patterns/images/tool-based-agents-for-calling-functions.png)


## Description
<a name="description-calling-functions"></a>

1. 接收查詢
   + 客服人員會收到使用者或呼叫系統的自然語言查詢或任務。

1. 搜尋工具
   + 代理程式使用內部中繼資料或工具登錄檔來搜尋可用的工具、結構描述和相關功能。

1. 選取和叫用工具
   + LLM 會在提示中接收查詢和工具中繼資料 （例如，函數名稱、輸入類型和描述）。
   + 它選擇最相關的工具、建構輸入引數，並傳回結構化函數呼叫。

1. 執行所選的工具
   + 代理程式 shell 或工具執行器會執行選取的函數，並傳回結果 （例如 API 輸出、資料庫值或運算）。

1. 傳回回應
   + LLM 會將結果直接傳遞給代理程式，或做為更新提示的一部分。然後傳回自然語言結果。

## 功能
<a name="capabilities-calling-functions"></a>
+ 根據任務內容選擇動態工具
+ 結構描述型提示 (OpenAPI、JSON 結構描述、 AWS 函數界面）
+ 結果解譯並將輸出鏈結到推理中
+ 無狀態或工作階段感知操作

## 常用案例
<a name="common-use-cases-calling-functions"></a>
+ 具有外部資料存取的虛擬助理
+ 財務計算器和估算器
+ 以 API 為基礎的知識工作者
+ 叫用 AWS Lambda Amazon SageMaker 端點和 SaaS 服務的 LLMs 

## 實作指引
<a name="implementation-guidance-calling-functions"></a>

使用下列項目建立工具型客服人員來呼叫 函數：
+ 支援函式呼叫的 Amazon Bedrock (Anthropic Claude)
+ AWS Lambda 做為工具執行後端
+ Amazon API Gateway 或 AWS Step Functions 用於工具協同運作
+ 適用於內容感知工具中繼資料的 Amazon DynamoDB 或 Amazon Relational Database Service (Amazon RDS)
+ Amazon EventBridge 管道或 AWS Step Functions 映射狀態以路由輸出

## 摘要
<a name="summary-calling-functions"></a>

工具型函數呼叫代理程式代表從了解語言到執行動作的轉變。這些客服人員會叫用動態的內容感知工具，同時維護 LLM 推理，將被動助理轉換為完成任務、存取服務和整合業務操作的系統。此模式是代理式 AI 在企業設定中的重要元件，特別是在與宣告式結構描述、授權架構和多代理程式系統結合時。