【編者按】大模型的快速發展催生了智能體系統(agentic system),為人類打開了語義處理的大門,徹底改變了人類與計算機的交互方式。而以大模型為關鍵組件的智能體系統,集成了傳統編程語言編寫的源代碼,使相關研究變得復雜且充滿新的挑戰。
近年來,微軟亞洲研究院首席研發經理楊玉慶及其團隊致力于大模型智能體系統的研究與優化。在本文中,楊玉慶將分享他對提升大模型智能體系統效率和性能的關鍵方向的見解,以及對其未來廣泛應用的展望。
作者 | 楊玉慶,微軟亞洲研究院首席研發經理
出品丨AI 科技大本營(ID:rgznai100)
“大模型的快速發展,驅動了全新軟件系統——智能體系統的誕生。由于其混合架構所帶來的高度互聯與動態的特性,我們需要關注智能體系統的整體設計與運行,從不同方向提升效率、可靠性和適應性,充分釋放智能體系統的巨大潛力。”
——楊玉慶
微軟亞洲研究院首席研發經理
大模型的發展已成為推動軟件形態巨變的關鍵因素之一,它正在催生一種全新的軟件形態,即目前我們所理解的智能體(AI agent)或智能體系統(agentic system)。
不難想象,智能體系統將會是大模型應用的普遍形式。它的性能表現和使用成本,對于大模型所能惠及的范圍具有決定性作用。因此,我們嘗試以這樣一種思路來優化智能體系統:將其視為一個“數據加工”流程,并嘗試在不同環節為工作量做減法。換言之,我們在設法提升單位算力的智能輸出,增加系統的智能“密度”。
從大模型快速發展中誕生的智能體系統
人工智能領域的突破性進展,尤其是大模型的出現,被認為“與微處理器、個人電腦、互聯網和手機的發明同等重要”。隨著各種大模型的涌現,我們見證了由大模型驅動的創新性軟件系統的誕生。與傳統軟件相比,這類系統有兩個顛覆性特點:
首先,大模型及其驅動的新型軟件系統,使可處理的數據體量呈爆炸式增長。傳統編程語言和工具只能在語法層面處理數據,操作的是原始的比特和字節,無法理解數據中所包含的內容或意義。大規模基礎模型改變了這一傳統范式,能夠理解和生成人類語言,解釋圖像含義,甚至實現跨模態的信息連接。這種處理和推理語義信息的能力,極大地改變了我們與數字系統的交互方式和任務類型。
其次,大模型及其催生的軟件系統讓使用者能夠直接指定任務,無需像以前那樣逐步說明如何完成任務。這降低了使用者的專業能力門檻。使用者只需清楚定義任務結果即可,至于如何完成則交由系統進行處理。
大模型的這些特點來自于兩個關鍵能力:一是“推理與規劃能力”,讓大模型能夠對復雜任務進行推理,將其分解為可執行的步驟,并規劃行動順序,進一步體現大模型在調用工具和與環境互動時的能力;二是“世界知識”,即通過訓練吸收海量數據,覆蓋廣泛的人類知識。這兩種能力的結合,促使大模型在協助人類方面實現了重大突破。
我們將這種新型的軟件系統稱為“智能體系統”,這一定義可以泛指所有涉及大模型的軟件系統。智能體系統的核心特征在于“混合架構”——結合了傳統編程語言編寫的源代碼和為大模型量身定制的指令(即“提示詞”,prompts)。這種混合架構賦予了智能體系統從簡單自動化到復雜問題解決的廣泛適用性,成為軟件領域的重要創新方向。
三個方向提升智能體系統的效率
在智能體系統的混合架構中,大模型作為核心組成部分,處于更大的生態系統中,與其他程序、環境,甚至其他模型請求緊密相聯。通常,它會嵌入到一個復雜的工作流中,與傳統軟件組件交互,或與周圍環境進行通信。智能體系統有時還可能涉及多個模型的協作,形成動態且相互依賴的系統。
正是由于這種高度互聯且動態的特性,若想充分釋放智能體系統的潛力,我們需要關注其整體設計與運行,而非僅僅是大模型本身,進而使整個系統能夠以更高效率、更強可靠性和更好適應性完成復雜的現實任務。
圖1:大語言模型的記憶層級
基于這樣的認識,我們從智能體系統的“數據加工”流程入手,根據數據流動和相互關系,從三個方向探索了提升效率、可靠性和適應性的方法。
首先,研究面向大語言模型的編程,即如何高效組織和優化大模型的輸入,使其能夠準確實現開發者的意圖。我們特別關注外部數據的動態注入以及長上下文處理能力的提升,以增強模型的推理深度,提高計算效率。其次,探索如何驗證大模型的輸出。我們提出了語義驗證這一關鍵概念,并且已經在數據科學領域構建了一套系統化的驗證框架。目前,我們正在將驗證從離線擴展到運行時,并進一步研究如何讓模型從驗證結果中學習,形成閉環優化機制。最后,構建智能體系統原生的服務系統。我們將整個智能體系統視作最優級的核心架構進行設計,通過端到端的任務編排和優化框架,全面提升系統的性能和資源利用效率。
面向大語言模型的編程(Programming with LLMs)
大語言模型的響應質量很大程度上取決于其接收的輸入,即“提示詞”。最近的研究表明,提示詞的“內容”和“形式”會顯著影響大語言模型的輸出質量。雖然很多使用者對自然語義的交互方式已經十分熟悉,但撰寫有效的提示詞往往比預期的更加困難,需要大量試驗和反復調整。
為了幫助開發者更輕松地設計有效的提示詞,微軟亞洲研究院開發了自動提示優化工具(Auto Prompt Optimization,APO)和提示壓縮工具(prompt compression)等工具與方法。我們希望借助這些方法能夠減輕開發者設計提示詞的負擔,更重要的是讓大模型總能接收到精確且“友好”的數據。
具體而言,,以高效壓縮提示詞,在大幅加速大語言模型推理的同時保持模型的推理性能。通過動態分配壓縮比和迭代壓縮,LLMLingua 能夠在不同壓縮比下保持語義的完整性,為大語言模型的應用提供更高效且經濟的解決方案。該框架利用困惑度(perplexity)來評估每個詞或句子的信息量,保留對模型推理最為關鍵的部分,并通過動態選擇和壓縮提示詞中的關鍵部分,減少數據冗余,使提示詞更具結構化。在數據密集型任務中,LLMLingua 的優勢尤為明顯。通過多個數據集的測試,LLMLingua 不僅實現了高達20倍的壓縮比,還保持了優異的性能,顯著降低了推理成本。
除了提示詞內容的設計,“外部數據的注入”也是提升模型性能的重要手段。但選擇最相關和最有用的數據并將其融入提示詞并非易事,需要對任務需求和模型行為有深入的理解和精細的設計。當涉及“非純文本數據”時,挑戰便更加復雜。
對此,我們提出了一種“”,將用戶對外部數據查詢的需求類型分為四個級別,并分析其難點和適用的技術手段:
Level-1 顯性事實查詢(explicit fact queries):指那些可直接從數據中提取明確存在的事實,無需額外推理。此時只需使用基礎的 RAG 方法,通過檢索增強來定位和提取信息。
Level-2 隱性事實查詢(implicit fact queries):需要從數據中揭示隱含的事實,可能涉及常識推理或簡單的邏輯推斷。此時可能需要多步檢索,或基于圖/樹的檢索,甚至將自然語言問題轉換為 SQL 查詢,以從結構化數據中檢索信息。
Level-3 可解釋推理查詢(interpretable rationale queries):要求模型理解并應用與數據背景密切相關的領域特定推理依據。我們需要將外部邏輯關系輸入大模型并確保其遵循這些邏輯來生成回應。
Level-4 隱式推理查詢(hidden rationale queries):這種情況下模型沒有明確的推理依據記錄,需要通過分析歷史數據中的模式和結果來推斷。此時,我們需要讓模型通過離線學習從數據中提取規則和原則,并進行上下文學習,以及利用監督學習將領域特定知識整合到模型中。
圖2:數據增強型大語言模型應用中不同查詢層級的主要技術總結
目前該 RAG 任務分類法已經在與專業醫療機構的合作中有所應用,使智能體的行為邏輯和性能展現出明顯的優勢。我們相信這項研究可以幫助大模型更好地整合專有領域知識,在特定領域發揮更前沿的能力。
最后是關于長上下文的優化。實踐證明,將整個文檔交給大模型處理,大模型不僅能夠對內容理解的更加全面準確,還可以在很大程度上降低軟件系統的復雜度、縮短開發調試周期。然而巨大的計算資源開銷是長文本處理繞不開的瓶頸,制約了長文本模型的廣泛應用。微軟亞洲研究院正在開發創新的算法、架構和系統,以實現對大規模模型中長上下文處理的高效管理,進而提升單位算力的智能輸出。過去一段時間,我們采用了算法和系統協同創新的研究方法,并且收獲了超出預期的成果。
在算法層面,我們提出了針對長上下文注意力機制的動態稀疏注意力算法(dynamic sparse attention),并用于 推理加速算法。MInference 的核心在于利用長上下文中注意力機制的動態稀疏性,通過離線確定每個注意力的最佳稀疏模式,而且在推理過程中動態構建稀疏索引,利用優化的 GPU 內核執行高效稀疏注意力計算。這種方法能夠將單卡 A100 GPU 上的預填充延遲降低多達10倍,同時在多種任務和模型上保持與全注意力相當甚至更優的精度。
動態稀疏注意力也被用于 RetrievalAttention——一種加速長文本語言模型推理速度的創新方法。該方法將大部分鍵值向量卸載到 CPU 內存,并通過向量搜索實現動態稀疏注意力機制,選擇性地只計算那些“重要”元素之間的關系,在保證準確性的同時顯著降低計算成本和 GPU 內存占用。實驗證明,RetrievalAttention 能使一個包含80億參數、128K標記的模型在單個24GB的 NVIDIA 4080 GPU 上運行。相關工作獲得了 NeurIPS ENSLP 2024 最佳論文獎。
在系統層面,我們進行了 GPU Kernel 的優化。常規的 GPU 計算假設每個數據塊是連續且同質的,但在處理動態稀疏數據時,這種假設不再成立。于是我們引入了平移不變性——通過重新排序稀疏數據,使數據塊在計算時更加連續,且不改變數據本身,只是調整了它們在內存中的位置,從而大大提高了計算效率。
驗證大模型的輸出
確保大模型輸出的質量,尤其是語義的正確性,是提升智能體系統可靠性的關鍵。我們以大模型在數據科學智能體(data science agent)場景中的應用為突破點,深入探索了語義檢驗的共性問題。數據科學智能體涉及數據預處理、統計分析、機器學習模型開發以及多模態數據可視化等任務。這些任務不僅需要技術上的準確性,還要求與用戶意圖在語義上保持一致。
為了評估數據科學智能體在不同任務中的表現,我們從“數據”和“框架”兩個層面入手,構建了 “DSEval” 和 “” 兩個綜合性基準(benchmark)。DSEval 專注于數據科學智能體的全生命周期評估,涵蓋數據預處理、分析推理和機器學習模型開發等任務,可以評估輸出結果的正確性,并且還關注可能出現的副作用,能更全面地反映智能體系統在復雜任務中的表現。VisEval 則針對自然語言到數據可視化(NL2VIS)的任務,通過采用有效性、合法性和可讀性等多維度的評估方法,系統地驗證智能體生成的可視化結果是否符合語義要求。
在構建這些基準的過程中,我們開發了“領域特定語言(DSEAL)”和一套內置的“校驗原語(validation primitives)”,以系統化地評估數據科學智能體的全生命周期。例如,DSEval 中的校驗原語用于驗證副作用,確保智能體不會意外修改原始數據;VisEval 中定義了多維度的評估指標,能全面衡量可視化結果質量。這些校驗原語從多個角度對智能體系統的輸出進行語義驗證,確保結果在技術正確的同時也能滿足用戶意圖。
在性能評估之外,我們也在積極探索“離線評估向在線(運行時)檢驗”的轉變。在我們的最新工作 中,實時運行的驗證器(verifier)不僅能夠給當前的動作打分,還能夠指導移動設備上的智能體尋找到完成任務的最優路徑。憑借其全新的“驗證器驅動”架構,V-Droid 不僅刷新了移動設備上任務自動化的任務完成率記錄,同時在決策響應速度上也實現了接近實時的表現,為移動端自動化控制開辟了全新局面。
圖3:V-Droid 全新驗證器驅動架構
無論是數據科學場景還是移動設備任務自動化場景,高質量的標注數據都極為稀缺,所以我們也特別注重數據集生成的可擴展性和效率。我們在多個項目中都成功引入了人機聯合的“自舉式標注(bootstrapped annotation)”方法,極大地減少了人工投入,提升了數據的規模和覆蓋范圍。例如,在 V-Droid 中,系統初始階段由人工作業完成標注,隨后利用經過初步訓練的驗證器自動生成操作標注,再由人工審核、修正。隨著迭代訓練的進行,驗證器的準確性不斷提升,人工介入比例逐漸下降,進而高效構建起一個涵蓋上萬條任務軌跡的數據集,為后續的大規模訓練提供了堅實基礎。
通過高質量的數據構建和強化學習,我們正在實現“讓模型從檢驗結果中學習”。當前,檢驗過程主要作為診斷工具,用于識別模型輸出中的錯誤或局限性,但檢驗結果通常不能反饋到模型中促進其改進。我們的目標是將檢驗結果融入模型的學習過程,形成閉環。這將有望打造出能夠自我改進的智能體,使其隨時間推移更好地適應用戶偏好和任務需求,提升語義理解和任務表現。
構建智能體原生服務系統
當前,大多數基于大模型的應用都依賴于公共大語言模型服務,然而這些公共服務只能觀察到大量的單獨請求,無法了解應用級信息。例如,它們無法判斷哪些請求屬于同一應用,不同請求之間如何連接,或是否存在相似性。這種信息缺失使得公共服務只能盲目優化單個請求的性能,導致應用整體在端到端之間產生一系列性能次優問題,如網絡延遲、排隊等額外開銷,出現優化調度錯位,以及重復提供常見的前綴提示,造成計算、存儲等資源的巨大浪費。
我們設想打造一種能將請求間的各種關系“傳達”至服務后端的方法,即智能體原生服務系統(agent-native serving systems)。在這個方法中,優化對象從單個請求轉變為整個智能體系統,系統成為被優化的核心架構。基于這一思路,我們開發了 。Parrot 引入了“語義變量(semantic variable)”這一核心抽象,用于標注請求提示中的輸入/輸出變量,并構建請求之間的數據管道,從而將應用級知識呈現給公共大語言模型服務。
“語義變量”是請求提示中的一個文本區域,具有特定的語義目的,如任務指令、輸入或輸出。通過分析語義變量,Parrot 可以構建請求之間的依賴關系圖(DAG),并通過分析 DAG 和最終輸出的性能目標,推導出每個請求的調度偏好來優化調度。不僅如此,Parrot 還能通過分析提示結構,快速監測多個請求之間的公共前綴,減少冗余計算。
這些特征使 Parrot 能夠大幅優化智能體系統端到端的性能。以多智能體編程任務為例,Parrot 通過識別任務組并優化調度策略,實現了高達11.7倍的性能提升。Parrot 的設計為未來構建原生的智能體系統服務提供了一種新的視角與啟發。
圖4:Parrot 系統概覽
復合型團隊的跨領域協作推動智能體系統發展
在智能體系統的研究與優化中,我們深刻認識到,由于其“混合架構”的特征,僅從某一方向進行優化的作用始終是有限的。智能體系統的優化需要系統與算法的協同創新,而這離不開跨領域的復合型團隊的貢獻與努力。
在微軟亞洲研究院,我們有幸匯聚了一支由多領域人才構成的團隊。這種跨領域的團隊協作模式為我們帶來了巨大的優勢。例如,在推進前文所述的算法與系統協同創新的過程中,系統專家與算法專家的緊密合作發揮了關鍵作用。
此外,我們所采用的“網狀”團隊合作模式極大地促進了創新與思維的碰撞。在這種模式下,具備不同專長的人才能夠在高頻次、緊密的合作中相互啟發,擴大彼此視野,讓我們更容易從全局角度探索智能體系統優化的突破口。
微軟亞洲研究院正在多角度開展針對大模型效率的研究,涵蓋,到系統架構層對大模型性能的優化,以及針對基礎模型和系統底層的研究——例如,微軟亞洲研究院開發的 和 ,進一步探索了模型本身的能力與效率邊界。這些研究方向相輔相成,從不同方向對智能體系統形成“向心”優化,為智能體系統在復雜現實任務中的廣泛應用奠定了堅實基礎。
對于智能體系統這一源自人工智能發展的產物,智能水平固然重要,但如何以更低的成本和更少的資源獲得更大產出,造福于更多人,才是其創造社會價值的關鍵所在。隨著創新方法論的推進和驗證,我們相信智能體系統普惠大眾的一天并不遙遠。
本文作者
楊玉慶博士現任微軟亞洲研究院首席研發經理,帶領微軟亞洲研究院(上海)系統與工程組專注于大模型系統和多模態系統的研究。他的研究興趣包括大模型的高效計算和智能體系統的頂層設計等。相關研究成果多次發表于 OSDI、SOSP、EuroSys、ATC、CVPR、ICCV、NeurIPS 等國際頂級會議。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.