View a markdown version of this page

設計無伺服器 AI 架構 - AWS 方案指引

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

設計無伺服器 AI 架構

將無伺服器 AI 的原則轉換為真實世界系統需要深思熟慮的架構。目標是將鬆散耦合 AWS 服務 到模組化的智慧型管道,以彈性擴展並即時回應。

本節提供有關如何使用無 AWS 伺服器服務組合雲端原生 AI 系統的規範性指導,包括生成式 AI 協同運作、即時推論和邊緣運算。每個架構模式對應於常見的企業使用案例,以確保相關性和適用性。

本節內容

基礎架構模式

在傳統的事件驅動型應用程式架構中,系統分為四個邏輯層,可解耦問題,同時實現可擴展性和回應能力。在最上層,應用程式層會處理使用者互動、APIs和 UI 事件,通常會在系統中觸發特定網域的事件。在其下,協同運作層會使用狀態機器或無伺服器工作流程等工具來管理工作流程、業務規則和事件排序。服務層包含模組化、可重複使用的函數或微型服務,可回應事件並執行核心邏輯。在基礎上,資料層負責持久性、串流和事件來源。資料層利用資料庫、物件存放區或事件日誌等服務來發出和使用變更事件。這些層共同支援鬆散耦合、可擴展且可維護的架構,其中事件推動整個堆疊的流程。

無伺服器 AI 系統也同樣由鬆耦合的事件驅動服務組成,可獨立擴展、發展和復原。若要以一致性和可擴展性設計這些系統,請務必將架構檢視為五個不同的層。每個 layer 都提供特定的 函數,並直接映射到專門建置的 AWS 服務。下圖顯示每個圖層。

傳統 AI 架構系統的邏輯層與無伺服器 AI 架構系統之間的關係。

這五個層構成藍圖,用於建置彈性、可觀測且針對成本和效能最佳化的智慧型事件驅動型應用程式。

事件觸發或界面層

事件觸發或界面層是無伺服器 AI 系統的進入點。它會擷取使用者互動、系統事件或資料變更,並將它們作為結構化事件發射到架構中。它啟用非同步協同運作,並從下游處理邏輯分離上游輸入。

事件觸發層的責任包括下列項目:

  • 擷取使用者動作,例如點選、訊息和上傳

  • 發出網域事件或變更通知

  • 標準化傳入資料以供下游使用

AWS 服務 通常用於此層的 包括下列項目:

範例:透過 Web 表單提交的客戶支援請求會觸發 EventBridge 規則,在下游啟動 Amazon Bedrock 代理程式工作流程。

處理層

處理層會在資料傳遞至 AI 模型之前轉換或擴充資料。它會使用查詢資料表或外部 APIs 來處理預先處理任務,例如輸入驗證、格式化、中繼資料標記、語言偵測和資料擴充。

處理層的責任包括下列項目:

  • 驗證和標準化原始輸入。

  • 擷取或插入中繼資料,例如語言和客戶 ID。

  • 以資料屬性為基礎的路由或分支邏輯。

AWS 服務 通常用於此層的 包括下列項目:

範例:上傳的保險宣告會在 AI 摘要之前使用 Lambda 和 Amazon Comprehend 掃描個人身分識別資訊 (PII) 和文件類型。

推論層

作為 AI 系統的核心,推論層會執行機器學習 (ML) 或基礎模型 (FM) 推論。視使用案例而定,它可能包含一或多個模型 — 生成、預測或分類。

推論層的責任包括下列項目:

  • 執行 ML 或 FM 模型推論。

  • 產生預測、分類或產生的內容。

  • 在適用的情況下整合擷取增強產生 (RAG) 內容。

AWS 服務 通常用於此層的 包括下列項目:

範例:Amazon Bedrock 代理程式使用 Amazon Nova Pro 產生複雜支援查詢的回應,以使用 RAG 的企業知識為基礎。

後製處理或決策層

後製處理或決策層會精簡或處理推論結果。它可以格式化回應、日誌輸出、叫用下游動作,或根據模型可信度、分類或外部業務規則做出決策。

後製處理或決策層的責任包括下列項目:

  • 為下游系統或顯示器格式化 AI 輸出。

  • 觸發條件式邏輯或呼叫 APIs。

  • 路由豐富的資料以進行儲存或分析。

AWS 服務 通常用於此層的 包括下列項目:

  • Lambda 可以格式化結果、套用轉換或呼叫 APIs。

  • Amazon Simple Notification Service (Amazon SNS) 和 EventBridge 會根據模型輸出發出進一步的事件。

  • Step Functions 會套用鏈結邏輯,例如,如果情緒等於「憤怒」,請呈報支援案例。

範例:LLM 的產品建議會先使用 Lambda 函數針對即時庫存進行交叉驗證,再將建議傳送給使用者。

輸出或儲存層

最後,輸出或儲存層會處理將結果交付至使用者或系統,並保留結構化輸出以進行稽核、分析或回饋迴圈。

輸出或儲存層的責任包括下列項目:

  • 透過 APIs或 UIs 將 AI 結果傳回給最終使用者。

  • 持續結構化輸出和日誌。

  • 饋送至資料湖或重新訓練管道。

AWS 服務 通常用於此層的 包括下列項目:

  • Amazon S3 存放推論日誌、摘要或產生的內容。

  • Amazon DynamoDB 為工作階段特定的 AI 輸出提供低延遲金鑰值儲存。

  • Amazon OpenSearch Service 為搜尋和分析提供索引結構化輸出。

  • API Gateway 和 WebSocket APIs為前端或行動用戶端提供傳回回應。

範例:Amazon Bedrock 產生的法律文件摘要存放在 Amazon S3 中,並在 OpenSearch Service 中編製索引,以啟用語意企業搜尋。

跨層的設計考量事項

下列關鍵設計考量事項和模式適用於所有架構層:

  • 彈性 – 每個 layer 都應獨立失敗並重試 (例如 Lambda 上的無效字母佇列 (DLQs))。

  • 觀測性 – 將結構化日誌、追蹤和指標從每個階段傳送至 Amazon CloudWatch,以偵測行為偏離。

  • 安全性 – 使用 AWS Identity and Access Management(IAM) 角色分離和 AWS Key Management Service(AWS KMS) 進行跨層的資料加密。

  • 成本最佳化 – 盡可能使用非同步執行,並選擇適當大小的模型。

  • 可擴展性 – 模組化設計允許獨立取代或升級服務。

這五個層形成模組化、可擴展且無伺服器的參考架構,適用於採用 AI 技術的工作負載 AWS。每個 layer 都可以獨立開發、部署和最佳化,實現快速反覆運算、卓越營運,以及明確區隔業務領域之間的疑慮。

透過使用此分層模式做為設計支架,企業可以標準化無伺服器 AI 的方法,並自信地加速從原型到生產的路徑。

架構設計考量事項

上的無伺服器 AI 架構 AWS 可讓您建置模組化、可擴展且生產等級的智慧型應用程式。無論您是在邊緣部署模型、協調多步驟推論管道,還是建置生成式 AI 助理, AWS 服務 都可以為新一代 AI 原生應用程式提供支援。

設計無伺服器 AI 架構時,請記住下列關鍵設計重點和最佳實務:

  • 安全性 – 使用精細的 IAM 角色、加密提示和輸出,以及限制 API 存取。

  • 觀測性 – 整合每個管道階段的 CloudWatch AWS X-Ray、 和自訂日誌。

  • 可擴展性 – 僅使用無伺服器元件,例如 Lambda、Amazon Bedrock 和 SageMaker Serverless Inference。

  • 延遲 – 利用 Lambda@Edge、佈建並行或非同步推論。

  • 模組化 – 使用事件觸發條件和每個任務的隔離函數來設計管道。

  • 可重複使用性 – 參數化提示、使用共用 Lambda 層,以及使用 Step Functions 解耦邏輯。