導讀
隨着技術架構的發展,微服務系統的複雜性不斷增加,對運維提出了更高的要求。為了應對這一挑戰,一種AI驅動的微服務治理方案被提出。該方案採用多智能體架構,將運維專家經驗整合,並通過自然語言交互和智能推理,簡化了灰度發佈和配置限流熔斷等操作。利用大型語言模型(LLM)的推理能力,方案能夠進行深入的故障診斷和處理,實現運維經驗的自動化。每個智能體都能承擔特定角色,高效完成複雜任務,並通過持續的數據訓練和SOP提煉,不斷優化功能,滿足用户需求。在數字時代,AI為微服務治理開闢了新的可能性。
01 項目背景
傳統場景下,軟件的研發主要依靠人,需求溝通、開發、測試、部署等階段都需要大量人力投入。大模型優秀的代碼生成和一定的思維鏈推理能力,能夠激發微服務研發、運維等環節“智能涌現”,重塑軟件研發全生命週期。
商業產品包含效果廣告(搜索廣告,信息流廣告)和展示廣告(品牌廣告,開屏廣告)兩大類廣告產品,以及基木魚和觀星盤、電商等營銷工具。為了保障複雜系統的穩定性,業務同學需投入大量人力運維微服務,從而保證業務功能快速交付和線上高穩定性。這些工作包含兩類:
- 常規流程操作:日常上線部署、調整部署和發佈 API、配置修改、路由參數更改等常規操作。
- SRE架構優化:技術棧持續升級,針對線上報警等穩定性問題,進行深層次的根因定位和故障處理、架構優
平台工程團隊面向商業產品打造的 Jarvis 平台,提供了一整套的運維工具包括自動化部署和微服務治理分析能力。但是這些治理工具存在以下問題:
- 組合操作複雜:完成單一目的需要大量的組合操作,這些操作入口深(隱藏在重重菜單中),鏈路長。
- 強依賴人工經驗:對於根因定位和故障處理、架構優化, Jarvis 平台開發了微服務治理、性能分析、自動化監控、調用鏈分析等高階能力。但是這些工具使用門欄較高,定位問題嚴重依賴於人工經驗。如果對該業務應用無運維經驗,則需要耗費大量時間去定位止損和優化架構。
為了提升商業產品維護的效率問題,Jarvis 平台使用 AI 原生應用思維來全新重塑產品形態,革命性提升業務研發運維效率,基於多智能體架構將專家經驗內化,大幅降低使用門檻,顯著提升微服務維護的效率(包括故障處理和根因定位、架構優化、部署操作等)。
主要有兩個關鍵環節:
- 全流程對話式交互:用户依靠自然語言發出指令,多輪持續對話完成一項完整的升級操作,比如灰度發佈、配置限流熔斷、流量錄製和回放等複雜操作。
- LLM 推理診斷處理:基於定位問題的經驗,依靠LLM的推理能力,進行根因分析,通過智能診斷、報警等機制來驅動系統故障的高效處理,實現人工運維經驗的可複製性。
02 效果演示
應用使用JarvisBot 升級到jdk17(全流程對話式交互)
- 用户要求升級 JDK17;
- DirectorAgent解析SOP規劃執行路徑,組裝CoderAgent、OpsAgent解決該需求;
- CoderAgent自動升級代碼併發出CR;代碼負責人 CR 合入;
- OpsAgent部署上線,並將錄製流量回放保證服務正常,承接線上流量;
基於思維鏈推理的報警處理(LLM 推理診斷處理)
- 用户要求診斷錯誤日誌報警;
- DirectorAgent解析 SOP 規劃執行路徑,組裝DiagnosisAgent、OpsAgent解決該問題;
- DiagnosisAgent拉取 Metrics 日誌和 Tracing 日誌定位到問題實例,提出”屏蔽實例“優化建議;
- 用户確認後,OpsAgent執行優化止損操作;
03 基於SOP的多智能體協作
3.1 業界探索
單個AI智能體=LLM+記憶+規劃+工具等,參考述上OpenAI理論基礎。
多智能體則需要由多個Agent依靠既定SOP互相進行交流,從而保證智能體能夠正確的合力完成一個複雜的長程任務。智能體的關鍵在於SOP,是不同工種技能的關鍵,能讓每一個智能體扮演一個特定角色。
SOP指的是Standard Operating Procedure,即標準操作程序,它提供了執行特定任務所需涉及的角色分工和詳細操作步驟,以確保在不同情況下都能保持作業結果的準確性和高效性。SOP 在軟件開發、系統維護和團隊協作中起着重要作用,有助於確保開發人員遵循最佳實踐、減少錯誤和提供工作效率。
為了解決項目開篇提到用户需求,系統為了快速產出大量的能力,因此經過多次迭代,有了一系列演進:
△SOP架構演進
階段一:多智能體協作。Agent 之間需要相互調用才能完成複雜的對話目標。但是Agent 的工作存在大量重複,比如幾乎所有智能體都需要調用底層的 API agent進行數據查詢,診斷的智能體其實也需要大量的優化操作。智能體直接的邊界非常不清晰,交互的方式也比較多樣,有通過自然語言,有通過直接調用的,非常混亂。
階段二:智能體協作SOP 標準化。通過標準操作程序(SOPs)編碼作為智能體Prompt,指導大模型按照結構化流程工作並協調智能體各個環節,允許具有領域專長的智能體驗證輸出並減少複合錯誤,有效避免大模型的幻覺問題。SOPs 總結人工操作流程經驗,從而讓 agent 的職責和產出結果標準化、agent 間的協作完全符合要求。
3.2 SOP格式定義
舉例:
04 多智能體架構落地實踐
JarvisBot是一箇中樞神經模塊,做決策和觸發任務,不做具體的業務邏輯。它鏈接用户(LUI層)和業務層,跟用户進行自然語言的交互,理解自然語言描述的SOP ,指揮底層系統完成對應的任務。它的幾個重要部分包括:
- Agents(智能體集合):包含DirectorAgent(技術負責人)、CoderAgent(程序員)、OpsAgent(操作智能體)、DiagnosisAgent(診斷智能體)等一系列智能體。
- 智能體都基於 BaseAgent 構建,具有基礎的 SOP 理解和LLM ReAct 思維鏈規劃能力。
△Agent基座框架
- 不同的 Agent 具有不同的技能,比如DirectorAgent規劃智能體工作流、CoderAgent監聽PRD生成代碼,DiagnosisAgent監聽診斷類問題產生診斷結論等。
- Agents之間通過消息總線進行交互,不同的 Agent 產生和訂閲不同主題的消息。
- 知識管理端:管理各種靜態數據,並提供一定的自動化手段進行更新。比如藉助數據飛輪管理和優化Prompts,錄入並管理 SOP,自動化錄製知識。
- 工具集合:鏈接底層業務接口,封裝一些複雜操作,通過HTTP或者 RPC 請求獲取業務模塊的數據。
- 模型管理:對模型一些的封裝管理,包括一些重試策略、排隊算法等。
下圖是一個典型的基於 SOP解決診斷問題的流程圖:
05 數據飛輪驅動多智能體架構持續進化
既然SOP是驅動多智能體協作的關鍵,如何持續產出 SOP 是讓多智能體架構真正具有自主進化的能力關鍵。如何產出 SOP依賴於數據提煉的能力。因此:如何構建數據飛輪並且利用數據飛輪持續優化提煉SOP, 是實現多智能體持續進化的關鍵。
5.1 大小模型飛速協同進化,是智能性進化的根基
智能體架構底層依靠一系列不同尺寸的模型。其中通用大模型用於通用知識理解和複雜推理,輕量級模型用於SFT 微調。
上表看出,模型尺寸越小,成本越低、響應速度越快,但是通識能力和複雜問題推理能力就越來越差。
JarvisBot智能體的核心思路是用大模型教會小模型,藉助大模型去構建小模型SFT訓練優質數據集,在不同細分場景大量的使用小模型,從而達到智能性和成本的完美平衡。
△不斷剪裁模型尺寸
△大模型教會小模型
△大小模型協同進化架構
基於離線AI 對話評估系統利用規則庫、參考歷史相似語料打分、語料聚類抽樣、多LLM(文心4、GPT4、專精SFT模型等)羣體智能打分,評估線上對話語料。單日機器可自動完成評估對話條目4w+,產出大量的評估報告推動JarvisBot從產品、LUI技術解析和模型基座多個角度飛速進化。
5.2 如何實現持續進化—數據飛輪訓練專家模型,自動提煉SOP
通過自動化評估系統,可以不斷評估智能體的智能性,不斷洞察用户的需求,包括產品功能使用情況、未滿足的功能訴求、用户習慣操作動線等。藉助數據飛輪可以不斷訓練出專家模型,自動提煉SOP,從而幫助多智能體不斷的持續進化。
06 AI Agent微服務治理平台Jarvis總結
————END————
推薦閲讀
百度智能雲千帆大模型平台引領企業創新增長
輕鬆搞定平穩運行,數據庫平台 DBStack 幫助 DBA 運維不同基礎設施上的各類數據庫
基於PP-ShiTuv2新增PaddleX圖像識別模型產線,顯著提升商品識別等細粒度開放域產業場景檢索性能
基於GPU的ANN檢索
維度爆炸背景下uv計算在Feed業務的高效實踐