生成式 AI 驅動的自動化工作流程代理
各種規模的公司都面臨著維持營運效率的持續壓力。 數據量不斷增加、系統日益複雜,以及需要管理的大量客戶互動,都進一步加劇了這一挑戰。 傳統的手動流程和通常不連貫的資訊來源可能會導致嚴重的瓶頸。 這些障礙會減慢決策速度,並阻礙團隊將時間和精力投入到真正有價值的、能推動業務發展的工作上。 生成式 AI 代理代表了一種變革性的解決方案。 這些代理可以自動與公司的現有系統連接、執行各種任務並提供即時洞察。 這使組織能夠有效地擴展其營運,而不會相應地增加複雜性。
Amazon Bedrock in SageMaker Unified Studio 直接解決了這些普遍存在的挑戰。 它提供了一個統一的服務,專為構建 AI 驅動的解決方案而設計。 該平台集中了客戶數據並支持自然語言交互,使其直觀且易於使用。 一個關鍵優勢是它與現有應用程式的無縫集成。 它還整合了基本的 Amazon Bedrock 功能,包括廣泛的基礎模型 (FMs) 選擇、提示工程功能、用於上下文理解的知識庫、用於任務執行的代理、用於工作流程編排的流程、用於效能監控的評估工具,以及用於負責任的 AI 開發的護欄。 用戶可以通過其組織的單一登錄 (SSO) 系統方便地訪問這套全面的 AI 功能。 這促進了團隊成員之間的協作,並允許在不需要直接訪問 AWS 管理控制台的情況下完善 AI 應用程式。
Amazon Bedrock in SageMaker Unified Studio 使您能夠創建和部署複雜的生成式 AI 代理。 這些代理可以與您組織的應用程式、數據庫甚至第三方系統無縫集成。 這種集成級別支持跨整個技術堆疊的自然語言交互。 聊天代理充當關鍵橋樑,將複雜的資訊系統與用戶友好的通信連接起來。 通過利用 Amazon Bedrock functions 和 Amazon Bedrock Knowledge Bases,代理獲得了連接不同數據源的能力。 這些來源可以從用於實時項目狀態跟踪的 JIRA API 到用於檢索客戶資訊的客戶關係管理 (CRM) 系統。 代理還可以更新項目任務、管理用戶偏好等等。
這種全面的功能為組織內的各個團隊提供了顯著的好處。 銷售和營銷團隊可以快速訪問客戶資訊及其首選會議時間。 項目經理可以有效地管理 JIRA 任務和時間表,優化項目工作流程。 這種由 AI 代理促進的簡化流程可提高整個組織的生產力並改善客戶互動。
解決方案概述
Amazon Bedrock 提供了一個受控的協作環境,全部在 SageMaker Unified Studio 中,用於構建和共享生成式 AI 應用程式。 讓我們深入研究一個實際的示例解決方案,該解決方案演示了客戶管理代理的實現:
- Agentic Chat: 可以使用 Amazon Bedrock 的聊天應用程式功能構建複雜的 agentic 聊天應用程式。 此聊天應用程式可以與使用其他 AWS 服務(例如用於無伺服器計算的 AWS Lambda 和用於創建和管理 API 的 Amazon API Gateway)輕鬆構建的功能無縫集成。
- 數據管理: SageMaker Unified Studio 與 Amazon DataZone 結合,通過其集成服務提供全面的數據管理解決方案。 組織管理員可以對成員訪問 Amazon Bedrock 模型和功能進行精細控制。 這確保了安全的身份管理和精細的訪問控制,維護數據安全性和合規性。
在我們深入研究 AI 代理的部署之前,最好先了解架構的關鍵步驟。
工作流程如下展開:
- 用戶身份驗證和交互: 用戶通過使用其組織在 AWS IAM Identity Center 中的 SSO 憑證登錄 SageMaker Unified Studio 來啟動該過程。 經過身份驗證後,用戶使用自然語言與聊天應用程式交互,提出問題或提出請求。
- 函數調用: Amazon Bedrock 聊天應用程式智能地利用預定義的函數來檢索相關資訊。 此函數可能旨在從數據庫中獲取 JIRA 狀態更新或客戶資訊。 檢索是通過使用 API Gateway 的安全端點執行的。
- 安全訪問和 Lambda 觸發: 聊天應用程式使用 API Gateway 對自身進行身份驗證,以安全地訪問指定的端點。 此身份驗證是使用安全存儲在 AWS Secrets Manager 中的隨機生成的 API 密鑰實現的。 根據用戶的請求,觸發適當的 Lambda 函數。
- 操作執行: 現在已激活的 Lambda 函數執行用戶請求的特定操作。 這涉及使用代理提供的必要參數調用 JIRA API 或查詢數據庫。 該代理旨在處理各種任務,包括:
- 提供特定客戶的簡要概述。
- 列出與特定客戶的最近互動。
- 檢索指定客戶的會議偏好。
- 檢索與特定項目關聯的未結 JIRA 票證列表。
- 更新特定 JIRA 票證的截止日期。
先決條件
要遵循此解決方案實施並構建您自己的客戶管理代理,您需要滿足以下先決條件:
- AWS 帳戶: 必須擁有有效的 AWS 帳戶才能訪問必要的服務。
- SageMaker Unified Studio 訪問權限: 需要用戶在 SageMaker Unified Studio 中訪問 Amazon Bedrock。
- 模型訪問權限: 您需要對 Amazon Bedrock 上的 Amazon Nova Pro 進行模型訪問。 確保此模型在受支持的 AWS 區域中可用。
- JIRA 設置: 需要 JIRA 應用程式、其對應的 JIRA URL 以及與您的帳戶關聯的 JIRA API 令牌才能與 JIRA 集成。
假設您對 AWS 上的基本無伺服器概念有基本的了解,包括 API Gateway、Lambda 函數和 IAM Identity Center。 雖然這篇文章不會提供這些服務的深入定義,但我們將在 SageMaker Unified Studio 中提供的新的 Amazon Bedrock 功能的上下文中演示它們的用例。
部署解決方案
要部署客戶管理代理解決方案,請按照以下步驟操作:
- 下載代碼: 首先從提供的 GitHub 存儲庫下載必要的代碼。
- 檢索 JIRA 憑證: 獲取 Lambda 函數的
JIRA_API_KEY_ARN
、JIRA_URL
和JIRA_USER_NAME
的值。 這些憑證將用於向您的 JIRA 實例進行身份驗證。 - 啟動 CloudFormation 堆疊: 利用提供的 AWS CloudFormation 模板。 有關在您首選的 AWS 區域中啟動堆疊的詳細說明,請參閱“從 CloudFormation 控制台創建堆疊”的文檔。
- API Gateway URL: 成功部署 CloudFormation 堆疊後,導航到 Outputs 選項卡。 找到並記下
ApiInvokeURL
值。 此 URL 代表您的 API Gateway 的端點。 - Secrets Manager 配置: 訪問 Secrets Manager 控制台。 找到與
JIRA_API_KEY_ARN
、JIRA_URL
和JIRA_USER_NAME
對應的密鑰。 - 更新密鑰值: 為每個密鑰選擇 Retrieve secret 選項。 將在步驟 2 中獲得的相應變量複製到密鑰純文本字符串中。 這將安全地存儲您的 JIRA 憑證。
- 登錄 SageMaker Unified Studio: 使用您組織的 SSO 憑證登錄 SageMaker Unified Studio。
創建新項目
基礎設施到位後,讓我們在 SageMaker Unified Studio 中創建一個新項目:
- 項目創建: 在 SageMaker Unified Studio 登陸頁面上,啟動新項目的創建。
- 項目命名: 為您的項目分配一個描述性名稱(例如,
crm-agent
)。 - 配置文件選擇: 選擇 Generative AI application development profile 並繼續。
- 默認設置: 接受默認設置並繼續。
- 確認: 檢查項目配置並選擇 Create project 以確認。
構建聊天代理應用程式
現在,讓我們構建解決方案的核心 – 聊天代理應用程式:
聊天代理啟動: 在
crm-agent
項目登陸頁面中,找到右側的 New 部分。 選擇 Chat agent 以開始構建您的應用程式。
這將顯示您的代理應用程式的配置列表。模型選擇: 在模型部分下,選擇 Amazon Bedrock 支持的所需基礎模型 (FM)。 對於此
crm-agent
,我們將選擇 Amazon Nova Pro。系統提示定義: 在系統提示部分,提供以下提示。 此提示將指導代理的行為和響應。 您可以選擇包含用戶輸入和模型響應的示例,以進一步優化其性能。
您是一名客戶關係管理代理,負責幫助銷售人員規劃他們與客戶的工作。 您將獲得一個 API 端點。 此端點可以提供公司概覽、公司互動歷史記錄(會議時間和備註)、公司會議偏好(會議類型、星期幾和時間)等資訊。 您還可以查詢 Jira 任務並更新其時間表。 收到響應後,將其整理成可讀的格式。 如果輸出是編號列表,請使用換行符和數字將其格式化。
函數創建: 在 Functions 部分,選擇 Create a new function。 此函數將定義代理可以執行的操作。
函數命名: 為您的函數指定一個描述性名稱,例如
crm_agent_calling
。函數模式: 對於 Function schema,使用 GitHub 存儲庫中提供的 OpenAPI 定義。 此模式定義函數的輸入和輸出參數。
身份驗證配置: 對於 Authentication method,選擇 API Keys (Max. 2 Keys) 並輸入以下詳細資訊:
- 對於 Key sent in,選擇 Header。
- 對於 Key name,輸入
x-api-key
。 - 對於 Key value,輸入 Secrets Manager API Key。
API 伺服器端點: 在 API servers 部分,輸入您從 CloudFormation Outputs 獲得的端點 URL(
ApiInvokeURL
)。函數完成: 選擇 Create 以完成函數創建。
應用程式保存: 在聊天代理應用程式的 Functions 部分,選擇您剛剛創建的函數,然後選擇 Save 以完成應用程式創建。
示例互動
讓我們探索一些關於如何使用此聊天代理的實際示例:
用例 1:CRM 分析師檢索客戶詳細資訊
CRM 分析師可以使用自然語言來檢索存儲在數據庫中的客戶詳細資訊。 以下是他們可能會問的一些示例問題:
- ‘給我客戶 C-jkl101112 的簡要概述。’
- ‘列出客戶 C-def456 最近的 2 次互動。’
- ‘客戶 C-mno131415 更喜歡哪種通信方式?’
- ‘根據 C-ghi789 的偏好和我們上次的互動,推薦最佳時間和聯繫渠道。’
代理在收到這些請求後,將智能地查詢數據庫並以清晰簡潔的格式提供相應的答案。
用例 2:項目經理管理 JIRA 票證
項目經理可以使用代理來列出和更新 JIRA 票證。 以下是一些示例互動:
- ‘項目 ID CRM 的未結 JIRA 任務是什麼?’
- ‘請將 JIRA 任務 CRM-3 更新為 1 週後。’
代理將訪問 JIRA 看板,獲取相關的項目資訊,並提供未結 JIRA 任務的列表。 它還將根據用戶的請求更新特定任務的時間表。
清理
為防止產生不必要的費用,請執行以下清理步驟:
- 刪除 CloudFormation 堆疊: 刪除您之前部署的 CloudFormation 堆疊。
- 刪除函數組件: 刪除您在 Amazon Bedrock 中創建的函數組件。
- 刪除聊天代理應用程式: 刪除 Amazon Bedrock 中的聊天代理應用程式。
- 刪除域: 刪除 SageMaker Unified Studio 中的域。
成本
在 SageMaker Unified Studio 中使用 Amazon Bedrock 不會產生任何單獨的費用。 但是,您將需要為服務中使用的各個 AWS 服務和資源付費。 Amazon Bedrock 採用按需付費模式,這意味著您只需為您消耗的資源付費,沒有最低費用或預先承諾。
如果您需要有關定價計算的進一步幫助,或者對優化特定用例的成本有疑問,建議聯繫 AWS Support 或諮詢您的客戶經理。 他們可以根據您的需求提供量身定制的指導。