AI News HubLIVE
站內改寫2 分鐘閱讀

構建生成式AI平臺

本文基於對多家公司部署生成式AI應用的研究,總結了一個通用平臺架構。從最簡單的查詢-響應模型開始,逐步新增元件:上下文增強(RAG、查詢重寫)、防護欄(輸入/輸出)、模型路由與閘道器、快取最佳化、複雜邏輯與寫入操作,以及可觀測性與編排。每個元件的設計權衡和實現考量均有詳細討論。

本文作者透過研究多家公司部署生成式AI應用的方式,發現其平臺存在許多共同點。文章從最簡單的架構開始,逐步新增元件,最終構建出一個完整的生成式AI平臺。

最簡單的形式是:應用接收查詢並將其傳送給模型,模型生成響應返回給使用者,沒有任何防護欄、增強上下文或最佳化。然而,實際應用需要更多功能。

第一步:增強上下文 平臺的首要擴充套件通常是新增機制,讓系統為每個查詢補充必要資訊,即上下文構建。最常見的模式是RAG(檢索增強生成),它由生成器(語言模型)和檢索器(從外部源檢索相關資訊)組成。檢索可以採用基於術語的方法(如BM25、Elasticsearch)或基於嵌入的方法(向量搜尋,如FAISS)。生產系統通常結合多種方法,形成混合搜尋(hybrid search)。此外,對於表格資料,可採用Text-to-SQL流程;而網路搜尋則賦予模型訪問網際網路最新資訊的能力,形成Agentic RAG。查詢重寫(query rewriting)是提高檢索準確性的關鍵,通常由另一AI模型完成。

第二步:新增防護欄 防護欄有助於降低AI風險,保護使用者和開發者。輸入防護主要防止敏感資訊洩露和模型越獄(jailbreaking)。輸出防護則評估生成質量並處理失敗模式,如空響應、格式錯誤、有害內容、幻覺、敏感資訊洩露等。失敗管理包括重試邏輯、並行呼叫和人工兜底。防護欄的引入需要在可靠性與延遲之間權衡,也要考慮自託管與第三方API的選擇。

第三步:新增模型路由與閘道器 隨著應用複雜度增加,需要管理多個模型。路由器根據意圖分類將不同查詢分派給專用模型,以提升效能和節約成本。模型閘道器為所有模型提供統一介面,便於程式碼維護,並實現訪問控制、成本管理、負載均衡和故障切換。許多現成的閘道器如Portkey、MLflow AI Gateway等可直接使用。

第四步:快取降低延遲 快取是常被低估但效果顯著的元件。提示快取(prompt cache)複用重疊文本段(如系統提示),顯著減少處理量。精確快取(exact cache)儲存已處理結果,避免重複計算。語義快取(semantic cache)允許相似查詢複用結果,但依賴高質量嵌入和相似度閾值,實施風險較高。快取可應用於向量搜尋、推理等多個環節。

第五步:新增複雜邏輯與寫入操作 應用流程可包含迴圈和條件分支,模型輸出可反饋給自身以迭代細化(如規劃旅行行程)。寫入操作(如傳送郵件、更新資料庫)使系統能力大幅提升,但也帶來安全風險,必須防範提示注入(prompt injection)等攻擊。需要在系統能力與安全之間取得平衡。

可觀測性與編排 可觀測性應從專案初期就整合,包括指標、日誌和追蹤三大支柱。指標涵蓋系統指標和模型指標(如延遲、令牌數、錯誤率),日誌應記錄一切,追蹤則呈現請求的完整執行路徑。編排工具(如LangChain、LlamaIndex)幫助定義元件並連結成管道,但應避免過早引入,以免增加複雜性。

總之,文章從基礎架構出發,逐步新增元件以應對不斷增長的複雜性。每個元件都有其利弊,需要仔細權衡。文章還指出,許多細節(如模型評估、提示工程、微調)將在作者的新書《AI Engineering》中深入討論。