
1. 從“為誰服務”的困惑談起最近和幾個做AI應用的朋友聊天發現一個挺有意思的現象。大家熱火朝天地討論著各種Agent框架從LangChain、AutoGPT到LlamaIndex再到國內外的各種新秀技術選型能聊一下午。但當我問到一個更根本的問題“你們折騰的這套Infra基礎設施最終是為誰服務的是給老板看的PPT是技術團隊的玩具還是真正能讓終端用戶感知到價值的智能體” 現場往往會沉默幾秒。這不是一個技術問題而是一個產品與工程思維的原點問題。在Agent概念席卷而來的時代我們很容易陷入一種“技術軍備競賽”的幻覺忙著堆砌最炫的框架、接入最強的模型、設計最復雜的工作流卻忘了回頭看看這一切的基石——Infra究竟因何而建。你可能會說Infra不就是為Agent本身服務的嗎確保它穩定、高效、可擴展地運行。這話沒錯但只說對了一半。這就像說汽車工廠是為生產線服務的而不是為最終買車的用戶服務的。一個只為“運行”而存在的Infra很容易變成一個昂貴、復雜且脆弱的技術堆棧它可能擁有漂亮的監控面板和優雅的微服務架構但其上的Agent卻笨拙、低效無法解決真實場景下的問題。真正的挑戰在于我們需要構建的是一種“用戶價值導向”的基礎設施。這意味著從設計的第一天起每一個技術決策——從模型選型、記憶設計到工具調用、狀態管理——都要不斷地追問這個設計是讓最終使用Agent的人可能是客服、分析師、普通消費者任務完成得更順暢還是僅僅讓我們開發者自己感覺更“高科技”舉個例子很多團隊在搭建Agent時會優先追求“全能”給Agent裝備上搜索引擎、代碼解釋器、文檔分析等一大堆工具Skills認為能力越多越強。這對應的Infra就需要處理復雜的工具路由、權限校驗和沖突解決。但如果你的Agent核心場景只是幫用戶從內部知識庫中精準提取合同條款那么一個花哨的、支持上百種工具的Infra其大部分復雜性都成了負擔反而拖累了核心檢索鏈路的穩定性和速度。你的Infra本質上是在為你Agent的“核心價值主張”而建。偏離了這一點再精美的架構也是空中樓閣。2. 拆解Agent Infra的四個核心服務對象要回答“為誰而建”我們必須先厘清Agent生態中的不同角色。一個典型的Agent系統至少涉及四方利益相關者你的Infra需要同時、但以不同優先級滿足他們的需求。2.1 終極用戶體驗與效率的沉默裁判這是最容易被Infra團隊忽視卻又是最終的“買單者”。終端用戶不關心你用的是ReAct還是Plan-and-Execute范式也不關心你的向量數據庫是Pinecone還是Milvus。他們只關心三件事任務能不能完成完成得準不準過程快不快為“任務完成”而建Infra必須保證Agent的可用性與可靠性。這意味著需要健壯的錯誤處理機制。例如當調用外部API失敗時Infra不能直接讓Agent崩潰或返回一個晦澀的技術錯誤而應該設計降級策略。比如一個訂票Agent在調用航班接口失敗時Infra可以支撐Agent轉向回復“目前實時航班查詢暫時不可用但我可以根據歷史數據為您推薦幾個常見時段的選擇或者您可以直接告訴我您的偏好我為您生成一個備選方案” 這背后需要Infra提供可配置的失敗重試、備用工具鏈、優雅的上下文回復模板等一系列支持。為“結果準確”而建這直接指向Infra的“認知”能力支撐。用戶無法忍受一個胡說八道的Agent。Infra需要通過精心設計的數據管道和驗證層來保障。例如檢索增強生成RAG的質量你的向量檢索Infra是否支持多路召回、重排序是否考慮了查詢改寫、上下文窗口的智能截斷當用戶問“上季度華東區銷售表現”Infra能否自動將查詢拆解為“財務數據”、“華東區”、“Q1 2024”等維度并從正確的數據源中檢索工具調用的精確性當Agent需要執行“發送郵件給項目組核心成員”時Infra提供的工具調用層是否能準確解析出“項目組”對應的郵件列表并處理好收件人權限這需要Infra集成身份系統、提供清晰的功能描述Tool Description給LLM并設計嚴格的參數驗證與執行確認流程。為“過程快速”而建延遲是體驗殺手。一個需要思考10秒才能回復下一句的對話Agent幾乎不可用。Infra必須在性能上做深度優化流式響應這是基礎要求。Infra需要支持將LLM生成的內容以流Stream的形式實時推送給前端讓用戶看到Agent“思考”的過程心理等待時間會大大縮短。異步與并行如果Agent需要同時查詢天氣、日歷和交通信息Infra是否支持并行調用這些工具還是傻傻地串行執行一個支持有向無環圖DAG的任務編排引擎能顯著降低端到端延遲。緩存策略對于頻繁且結果不變的查詢如“公司的年假政策是什么”Infra應在LLM調用層和工具調用層設計多層緩存避免重復計算和網絡請求。為終端用戶服務的Infra其成功標準是“無感”。當用戶覺得事情自然、順暢地辦成了你的Infra就做到了最好。2.2 Agent開發者生產力與靈活性的天平開發者是Infra的直接使用者。他們的核心訴求是用盡可能少的代碼、盡可能快的方式構建出強大且可靠的Agent。Infra對他們而言應該是一個“能力增強平臺”而非“約束框架”。為“降低認知負擔”而建優秀的Infra應該封裝復雜性。例如提供一個統一的AgentSession類內部自動處理對話歷史的管理、token的計數與截斷、上下文窗口的滑動。開發者只需session.add_message(“user”, “你好”)而不需要自己維護一個列表并時刻擔心超出模型限制。為“快速集成與調試”而建工具Skill的熱插拔Infra應提供標準的工具定義、注冊和發現機制。開發者想新增一個“生成圖表”的技能應該只需要寫一個符合接口的函數并用裝飾器注冊即可無需修改核心調度邏輯。可視化的調試與追蹤這是目前很多開源框架的短板。一個強大的Infra應該提供像“LangSmith”那樣的可觀測性平臺讓開發者能清晰地看到一次Agent調用中LLM收到了什么提示詞每一步的思考Chain-of-Thought是什么調用了哪個工具輸入輸出為何耗時多少這能極大降低調試成本。你的Infra至少應該能輸出結構化的日志并易于接入APM系統。提示詞Prompt管理將硬編碼在代碼中的提示詞抽離出來通過Infra提供版本化、環境化的管理。開發者可以方便地A/B測試不同版本的提示詞對Agent效果的影響。為“靈活的策略配置”而建不同的Agent需要不同的“性格”和策略。Infra應該提供配置化的策略選擇。例如推理策略是讓LLM一步步思考ReAct還是先規劃再執行Plan-and-Execute記憶策略是只用短期對話記憶還是結合向量數據庫的長期記憶記憶的摘要和提取方式如何回退策略當主要模型如GPT-4調用失敗或超時是否自動降級到備用模型如Claude或本地模型為開發者服務的Infra其成功標準是“愉悅”。開發者覺得順手、高效、可控他們才愿意在此基礎上進行深度創新。2.3 運營與業務方可度量、可運營、可迭代Agent上線不是終點而是起點。業務方需要知道Agent的效果和成本運營團隊需要持續優化它。Infra必須為“運營”而生。為“可度量”而建Infra需要內置一套核心指標Metrics采集體系。這不僅僅是技術指標如QPS、延遲、錯誤率更重要的是業務指標任務完成率用戶意圖被成功解決的比例。這可能需要設計一些端到端的評估流程或依賴用戶反饋如點贊/點踩。對話輪次平均完成一個任務需要多少輪對話輪次減少通常意味著Agent效率提升。工具調用準確率Agent發起的工具調用中參數正確、執行成功的比例。成本每次對話消耗的Token數、調用的外部API費用。Infra需要能按會話、按用戶、按時間段進行成本歸因。為“可干預”而建再聰明的Agent也會出錯或遇到新情況。Infra需要提供“人工介入”的通道。例如人工接管Human-in-the-loop當Agent置信度低于某個閾值或觸發了某些關鍵操作如確認支付時Infra應能無縫將對話轉接給人工客服并將之前的上下文完整傳遞。知識庫快速更新當業務規則變化時運營人員能否通過一個管理后臺直接上傳新的文檔或QA對而無需等待開發發版這要求Infra的RAG模塊支持實時或近實時的索引更新。為“可迭代”而建Infra應支持A/B測試和灰度發布。你可以讓10%的用戶使用新版本的提示詞或新集成的工具對比其與老版本在核心指標上的差異。數據驅動迭代是Agent進化的唯一路徑。為運營服務的Infra其成功標準是“透明”。所有過程和結果都應是可觀測、可分析、可操作的。2.4 系統自身穩定、安全與成本最后Infra必須為自己而建——確保自身的可持續性。這是一個經典的“非功能性需求”領域卻決定了Agent系統能走多遠。為“穩定”而建高可用架構、容錯設計、限流熔斷、災難恢復預案。特別是對于重度依賴外部LLM API和各類第三方工具的場景必須假設它們是不可靠的。Infra需要有服務降級、請求重試、故障隔離的能力。為“安全”而建這是紅線尤其在企業級場景。數據泄露確保用戶對話數據、通過Agent查詢的內部文檔不會被泄露給LLM服務商或第三方工具。這可能意味著需要對出境數據進行清洗或使用本地化模型。提示詞注入Prompt InjectionInfra需要在Agent調用LLM前對用戶輸入進行必要的清洗和檢測防止用戶輸入惡意指令劫持Agent行為。工具濫用嚴格控制Agent的工具調用權限。一個內部數據分析Agent絕不能擁有刪除數據庫或發送全員郵件的權限。Infra需要實現細粒度的工具權限管控。為“成本”而建LLM API調用是核心成本。Infra需要實施精細化的成本控制緩存對常見、結果確定的查詢進行緩存。模型路由根據查詢的復雜度智能路由到不同成本的模型。簡單問答用便宜的gpt-3.5-turbo復雜推理再用gpt-4。Token優化自動精簡上下文、對歷史對話進行智能摘要以減少不必要的Token消耗。為系統自身服務的Infra其成功標準是“堅如磐石”。它默默無聞但一旦出現問題便是全局性的災難。3. 構建價值導向型Agent Infra的實踐路徑理解了為誰而建接下來就是如何建。這不是一蹴而就的而是一個從核心到外圍、持續演進的旅程。3.1 第一步定義最小價值單元MVU從“單點極致”開始不要一開始就夢想構建一個支持所有Agent類型的通用平臺。你的第一個目標應該是圍繞一個最核心、最明確的用戶場景打造一個體驗極致的單一Agent并為其構建剛剛好夠用的Infra。如何找到MVU問幾個問題當前業務中哪個重復、規則清晰、但耗時的手工任務最多哪個崗位的員工最需要“智能助理”例如可能是“幫銷售快速從CRM和產品手冊中提取信息生成客戶方案草稿”或者是“幫客服自動總結通話記錄并填寫工單”。Infra的對應形態這個階段的Infra可以極其簡單。它可能就是一個腳本集成了LangChain等框架連接了1-2個必要的工具如內部知識庫檢索、文檔生成并部署在一個簡單的云函數上。它的核心使命是驗證Agent在這個場景下的價值假設用戶是否愿意用效率是否真提升。此時Infra不需要考慮多租戶、高并發、復雜的可觀測性它的架構應該是輕量、快速迭代的。3.2 第二步抽象公共能力形成“Infra內核”當你的第一個Agent被驗證成功并開始計劃第二個、第三個時重復造輪子就變得低效。這時你需要從已有的實踐中抽象出所有Agent都需要的公共能力形成“Infra內核”。典型的內核能力包括對話管理統一的會話Session抽象處理歷史消息、Token計數與截斷。工具框架統一的工具定義、注冊、發現和調用接口。確保新工具可以像插件一樣輕松接入。模型抽象層統一調用不同LLMOpenAI、Anthropic、本地模型的接口方便切換和降級。基礎記憶提供短期會話記憶和基于向量數據庫的長期記憶基礎接口。核心編排引擎一個輕量級的、決定Agent下一步該“思考”還是“行動”的調度器。關鍵設計原則內核要保持精簡和穩定。它只提供最基礎的、原子化的能力不包含具體的業務邏輯。它應該是Agent框架的“操作系統”。3.3 第三步圍繞場景擴展發展“垂直解決方案”有了穩定的內核你就可以像搭積木一樣為不同的垂直場景快速構建Agent。這時Infra的角色從“提供基礎能力”轉變為“提供場景化解決方案”。例如對于“客服助手”場景你需要擴展的Infra能力可能包括情感分析模塊在對話過程中實時分析用戶情緒觸發安撫話術或升級流程。工單自動創建與填充與工單系統如Jira、Zendesk深度集成的工具套件。多輪對話狀態跟蹤專門用于處理復雜投訴或咨詢流程的狀態機。合規性檢查確保Agent的回復符合行業監管要求如金融、醫療。對于“數據分析助手”場景則需要SQL生成與安全執行將自然語言轉換為安全、高效的數據庫查詢并在沙箱中執行。圖表生成引擎根據數據結果自動選擇合適的圖表類型并生成。數據血緣與權限集成公司的數據權限系統確保Agent只能訪問用戶被授權查看的數據。這些垂直解決方案可以構建在內核之上作為可選的“增強模塊”或“模板”存在。它們極大地降低了特定領域Agent的開發門檻。3.4 第四步打造運營與治理平臺實現“規模化管理”當你有成百上千個Agent在生產環境運行時一個強大的運營平臺就不可或缺了。這是Infra演化的高級階段專注于規模化和可持續性。核心平臺能力Agent生命周期管理從創建、配置、測試、部署、版本管理到下線提供全流程可視化支持。集中監控與告警聚合所有Agent的技術與業務指標設置智能告警規則。成本分析與優化中心全局視角分析LLM和工具調用成本找出“成本大戶”并提供優化建議。知識庫統一管理對所有RAG使用的知識文檔進行集中存儲、版本更新和效果評估。安全與合規中心集中管理提示詞安全策略、數據過濾規則、工具訪問權限審計等。這個平臺使得Infra從一個技術組件轉變為一個真正的產品服務于整個組織的AI能力建設。4. 關鍵決策點技術選型中的價值權衡在構建Infra的每一步你都會面臨技術選型。記住沒有最好的技術只有最適合你當前“服務對象”和階段的技術。4.1 模型層云端大模型 vs. 本地私有模型這是最重要的決策之一直接關乎成本、性能、安全和能力。選擇云端大模型如GPT-4、Claude為誰服務主要服務于追求極致Agent能力和開發速度的團隊。它們的推理能力強能處理復雜任務且無需維護模型基礎設施。Infra考量你的Infra需要重點建設API調用管理限流、重試、降級、成本監控、數據安全過濾防止敏感信息出境和提示詞工程體系。何時選MVP驗證階段、對效果要求極高的C端產品、處理非敏感數據且預算充足的場景。選擇本地私有模型如Llama、Qwen、DeepSeek為誰服務主要服務于對數據安全和長期成本控制有嚴苛要求的企業級場景以及需要高度定制化模型行為的場景。Infra考量你的Infra復雜度陡增。需要構建完整的模型部署、服務化、監控、版本更新流水線。需要深入硬件資源管理GPU調度。需要在提示詞工程和RAG上投入更多以彌補模型本身能力的不足。何時選金融、政務、醫療等強監管行業對話數據高度敏感長期調用量巨大TCO總擁有成本模型算下來更劃算。混合架構這往往是成熟企業的最終選擇。Infra需要實現智能的模型路由簡單任務走本地小模型復雜任務走云端大模型實時性要求高的走云端涉密查詢走本地。這要求Infra有一個強大的模型網關和統一的API抽象。4.2 記憶與狀態短期會話 vs. 長期個性化Agent的記憶能力決定了它的連續性和個性化水平。短期會話記憶上下文窗口為誰服務所有Agent的基礎。服務于單次對話的連貫性。Infra實現相對簡單管理好Token計數和滑動窗口即可。但需要警惕成本過長的上下文意味著高昂的API費用。長期記憶向量數據庫摘要為誰服務需要記住用戶偏好、歷史交互的個性化Agent如個人學習伴侶、智能健身教練。Infra實現復雜。需要設計記憶的存儲、索引、檢索和更新機制。關鍵決策點包括存儲什么是存儲原始對話還是存儲LLM生成的摘要摘要會丟失細節但節省空間和檢索成本。如何檢索當用戶說“繼續我們上次聊的讀書計劃”如何從長期記憶中精準找到相關片段這需要好的元數據 tagging 和檢索策略。如何更新與遺忘記憶不是只增不減的。陳舊的、錯誤的信息需要被清理或覆蓋。Infra需要設計記憶的“衰減”或“刷新”機制。我的經驗不要一開始就過度設計長期記憶。先從基于會話的短期記憶開始當明確驗證了“記住用戶”能帶來顯著體驗提升后再逐步引入長期記憶模塊。初期可以用簡單的鍵值對存儲用戶的基本偏好這比上馬一個完整的向量記憶系統要務實得多。4.3 工具Skills框架統一網關 vs. 去中心化調用Agent需要通過工具與外部世界交互。如何管理這些工具統一工具網關集中式模式所有工具調用都先經過一個中心化的網關服務。網關負責鑒權、路由、參數校驗、格式轉換、監控和熔斷。為誰服務服務于對安全、管控、可觀測性要求極高的企業環境。網關成為安全的咽喉要道。優點管控力強易于實施統一的安全策略和審計日志。缺點容易成為性能瓶頸和單點故障增加了調用鏈路的復雜性。去中心化直接調用模式Agent或其所運行的環境直接持有調用工具的憑據通過SDK或API直接調用。為誰服務服務于追求高性能、低延遲、高靈活性的團隊或者工具本身非常輕量、安全的場景。優點鏈路短性能好架構簡單。缺點安全憑據分散難以統一管控工具本身的故障可能直接影響Agent。折中實踐我傾向于一種“注冊制”的輕量級網關。Infra提供一個工具注冊中心Agent從這里發現可用的工具及其訪問端點、Schema和權限要求。實際的調用可以是直接的但調用前后需要向Infra發送審計事件。這樣既保證了靈活性和性能又滿足了基本的可觀測性和安全審計需求。5. 避坑指南那些我趟過的“河”最后分享幾個在構建Agent Infra過程中容易踩坑的地方這些坑往往源于忘記了“為誰而建”。坑一過度追求架構“美感”忽視迭代速度。早期花三個月設計一個完美無缺、支持一切擴展的插件化架構不如用三周時間先讓第一個Agent跑起來并拿到用戶反饋。Infra應該與業務Agent共同演進而不是提前過度設計。坑二將LLM的“不穩定”視為異常而非常態。LLM的生成具有隨機性API可能超時或限流。你的Infra必須假設LLM是不可靠的組件。重試、降級如切換到備用模型、返回更保守的答案、設置合理的超時和斷路器這些不是可選項而是必選項。在一次關鍵演示中因為依賴的LLM API突發抖動又沒做降級處理導致整個Agent服務癱瘓這個教訓讓我銘記于心。坑三忽略了“人機回環”的入口設計。再智能的Agent也有無法處理的情況。Infra必須在一開始就設計好人工接管的接口。這個接口不僅僅是技術上的更是流程和產品上的。例如在對話界面提供一個醒目的“轉人工”按鈕并確保上下文能完整移交。否則當Agent犯錯時用戶會陷入無助體驗徹底崩壞。坑四成本失控。沒有設置預算告警和用量監控直到收到天價賬單才追悔莫及。Infra需要從第一天就集成成本監控并設置不同層級的告警如每日預算的50%、80%、100%。同時通過緩存、模型路由、優化提示詞等手段主動控制成本。坑五把Infra當成一個純后端工程問題。實際上Agent Infra與用戶體驗前端緊密耦合。流式響應、客戶端狀態管理、中斷處理等都需要前后端協同設計。Infra團隊必須與前端/產品團隊緊密合作定義好通信協議如SSE、WebSocket和數據格式才能打造流暢的端到端體驗。構建Agent Infra是一場馬拉松而不是百米沖刺。它的目標不是技術的堆砌而是價值的傳遞。在每一個技術決策面前多問一句“這個改動最終是讓我的終端用戶、開發者、運營同事還是系統自身受益受益有多大” 以終為始你的Infra才能真正成為Agent時代堅實而智慧的基石。