人工智慧(AI)代理持續受到關注,因為企業利用生成式 AI 的力量來重新設計客戶體驗和自動化複雜的工作流程。我們看到亞馬遜基石代理(Amazon Bedrock Agents)被應用於投資研究、保險索賠處理、根本原因分析、廣告活動等多個領域。這些代理利用基礎模型(Foundation Models, FMs)的推理能力,將用戶請求的任務分解為多個步驟。它們使用開發者提供的指示來創建一個協調計劃,並通過安全地調用公司 API 和使用檢索增強生成(Retrieval Augmented Generation, RAG)來準確處理用戶的請求。
雖然組織看到已定義、配置和測試的代理作為管理資源的好處,但我們越來越多地看到需要一種額外的、更具動態性的方式來調用代理。組織需要能夠隨時調整的解決方案——無論是測試新方法、響應變化的業務規則,還是為不同客戶定制解決方案。這就是亞馬遜基石代理中的新內聯代理(inline agents)功能變得變革性的原因。它允許你在運行時動態調整代理的行為,通過改變其指示、工具、護欄、知識庫、提示,甚至使用的 FMs,所有這些都不需要重新部署應用程序。
在這篇文章中,我們將探討如何使用亞馬遜基石內聯代理構建應用程序,展示如何讓單一的 AI 助手根據用戶角色動態調整其能力。
亞馬遜基石代理中的內聯代理
內聯代理所提供的運行時靈活性開啟了強大的新可能性,例如:
快速原型設計 – 內聯代理最小化了傳統上需要的耗時創建/更新/準備周期,開發者可以立即測試不同的模型、工具和知識庫組合,顯著加快開發過程。
A/B 測試和實驗 – 數據科學團隊可以系統性地評估不同的模型-工具組合,測量性能指標,並在受控環境中分析反應模式。這種實證方法使得在生產部署之前能夠進行定量比較。
基於訂閱的個性化 – 軟體公司可以根據每個客戶的訂閱等級調整功能,為高級用戶提供更先進的工具。
基於角色的資料來源整合 – 機構可以根據用戶的資料調整內容的複雜性和語氣,通過隨時改變與代理相關的知識庫,提供適合角色的解釋和資源。
動態工具選擇 – 開發者可以創建擁有數百個 API 的應用程序,並通過動態選擇一小部分 API 來快速準確地執行任務。這對於需要多租戶擴展的大型軟體即服務(SaaS)平台特別有幫助。
內聯代理擴展了你使用亞馬遜基石代理構建和部署代理解決方案的選擇。對於需要管理和版本化的代理資源,並具有預先確定和測試的配置(特定模型、指示、工具等)的工作負載,開發者可以繼續使用 InvokeAgent 來調用使用 CreateAgent 創建的資源。對於需要每次代理調用時動態運行行為變更的工作負載,你可以使用新的 InvokeInlineAgent API。無論哪種方法,你的代理都將是安全且可擴展的,擁有可配置的護欄、靈活的模型推理選項、本地訪問知識庫、代碼解釋、會話記憶等功能。
解決方案概述
我們的 HR 助手範例展示了如何使用亞馬遜基石內聯代理構建一個單一的 AI 助手,根據不同的用戶角色進行調整。當用戶與助手互動時,助手根據用戶的角色和具體選擇動態配置代理的能力(如模型、指示、知識庫、行動組和護欄)。這種方法創造了一個靈活的系統,能夠實時調整其功能,使其比為每個用戶角色或工具組合創建單獨的代理更有效。這個 HR 助手範例的完整代碼可在我們的 GitHub 倉庫中找到。
這種動態工具選擇提供了個性化的體驗。當員工登錄時,如果沒有直接的下屬,他們會看到根據其角色可訪問的一組工具。他們可以選擇請假、使用知識庫查詢公司政策、使用代碼解釋器進行數據分析或提交費用報告等選項。然後,內聯代理助手僅配置這些選定的工具,使其能夠協助員工完成他們選擇的任務。在實際情況中,用戶不需要進行選擇,因為應用程序會做出該決定並在運行時自動配置代理調用。我們在這個應用中明確展示,以便你能夠演示其影響。
同樣,當經理登錄到同一系統時,他們會看到反映其額外權限的擴展工具集。除了員工級別的工具外,經理還可以使用執行績效評估等功能。他們可以選擇在當前會話中使用哪些工具,立即根據他們的選擇配置內聯代理。
知識庫的包含也根據用戶的角色進行調整。員工和經理看到不同級別的公司政策資訊,經理則可以額外訪問機密數據,如績效評估和薪酬細節。為了這次演示,我們實施了元數據過濾,以根據用戶的訪問級別檢索適當級別的文件,進一步提高效率和安全性。
讓我們看看界面如何適應不同的用戶角色。
員工視圖提供訪問基本 HR 功能,如請假請求、費用提交和公司政策查詢。用戶可以選擇他們希望在當前會話中使用的工具。
經理視圖擴展了這些選項,包括如薪酬管理等監督功能,展示了內聯代理如何根據用戶權限配置更廣泛的工具集。
經理視圖擴展了這些功能,包括如薪酬管理等監督功能,展示了內聯代理如何根據用戶權限動態調整其可用工具。如果沒有內聯代理,我們將需要構建和維護兩個單獨的代理。
如前面的截圖所示,同一個 HR 助手根據用戶的角色提供不同的工具選擇。員工看到的選項包括知識庫、請假工具和提交費用,而經理則有額外的選項,如績效評估。用戶可以選擇希望在當前互動中添加哪些工具到代理中。
這種靈活性使得能夠快速適應用戶的需求和偏好。例如,如果公司引入了一項新的商務旅行請求政策,工具目錄可以迅速更新以包含創建商務旅行預訂的工具。然後,員工可以在需要計劃商務旅行時選擇將這個新工具添加到他們的代理配置中,或者應用程序可以根據他們的角色自動這樣做。
使用亞馬遜基石內聯代理,你可以創建一個動態選擇的行動目錄,這個目錄可以由應用程序或應用程序的用戶選擇。這增加了你的解決方案的靈活性和適應性,使其非常適合應對現代商業運營中複雜且不斷變化的環境。用戶對其 AI 助手的能力有更多的控制,系統通過僅加載每次互動所需的工具來保持高效。
技術基礎:動態配置和行動選擇
內聯代理允許在運行時進行動態配置,使單一代理能有效執行多個任務。通過指定行動組和隨時修改指示,即使在同一會話中,你也可以創建多功能的 AI 應用程序,適應各種情境,而無需多次部署代理。
以下是有關內聯代理的關鍵點:
運行時配置 – 在運行時更改代理的配置,包括其 FM。這使得快速實驗和適應成為可能,而無需重新部署應用程序,從而減少開發周期。
工具級別的治理 – 在工具級別應用治理和訪問控制。隨著代理在運行時動態變化,工具級別的治理有助於維持安全性和合規性,無論代理的配置如何。
代理效率 – 在運行時僅提供必要的工具和指示,以減少令牌使用並提高代理的準確性。選擇的工具越少,代理選擇正確工具的難度就越小,從而減少工具選擇過程中的錯誤。這種方法還可以降低成本並改善延遲,因為移除不必要的工具、知識庫和指示減少了代理的大型語言模型(LLM)所處理的輸入和輸出令牌的數量。
靈活的行動目錄 – 創建可重用的行動以便根據特定需求進行動態選擇。這種模塊化的方法簡化了 AI 應用程序的維護、更新和擴展性。
以下是可重用行動的示例:
企業系統整合 – 與 Salesforce、GitHub 或數據庫等系統連接
實用工具 – 執行常見任務,如發送電子郵件或管理日曆
團隊特定 API 訪問 – 與專門的內部工具和服務互動
數據處理 – 分析文本、結構化數據或其他資訊
外部服務 – 獲取天氣更新、股票價格或執行網頁搜索
專門的機器學習模型 – 用於特定任務的特定機器學習(ML)模型
使用內聯代理時,你需要配置以下參數:
根據用戶意圖或對話流程進行上下文工具選擇
適應不同的用戶角色和權限
在溝通風格或角色之間切換
根據任務複雜性選擇模型
內聯代理使用你在運行時提供的配置,允許高度靈活的 AI 助手有效處理各種任務,適用於不同的商業情境。
使用內聯代理構建 HR 助手
讓我們看看如何使用亞馬遜基石內聯代理構建我們的 HR 助手:
創建工具目錄 – 我們開發了一個 HR 相關工具的演示目錄,包括:
知識庫 – 使用亞馬遜基石知識庫訪問根據應用用戶角色的公司政策和指導方針。為了根據用戶角色過濾知識庫內容,你還需要提供一個元數據文件,指定可以訪問每個文件的員工角色類型
請假申請 – 用於請求和跟蹤休假。
費用報告 – 用於提交和管理費用報告。
代碼解釋器 – 用於執行計算和數據分析。
薪酬管理 – 用於進行和審查員工薪酬評估(僅限經理訪問)。
設定對話語氣 – 我們定義了多種對話語氣,以適應不同的互動風格:
專業 – 用於正式的商務互動。
隨意 – 用於友好、日常的支持。
熱情 – 用於積極、鼓勵的協助。
實施訪問控制 – 我們實施了基於角色的訪問控制。應用程序後端檢查用戶的角色(員工或經理),並提供適當的工具和資訊的訪問,並將這些信息傳遞給內聯代理。角色信息還用於配置知識庫中的元數據過濾,以生成相關的回應。系統允許在運行時動態使用工具。用戶可以在會話中切換角色或添加和移除工具,使代理能夠實時適應不同的對話需求。
將代理與其他服務和工具整合 – 我們將內聯代理連接到:
亞馬遜基石知識庫以獲取公司政策,並進行基於角色的元數據過濾。
AWS Lambda 函數以執行特定操作(如提交請假申請或費用報告)。
代碼解釋器工具以執行計算和數據分析。
創建用戶界面 – 我們創建了一個基於 Flask 的用戶界面,執行以下操作:
根據用戶的角色顯示可用工具。
允許用戶選擇不同的角色。
提供與 HR 助手互動的聊天窗口。
為了理解這種動態基於角色的功能如何在內部運作,讓我們檢查以下系統架構圖。
如前面的架構圖所示,系統的運作方式如下:
最終用戶登錄並被識別為經理或員工。
用戶選擇他們可以訪問的工具並向 HR 助手提出請求。
代理將問題分解,並使用可用工具逐步解決查詢,這可能包括:
亞馬遜基石知識庫(進行基於角色的元數據過濾)。
用於特定操作的 Lambda 函數。
用於計算的代碼解釋器工具。
薪酬工具(僅限經理訪問以提交基本薪資加薪請求)。
應用程序使用亞馬遜基石內聯代理根據用戶的角色和請求動態傳遞適當的工具。
代理使用選定的工具處理請求並向用戶提供回應。
這種方法提供了一個靈活、可擴展的解決方案,可以快速適應不同的用戶角色和不斷變化的業務需求。
結論
在這篇文章中,我們介紹了亞馬遜基石內聯代理的功能,並強調了其在 HR 用例中的應用。我們根據用戶的角色和權限動態選擇工具,調整指示以設置對話語氣,並在運行時選擇不同的模型。使用內聯代理,你可以改變構建和部署 AI 助手的方式。通過在運行時動態調整工具、指示和模型,你可以:
為不同用戶角色創建個性化體驗
通過將模型能力與任務複雜性匹配來優化成本
簡化開發和維護
高效擴展,而無需管理多個代理配置
對於需要高度動態行為的組織——無論你是一家 AI 初創公司、SaaS 提供商還是企業解決方案團隊——內聯代理提供了一種可擴展的方法來構建隨著需求增長的智能助手。要開始使用,請探索我們的 GitHub 倉庫和 HR 助手演示應用程序,這些展示了關鍵的實施模式和最佳實踐。
要了解如何在你的代理旅程中取得最佳成功,請閱讀我們的兩部分博客系列:
要開始使用亞馬遜基石代理,請查看以下 GitHub 倉庫,其中包含示例代碼。
關於作者
Ishan Singh 是亞馬遜網路服務(Amazon Web Services, AWS)的生成式 AI 數據科學家,他幫助客戶構建創新和負責任的生成式 AI 解決方案和產品。Ishan 擁有強大的 AI/ML 背景,專注於構建能帶來商業價值的生成式 AI 解決方案。在工作之外,他喜歡打排球、探索當地的自行車道,並與妻子和狗 Beau 一起度過時光。
Maira Ladeira Tanke 是 AWS 的高級生成式 AI 數據科學家。她擁有機器學習背景,擁有超過 10 年的經驗,與各行各業的客戶一起設計和構建 AI 應用程序。作為技術負責人,她幫助客戶加速通過亞馬遜基石的生成式 AI 解決方案實現商業價值。在空閒時間,Maira 喜歡旅行、和她的貓玩耍,並與家人在溫暖的地方共度時光。
Mark Roy 是 AWS 的首席機器學習架構師,幫助客戶設計和構建生成式 AI 解決方案。自 2023 年初以來,他的重點一直是領導亞馬遜基石的解決方案架構工作,這是 AWS 為開發者提供的旗艦生成式 AI 產品。Mark 的工作涵蓋了廣泛的用例,主要關注生成式 AI、代理和企業級的機器學習擴展。他幫助過保險、金融服務、媒體和娛樂、醫療保健、公用事業和製造業的公司。在加入 AWS 之前,Mark 擔任架構師、開發者和技術領導者超過 25 年,其中包括在金融服務領域的 19 年。Mark 擁有六項 AWS 認證,包括機器學習專業認證。
Nitin Eusebius 是 AWS 的高級企業解決方案架構師,擁有軟體工程、企業架構和 AI/ML 的經驗。他對探索生成式 AI 的可能性充滿熱情。他與客戶合作,幫助他們在 AWS 平台上構建良好架構的應用程序,並致力於解決技術挑戰,協助他們的雲端之旅。
Ashrith Chirutani 是亞馬遜網路服務(AWS)的軟體開發工程師。他專注於後端系統設計、分散式架構和可擴展解決方案,為亞馬遜開發和推出高影響力系統做出貢獻。在工作之外,他喜歡打乒乓球和在 Cascade 小徑上健行,享受戶外活動。
Shubham Divekar 是亞馬遜網路服務(AWS)的軟體開發工程師,專注於亞馬遜基石的代理。他專注於開發可擴展的雲端系統,以支持 AI 應用框架和協調。Shubham 也有在物聯網架構中構建分散式、可擴展的高容量系統的背景。
Vivek Bhadauria 是亞馬遜基石的首席工程師。他專注於為 AWS 客戶構建基於深度學習的 AI 和計算機視覺解決方案。在工作之外,Vivek 喜歡健行和關注板球。
本文由 AI 台灣 運用 AI 技術編撰,內容僅供參考,請自行核實相關資訊。
歡迎加入我們的 AI TAIWAN 台灣人工智慧中心 FB 社團,
隨時掌握最新 AI 動態與實用資訊!