從疫情封鎖到地緣政治緊張,近幾年讓我們的全球供應鏈陷入意想不到的混亂。這段動盪的時期讓各國政府和組織學到了一個重要的教訓:供應鏈的卓越不僅依賴於效率,還依賴於通過戰略風險管理來應對干擾的能力。透過利用亞馬遜基石 (Amazon Bedrock) 的生成式人工智慧能力和工具,您可以創建一個智能的神經中心,連接不同的數據來源,將數據轉換為可行的見解,並制定全面的計劃以減輕供應鏈風險。
亞馬遜基石 (Amazon Bedrock) 是一項完全管理的服務,能夠通過單一的 API 使用來自領先人工智慧公司高效能基礎模型 (FMs) 開發和部署生成式人工智慧應用程式。
亞馬遜基石流程 (Amazon Bedrock Flows) 讓您能夠使用支援的基礎模型來建立工作流程,通過連接提示、基礎模型、數據來源和其他亞馬遜網路服務 (AWS) 服務來創建端到端解決方案。其視覺化工作流程建構器和無伺服器基礎架構使組織能夠加速開發和部署人工智慧驅動的供應鏈解決方案,提高在不斷變化的挑戰面前的靈活性和韌性。亞馬遜基石流程的拖放功能有效地與亞馬遜基石知識庫 (Amazon Bedrock Knowledge Bases)、亞馬遜基石代理 (Amazon Bedrock Agents) 和其他不斷增長的 AWS 服務(如亞馬遜簡單儲存服務 (Amazon S3)、AWS Lambda 和亞馬遜 Lex)集成。
這篇文章將介紹亞馬遜基石流程如何連接您的業務系統,監控醫療設備短缺,並根據亞馬遜基石知識庫的知識或直接存儲在亞馬遜 S3 的數據提供減輕策略。您將學會如何創建一個能夠預測供應鏈風險的系統。
業務工作流程
以下是作為亞馬遜基石流程實施的供應鏈業務工作流程。
以下是工作流程的詳細步驟:
提交包含醫療設備名稱的 JSON 請求到提示流程。
工作流程通過以下步驟來判斷醫療設備是否需要審查:
助手調用 Lambda 函數檢查設備分類和任何短缺情況。
如果沒有短缺,工作流程通知用戶無需採取行動。
如果設備分類為 3(對生命或健康至關重要的高風險醫療設備)且有短缺,助手將確定必要的減輕步驟。分類為 3 的設備被視為高風險設備,並需要全面的減輕策略。此情況下遵循以下步驟:
亞馬遜基石知識庫檢索和生成 API 創建全面的策略。
流程將減輕措施通過電子郵件發送到指定的電子郵件地址。
如果設備分類為 2(可能對患者造成傷害的中風險醫療設備)且有短缺,流程將列出減輕步驟作為輸出。分類為 2 的設備不需要全面的減輕策略。我們建議在檢索的信息符合模型的上下文大小時使用這些。減輕措施直接從亞馬遜 S3 獲取。
如果設備分類為 1(對患者沒有重大風險的低風險設備)且有短缺,流程僅輸出短缺的詳細信息,因為無需採取行動。
解決方案概述
以下圖示說明了解決方案架構。該解決方案使用亞馬遜基石流程來協調生成式人工智慧工作流程。亞馬遜基石流程由節點組成,這是流程中的一步,並且有連接來連接各種數據來源或執行各種條件。
系統工作流程包括以下步驟:
用戶與生成式人工智慧應用程式互動,這些應用程式與亞馬遜基石流程連接。用戶提供有關設備的信息。
亞馬遜基石流程中的工作流程是一個包含名稱、描述、權限、節點集合和節點之間連接的構造。
亞馬遜基石流程中的 Lambda 函數節點用於調用 AWS Lambda 以獲取供應短缺和設備分類。AWS Lambda 根據來自亞馬遜 DynamoDB 的數據計算這些信息。
如果設備分類為 3,流程將查詢知識庫節點以查找減輕措施並創建全面計劃。亞馬遜基石護欄 (Amazon Bedrock Guardrails) 可以應用於知識庫節點。
亞馬遜基石流程中的 Lambda 函數節點調用另一個 Lambda 函數,將減輕計劃通過電子郵件發送給用戶。AWS Lambda 使用亞馬遜簡單電子郵件服務 (Amazon Simple Email Service, Amazon SES) SDK 向已驗證的身份發送電子郵件。
Lambda 函數位於亞馬遜虛擬私有雲 (Amazon Virtual Private Cloud, Amazon VPC) 的私有子網中,並使用角色和權限策略提供最低特權訪問服務。AWS Lambda 使用網關端點或 NAT 網關分別連接到亞馬遜 DynamoDB 或亞馬遜 SES。
如果設備分類為 2,流程查詢亞馬遜 S3 以獲取減輕措施。在這種情況下,不需要全面的減輕措施,並且可以適應模型上下文。這降低了整體成本並簡化了維護。
前置條件
在您可以構建解決方案之前,需要完成以下前置條件。
擁有 AWS 帳戶。
擁有一個具有私有子網和公共子網及出口互聯網訪問的亞馬遜 VPC。
此解決方案僅在美國東部 (N. Virginia) us-east-1 AWS 區域中受支持。您可以對 AWS CloudFormation 模板進行必要的更改,以部署到其他區域。
擁有創建 Lambda 函數和配置 AWS 身份與訪問管理 (IAM) 的權限。
擁有創建亞馬遜基石提示的權限。
在亞馬遜基石控制台上註冊模型訪問(有關更多信息,請參閱亞馬遜基石文檔中的模型訪問)。有關使用亞馬遜基石的定價信息,請參閱亞馬遜基石定價。對於這篇文章,我們使用的是 Anthropic 的 Claude 3.5 Sonnet,所有指示均適用於該模型。
啟用 AWS CloudTrail 日誌以進行操作和風險審計。
啟用預算政策通知,以保護客戶免受意外計費。
使用 AWS CloudFormation 控制台進行部署
在此步驟中,您將部署 CloudFormation 模板。
前往 CloudFormation 控制台 us-east-1
下載 CloudFormation 模板並上傳到指定模板中,然後選擇下一步。
輸入名稱,並填寫以下詳細信息,如下圖所示:
堆疊名稱
Fromemailaddress
Toemailaddress
VPCId
VPCCecurityGroupIds
VPCSubnets
保持其他值為默認。在最後一頁的能力下,選擇我承認 AWS CloudFormation 可能會創建 IAM 資源。選擇提交以創建 CloudFormation 堆疊。
在整個堆疊成功部署後,從資源標籤中記下以下輸出鍵值。您稍後需要它們。
BedrockKBQDataSourceBucket
Device2MitigationsBucket
KMSKey
這是一段用於非生產用途的示例代碼。在部署之前,您應該與您的安全和法律團隊合作,以符合您的組織安全、法規和合規要求。
上傳減輕文件到亞馬遜 S3
在此步驟中,您將減輕文件上傳到亞馬遜 S3。
下載設備 2 減輕策略文件
在亞馬遜 S3 控制台中,搜索之前捕獲的 Device2MitigationsBucket
將下載的文件上傳到該桶中
下載設備 3 減輕策略文件
在亞馬遜 S3 控制台中,搜索之前捕獲的 BedrockKBQDataSourceBucket
將這些文件上傳到 S3 桶中
配置亞馬遜基石知識庫
在本節中,您將創建一個亞馬遜基石知識庫並進行同步。
在亞馬遜基石知識庫中創建一個知識庫,以 BedrockKBQDataSourceBucket 作為數據來源。
為亞馬遜基石知識庫的服務角色添加內聯策略,以解密 AWS 密鑰管理服務 (AWS KMS) 密鑰。
與知識庫同步數據。
創建亞馬遜基石工作流程
在本節中,您將在亞馬遜基石流程中創建一個工作流程。
在亞馬遜基石控制台中,從左側導航窗格中選擇亞馬遜基石流程。選擇創建流程以創建流程,如下圖所示。
輸入流程的名稱和可選描述。
對於服務角色名稱,選擇創建並使用新服務角色為您創建服務角色。
選擇創建,如下圖所示。您的流程已創建,您將被帶到流程建構器,您可以在那裡構建您的流程。
亞馬遜基石流程配置
本節將介紹創建流程的過程。使用亞馬遜基石流程,您可以快速使用視覺化流程建構器構建複雜的生成式人工智慧工作流程。以下步驟將介紹配置業務流程的不同組件。
在亞馬遜基石控制台中,從左側導航窗格中選擇流程。
在亞馬遜基石流程中選擇一個流程
在流程建構器中選擇編輯。
在流程建構器部分,中央窗格顯示流程輸入節點和流程輸出節點,這是您流程的輸入和輸出節點。
選擇流程輸入
在左側菜單中配置,將輸出類型更改為對象,如下圖所示。
在流程建構器窗格中,選擇節點。
添加提示節點以處理傳入數據
提示節點定義了在流程中使用的提示。您使用此節點來細化 Lambda 處理的輸入。
拖動提示節點並將其放置在中央窗格中。
選擇您剛剛添加的節點。
在流程建構器窗格的配置部分,選擇在節點中定義。
定義以下值:
選擇模型並選擇 Anthropic Claude 3 Sonnet。
在消息部分添加以下提示:給定一個包含在描述標籤<desc> </desc>中的供應鏈問題描述,對設備和問題類型進行分類。僅以 JSON 對象的形式回應,格式如下:{ “device”: “<device_name>”, “problem_type”: “<problem_type>” } 設備類型包括但不限於:氧氣面罩、呼吸機、醫院病床、外科手套、除顫器、心臟起搏器 問題類型包括但不限於:短缺、故障、質量問題 如果提供了未知的設備類型,則對於任何字段回應未知<desc> {{description}}</desc>
在輸入部分,將輸入變量描述的表達式更改為以下內容,如下圖所示:
$.data.description
節點上的圓圈是連接點。要將提示節點連接到輸入節點,從流程輸入節點的圓圈拖動一條線到提示的輸入部分的圓圈。
通過雙擊刪除流程輸入節點和流程輸出節點之間的連接。以下視頻說明了第 6 和第 7 步。
添加 Lambda 節點以從數據庫獲取分類
Lambda 節點讓您調用 Lambda 函數,在其中定義執行業務邏輯的代碼。此解決方案使用 Lambda 節點來獲取短缺信息、設備分類、亞馬遜 S3 對象鍵和從知識庫檢索信息的指令。
通過拖動將 Lambda 節點添加到中央。
從節點的配置中,從下拉菜單中選擇名稱中包含 SupplyChainMgmt 的 Lambda 函數,如下圖所示。
將輸出類型更新為對象,如下圖所示。
將 Lambda 節點的輸入連接到提示節點的輸出。
添加條件節點以確定是否需要減輕措施
條件節點根據定義的條件將數據從前一個節點發送到不同的節點。條件節點可以接受多個輸入。此節點確定是否存在短缺並遵循相應的路徑。
通過拖動將條件節點添加到中央。
從條件節點的配置中,在輸入部分,使用以下詳細信息更新第一個輸入:
名稱:分類
類型:數字
表達式:$.data.classification
選擇添加輸入以添加新輸入,詳細信息如下:
名稱:短缺
類型:數字
表達式:$.data.shortage
將 Lambda 節點的輸出連接到條件節點的兩個輸入。
從條件節點的配置中,在條件部分,添加以下詳細信息:
名稱:Device2Condition
條件:(classification == 2)且(shortage >10)
選擇添加條件並輸入以下詳細信息:
名稱:Device3Condition
條件:(classification == 3)且(shortage >10)
將所有條件為假的圓圈連接到默認流程輸出輸入。
將 Lambda 節點的輸出連接到默認流程輸出輸入節點。
在默認流程輸出節點的配置中,將表達式更新為以下內容:
使用 S3 檢索節點獲取減輕措施
S3 檢索節點讓您從亞馬遜 S3 位置檢索數據以引入流程。此節點將直接從亞馬遜 S3 獲取類型 2 設備的減輕措施。
通過拖動將 S3 檢索節點添加到中央。
在節點的配置中,選擇名稱中包含 device2mitigationsbucket 的新創建的 S3 桶。
將輸入的表達式更新為以下內容:
$.data.S3instruction
將條件節點的 Device2Condition 條件的圓圈連接到 S3 檢索。
將 Lambda 節點的輸出連接到 S3 檢索的輸入。
通過拖動將流程輸出節點添加到中央。
在節點的配置中,給該節點命名
將 S3 檢索節點的輸出連接到 S3Output 節點。
使用知識庫節點獲取減輕措施
知識庫節點讓您從亞馬遜基石知識庫發送查詢。此節點將為類型 3 設備從亞馬遜基石知識庫獲取全面的減輕策略。
通過拖動將知識庫節點添加到中央。
從知識庫節點的配置中,選擇之前創建的知識庫。
選擇根據檢索結果生成回應,並從下拉菜單中選擇 Claude 3 Sonnet。
在輸入部分,將輸入表達式更新為以下內容:
表達式:$.data.retrievalQuery
將條件節點的 Device3Condition 條件的圓圈連接到知識庫節點
將知識庫節點的輸出連接到 Lambda 節點的輸入,名稱為 codeHookInput。
通過拖動將流程輸出節點添加到中央。
在節點的配置中,給該節點命名為 KBOutput。
將知識庫節點的輸出連接到 KBOutput 節點
通過拖動將 Lambda 節點添加到中央。
從節點的配置中,選擇名稱中包含 EmailReviewersFunction 的 Lambda 函數從下拉菜單中選擇。
選擇添加輸入以添加新輸入,詳細信息如下:
名稱:電子郵件
類型:字符串
表達式:$.data.email
將輸出類型更改為對象。
將知識庫的輸出連接到新的 Lambda 節點輸入,名稱為 codeHookInput。
將流程輸入節點的輸出連接到新的 Lambda 節點輸入,名稱為 email。
通過拖動將流程輸出節點添加到中央。
在電子郵件輸出流程輸出節點的配置中,更新表達式為以下內容:
將 Lambda 節點的輸出連接到電子郵件輸出流程輸出節點
選擇保存以保存流程。
測試
要測試代理,請使用亞馬遜基石流程建構器控制台。您可以將 API 調用嵌入到您的應用程式中。
在新創建的流程的測試窗口中,給出以下提示,將「收件人電子郵件地址」替換為 CloudFormation 模板中提供的 Toemail。{“description”: “耳蝸植入物短缺 “,”retrievalQuery”:”查找設備短缺的減輕措施”, “email”: “<收件人電子郵件地址>”}
供應鏈管理 Lambda 隨機生成短缺。如果檢測到短缺,您將看到來自亞馬遜基石知識庫的回應。
也會將電子郵件發送到上下文中提供的電子郵件地址。
測試分類為 2 的設備,給出以下提示。將收件人電子郵件地址替換為 CloudFormation 模板中提供的 Toemail。{“description”: “氧氣面罩短缺 “,”retrievalQuery”:”查找設備短缺的減輕措施”, “email”: “<收件人電子郵件地址>”}
流程將直接從亞馬遜 S3 獲取結果。
清理
為了避免未來產生費用,請刪除您創建的資源。要清理 AWS 環境,請使用以下步驟:
清空您作為 CloudFormation 堆疊的一部分創建的 S3 桶的內容。
從亞馬遜基石中刪除流程。
刪除亞馬遜基石知識庫。
刪除您創建的 CloudFormation 堆疊。
結論
在我們面對越來越不可預測的全球商業環境時,預測和應對供應鏈中斷的能力不僅是競爭優勢——它是生存的必要條件。亞馬遜基石 (Amazon Bedrock) 套件的生成式人工智慧工具為組織提供了將供應鏈管理從被動轉變為主動、從分散轉變為整合、從僵化轉變為靈活的能力。
通過實施本指南中概述的解決方案,組織可以:
建立自動化的智能監控系統
創建預測性風險管理框架
使用人工智慧驅動的見解進行更快的決策
發展隨著新挑戰而演變的適應性供應鏈策略
隨時了解生成式人工智慧的最新進展,並開始在 AWS 上構建。如果您需要有關如何開始的幫助,請查看生成式人工智慧創新中心。
關於作者
Marcelo Silva 是亞馬遜網路服務 (Amazon Web Services) 的首席產品經理,負責亞馬遜基石知識庫和亞馬遜 Lex 的策略和增長。
Sujatha Dantuluri 是 AWS 美國聯邦公民團隊的高級解決方案架構師。她專注於設計關鍵任務解決方案,並與客戶密切合作以確保他們的成功。Sujatha 是一位出色的公共演講者,經常在行業活動和會議上分享她的見解和知識。
Ishan Gupta 是亞馬遜基石 (Amazon Bedrock) 的軟體工程師,專注於開發尖端的生成式人工智慧應用。他的興趣在於探索大型語言模型的潛力,並創造利用人工智慧力量的創新解決方案。
本文由 AI 台灣 運用 AI 技術編撰,內容僅供參考,請自行核實相關資訊。
歡迎加入我們的 AI TAIWAN 台灣人工智慧中心 FB 社團,
隨時掌握最新 AI 動態與實用資訊!