Amazon Bedrock 架構——基礎模型、Agents、Guardrails 和 Knowledge Bases
1. Amazon Bedrock 概覽
Amazon Bedrock 是一項完全託管的服務,透過單一 API 提供來自多個供應商的 FM 存取權限,以及自訂、部署和保護 AI 應用程式的工具。
1.1. 核心價值主張
- 選擇:存取來自 Amazon、Anthropic、Meta、Mistral、Cohere、Stability AI、AI21 Labs 的 FM
- 自訂:微調、持續預訓練、RAG(Knowledge Bases)
- 安全:資料保留在你的 AWS 帳戶中、加密、不用於訓練模型
- 無伺服器:無需管理基礎設施
- 整合:原生 AWS 服務整合(IAM、CloudWatch、CloudTrail)
1.2. Bedrock 上的基礎模型供應商
| 供應商 | 模型 | 優勢 |
|---|---|---|
| Amazon | Titan Text、Titan Embeddings、Titan Image Generator | 通用、嵌入、圖像生成 |
| Anthropic | Claude 3 Haiku、Sonnet、Opus | 複雜推理、分析、視覺 |
| Meta | Llama 2、Llama 3 | 開源、可自訂 |
| Mistral AI | Mistral、Mixtral | 快速、高效、多語言 |
| Cohere | Command、Embed | 企業文字、多語言嵌入 |
| Stability AI | Stable Diffusion XL | 圖像生成 |
| AI21 Labs | Jurassic | 文字生成、摘要 |
2. Bedrock 功能深度剖析
2.1. Amazon Bedrock Agents
Agents 允許 FM 執行多步驟任務,自動規劃、執行操作和使用工具。
使用者:「預訂下週五從河內到東京的機票」
Agent 工作流程:
1. 規劃:需要搜尋航班、檢查可用性、預訂
2. 操作:呼叫航班搜尋 API → 找到可用航班
3. 觀察:找到 3 個航班,最便宜的是 $450
4. 操作:呼叫預訂 API → 預訂航班
5. 回應:「已預訂 VN 航班 HAN→NRT,12 月 20 日,$450」
Agent 組件:
| 組件 | 用途 |
|---|---|
| 基礎模型 | 負責推理和規劃的大腦 |
| 指令 | 定義 agent 角色的系統提示 |
| 動作群組 | Agent 可呼叫的 API(Lambda 函數或 OpenAPI schema) |
| Knowledge Bases | 用於資訊檢索的 RAG 資料來源 |
| Guardrails | 安全和合規過濾器 |
考試提示:「一個 AI 助手需要查詢訂單狀態、檢查庫存和處理退貨」→ Bedrock Agent 搭配連接到業務 API 的動作群組。
2.2. Amazon Bedrock Guardrails
Guardrails 為 AI 應用程式實施安全控制:
| Guardrail 類型 | 功能 | 範例 |
|---|---|---|
| 內容過濾器 | 封鎖有害內容類別 | 仇恨、暴力、色情、侮辱 |
| 禁止主題 | 封鎖特定主題 | 「不要討論競爭對手的產品」 |
| 詞彙過濾器 | 封鎖特定字詞/片語 | 不雅用語、禁用術語 |
| PII 過濾器 | 偵測和遮蔽 PII | 社會安全號碼、信用卡號碼、電子郵件 |
| 上下文基礎 | 檢查回應是否基於上下文 | 防止 RAG 中的幻覺 |
Guardrails 流程:
使用者輸入 → [輸入 Guardrails] → FM 處理 → [輸出 Guardrails] → 使用者
檢查: 檢查:
- 禁止主題 - 有害內容
- 有害輸入 - 回應中的 PII
- 輸入中的 PII - 偏離主題的回應
- 基礎檢查
2.3. 模型評估
為你的特定用途比較和評估 FM:
- 自動評估:BERTScore、準確性、毒性指標
- 人工評估:人類審查員根據自訂標準評分
- A/B 比較:模型並排比較
- 自訂任務:上傳你自己的測試資料集
2.4. Bedrock 遊樂場
| 遊樂場 | 用途 |
|---|---|
| 文字遊樂場 | 互動式測試文字模型 |
| 聊天遊樂場 | 測試對話式模型 |
| 圖像遊樂場 | 測試圖像生成模型 |
3. Amazon PartyRock
PartyRock 是 Bedrock 的免費、無程式碼遊樂場——讓任何人都能在不需要 AWS 帳戶或程式設計技能的情況下建立生成式 AI 應用程式。
| 功能 | 詳情 |
|---|---|
| 不需要 AWS 帳戶 | 使用社群登入免費使用 |
| 無需程式設計 | 拖放式應用程式建構器 |
| 可分享 | 透過 URL 分享應用程式 |
| 用途 | 學習、原型設計、實驗 |
考試提示:「一個非技術的行銷團隊想要在沒有 AWS 帳戶的情況下實驗生成式 AI」→ PartyRock。
4. Amazon Q
4.1. Amazon Q Developer
為開發者設計的 AI 程式設計助手:
- 程式碼生成:從自然語言撰寫程式碼
- 程式碼解說:解釋現有程式碼
- 程式碼轉換:升級 Java 版本、.NET 遷移
- 除錯:識別和修復錯誤
- 安全掃描:找出程式碼中的漏洞
- IDE 整合:VS Code、JetBrains、AWS Console
4.2. Amazon Q Business
為企業使用者設計的 AI 助手:
- 連接企業資料:S3、SharePoint、Confluence、Salesforce 等
- 基於公司資料的問答:根據連接的資料來源回答
- 尊重存取控制:來自連接系統的 ACL
- 外掛:建立工單(Jira)、發送電子郵件等
4.3. Amazon Q vs Bedrock
| 功能 | Amazon Q | Amazon Bedrock |
|---|---|---|
| 目標使用者 | 終端使用者(開發者、企業) | 建構 AI 應用程式的開發者 |
| 自訂 | 有限(連接資料來源) | 完整(微調、RAG、agents) |
| 託管 | 完全託管的助手 | FM 的 API/SDK 存取 |
| 用途 | 生產力工具 | 建構自訂 AI 應用程式 |
5. Bedrock 定價模式
| 定價模式 | 運作方式 | 最適用於 |
|---|---|---|
| 隨需 | 按輸入/輸出 token 計費 | 流量不穩定、不可預測的工作負載 |
| 佈建輸送量 | 預留模型單位(按小時) | 穩定的生產工作負載 |
| 批次推理 | 提交批次作業(最多便宜 50%) | 大規模、非即時處理 |
考試提示:「具有可預測流量的生成式 AI 工作負載成本最佳化?」→ 佈建輸送量。「一夜之間處理數千份文件?」→ 批次推理。
6. 如何選擇合適的 FM
決策框架:
┌─────────────────────────────────────────────────┐
│ 1. 任務類型 │
│ 文字?圖像?程式碼?多模態? │
├─────────────────────────────────────────────────┤
│ 2. 複雜度 │
│ 簡單分類 → 較小的模型 │
│ 複雜推理 → 較大的模型 │
├─────────────────────────────────────────────────┤
│ 3. 延遲需求 │
│ 即時 → 較小/較快的模型 (Haiku) │
│ 批次處理 → 較大的模型 (Opus) │
├─────────────────────────────────────────────────┤
│ 4. 成本限制 │
│ 預算有限 → 較小的模型 │
│ 品質優先 → 較大的模型 │
├─────────────────────────────────────────────────┤
│ 5. 自訂需求 │
│ 需要微調?檢查支援的模型 │
│ LoRA?檢查相容性 │
├─────────────────────────────────────────────────┤
│ 6. 使用 Model Evaluation 評估 │
│ 並排測試候選模型 │
└─────────────────────────────────────────────────┘
7. 其他 AWS 生成式 AI 服務
| 服務 | 功能 |
|---|---|
| Amazon CodeWhisperer | 現為 Amazon Q Developer 的一部分(程式碼建議) |
| AWS App Studio | 用自然語言建構企業應用程式 |
| Amazon SageMaker JumpStart | 使用 SageMaker 部署開源 FM |
| Amazon Comprehend | NLP 服務(情感、實體、主題——預建) |
| Amazon Transcribe | 語音轉文字 |
| Amazon Polly | 文字轉語音 |
| Amazon Translate | 機器翻譯 |
| Amazon Rekognition | 圖像/影片分析 |
| Amazon Textract | 從文件擷取文字(OCR+) |
8. 練習題
Q1:一家零售公司想建立一個 AI 助手,可以檢查庫存、處理退貨,以及從產品目錄回答產品問題。他們應該使用哪個 Amazon Bedrock 功能?
- A) Bedrock Guardrails
- B) 僅 Bedrock Knowledge Bases
- C) Bedrock Agents 搭配動作群組和 Knowledge Bases ✓
- D) Bedrock Model Evaluation
解說:Bedrock Agents 可以透過呼叫 API(用於庫存/退貨的動作群組)和檢索資訊(用於產品目錄的 Knowledge Bases)來協調多步驟任務。
Q2:哪個 Amazon Bedrock 功能應該用來防止生成式 AI 應用程式討論競爭對手的產品,並過濾個人身份資訊(PII)?
- A) Bedrock Knowledge Bases
- B) Bedrock Custom Models
- C) Bedrock Guardrails ✓
- D) Bedrock Agents
解說:Guardrails 提供禁止主題過濾(封鎖競爭對手討論)和 PII 偵測/遮蔽。它們可以同時應用於 FM 呼叫的輸入和輸出。
Q3:一家公司想在一夜之間使用基礎模型處理 50,000 則客戶評論進行情感分析。哪種 Bedrock 定價模式最具成本效益?
- A) 隨需定價
- B) 佈建輸送量
- C) 批次推理 ✓
- D) 免費方案
解說:批次推理專為大規模、非即時工作負載設計,與隨需定價相比可節省高達 50% 的成本。非常適合夜間處理。