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》中深入討論。