Manus火了?別慌 一文讀懂AI智能體常見的九種設(shè)計(jì)模式 原創(chuàng)
作為高度顛覆性的生成式人工智能 (GenAI) 技術(shù)的技術(shù)支柱,基礎(chǔ)模型 (FMs) 已獲得了學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注。特別是,大型語言模型 (LLMs) 的出現(xiàn),它們在理解和生成類人推理和內(nèi)容方面表現(xiàn)出色,催生了大量使用語言模型的各種下游任務(wù)。隨后,基于 FM 的自主Agent的開發(fā)越來越受到關(guān)注,例如 AutoGPT 和 BabyAGI,它們可以主動(dòng)、自主地追求用戶目標(biāo)。
盡管當(dāng)前研究者在AI Agent領(lǐng)域投入了巨大努力,但從業(yè)者在構(gòu)建和實(shí)施基于基礎(chǔ)模型(Foundational Model,F(xiàn)M)的Agent方面面臨著陡峭的學(xué)習(xí)曲線,并且,Agent的架構(gòu)設(shè)計(jì)和架構(gòu)模式的集合尚未得到系統(tǒng)的探索和制定。
在軟件工程中,架構(gòu)模式是軟件設(shè)計(jì)中常見問題的一個(gè)可重用的解決方案。這里說的智能體/Agent,是指能夠發(fā)揮主動(dòng)作用或產(chǎn)生影響以實(shí)現(xiàn)用戶目標(biāo)的 AI系統(tǒng),一個(gè)用于設(shè)計(jì)基于FM的Agent的架構(gòu)模式目錄。
Agent設(shè)計(jì)模式全景圖:
當(dāng)用戶與 Agent 交互時(shí),【被動(dòng)目標(biāo)創(chuàng)建者和主動(dòng)目標(biāo)創(chuàng)建者】可以幫助理解用戶的意圖和環(huán)境信息,并在上下文工程中將最終目標(biāo)進(jìn)行規(guī)范化,而【提示/響應(yīng)優(yōu)化器】則根據(jù)預(yù)定義的模板,對(duì)其他 agent/tools 的提示或說明進(jìn)行優(yōu)化,以滿足特定的格式或內(nèi)容要求。
給定用戶的輸入,Agent 通過【檢索增強(qiáng)生成】從知識(shí)庫中獲取額外的上下文信息。然后,它通過【單路徑計(jì)劃生成器和多路徑計(jì)劃生成器】構(gòu)建計(jì)劃,將最終目標(biāo)分解為可執(zhí)行的任務(wù)。在這個(gè)過程中,可能會(huì)進(jìn)行【單次模型查詢和增量模型查詢】。
生成的計(jì)劃應(yīng)該進(jìn)行審查,以確保其準(zhǔn)確性、可用性、完整性等。【自我反思、交叉反思和人類反思】可以幫助 Agent 從不同的反思實(shí)體那里收集反饋,并根據(jù)反饋相應(yīng)地完善計(jì)劃和解題步驟。
之后,Agent 可以將任務(wù)分配給其他基于窄 AI 或非 AI 的系統(tǒng),調(diào)用外部工具,并通過【工具/agent 注冊表】使用一組 Agent 來實(shí)現(xiàn)目標(biāo)。特別是,Agent 可以在同一任務(wù)上工作,并通過【基于投票、基于角色或基于辯論的合作】來最終確定結(jié)果。
例如,Agent 可以扮演不同的角色,如協(xié)調(diào)器和工作者?!?strong>代理適配器】不斷學(xué)習(xí)不同工具的接口,并將它們轉(zhuǎn)換為 FM 友好的環(huán)境?!?strong>多模態(tài)護(hù)欄】可以用于管理和控制基礎(chǔ)模型的輸入/輸出。同時(shí),使用的 Agent 將執(zhí)行各自的推理、計(jì)劃和執(zhí)行過程,這可能需要通過【檢索增強(qiáng)生成、工具/agent 注冊表和代理適配器】訪問外部系統(tǒng)。
最后,我們聲稱開發(fā)者可以通過【代理評(píng)估器】在設(shè)計(jì)時(shí)和運(yùn)行時(shí)評(píng)估 Agent 的性能。
圖:用UML序列圖表示的Agent設(shè)計(jì)模式全景圖
圖:Agent設(shè)計(jì)模式之間的連接關(guān)系
AI Agent 常見的九種設(shè)計(jì)模式??。
.ReAct 模式原理:將 Reasoning 和 Act 結(jié)合,執(zhí)行行動(dòng)后有 Observation,維持短期記憶。比如找胡椒粉,會(huì)根據(jù)每步觀察決定下一步行動(dòng)??。.實(shí)現(xiàn):生成提示詞,大模型生成 Thought + Action,調(diào)用外部工具,生成 Observation,循環(huán)至 Action 為 Finish,輸出結(jié)果。.Plan and solve 模式:先計(jì)劃再執(zhí)行,適合復(fù)雜任務(wù),如炒菜??,計(jì)劃會(huì)根據(jù)情況變化。.LLM Compiler 模式:并行 Function calling 提高效率,像計(jì)算年齡差可同時(shí)搜索。.Basic Reflection 模式:類似師生互動(dòng),Generator 寫作業(yè),Reflector 批改。.Self - Discover 模式:對(duì) task 本身反思,選擇合適方式重新推理。.REWOO 模式:隱式嵌入 Observation,如審批流,各步驟相互依賴。.Language Agent Tree Search 模式:融合多種方式,通過樹搜索強(qiáng)化學(xué)習(xí)。.Reflexion 模式:升級(jí)版,引入外部數(shù)據(jù)評(píng)估,更具建設(shè)性。.Storm 模式:先生成大綱再豐富內(nèi)容,可創(chuàng)作文章??
1. 被動(dòng)模式與主動(dòng)模式
這部分介紹目標(biāo)創(chuàng)建的被動(dòng)與主動(dòng)模式,在被動(dòng)模式下,智能體對(duì)用戶“言聽計(jì)從”,不自作主張;在主動(dòng)模式下,智能體除了遵從用戶指令外,會(huì)利用工具捕捉一些上下文信息,做一些“舉一反三”的工作,類似于一些大模型產(chǎn)品提供的“指令潤色”功能。
2. 提示詞工程與RAG
接下來是業(yè)界廣泛提到的提示詞工程與RAG,已經(jīng)成為大模型工程的標(biāo)配技術(shù)。
3. 模型查詢
對(duì)于簡單的問題,智能體只需一次訪問FM,即可得到答案。碰到復(fù)雜問題,智能體需要多次訪問FM,通過多輪迭代逐步逼近答案。
4. 計(jì)劃生成
5. 反思機(jī)制
生成的計(jì)劃應(yīng)該進(jìn)行審查,以確保其準(zhǔn)確性、可用性、完整性等?!?strong>自我反思、交叉反思和人類反思】可以幫助 Agent 從不同的反思實(shí)體那里收集反饋,并根據(jù)反饋相應(yīng)地完善計(jì)劃和解題步驟。
6. 多Agent合作
7. 其他技術(shù)
AI 智能體的設(shè)計(jì)模式是構(gòu)建高效、靈活且適應(yīng)性強(qiáng)的智能系統(tǒng)的關(guān)鍵。根據(jù)最新的研究和實(shí)踐總結(jié),以下是一些常見的 AI 智能體設(shè)計(jì)模式:
1.反思(Reflection)模式
反思模式是一種讓 AI 模型通過自我評(píng)估和迭代優(yōu)化來提高任務(wù)執(zhí)行能力的方法。模型在生成初始解決方案后,會(huì)檢查輸出結(jié)果,發(fā)現(xiàn)改進(jìn)點(diǎn)并進(jìn)行優(yōu)化。
2.工具使用(Tool Use)模式
該模式允許 AI 智能體通過調(diào)用外部工具(如搜索引擎、代碼執(zhí)行平臺(tái)等)來擴(kuò)展自身能力。通過整合外部工具,AI 系統(tǒng)能夠在特定任務(wù)上達(dá)到更高的效率和準(zhǔn)確性。
3.規(guī)劃(Planning)模式
規(guī)劃模式將復(fù)雜任務(wù)分解為多個(gè)有序步驟,并逐一執(zhí)行這些步驟以達(dá)成目標(biāo)。這種模式通過任務(wù)分解提高了執(zhí)行的準(zhǔn)確性和靈活性,適合處理復(fù)雜的、多步驟的任務(wù)。
4.多智能體協(xié)作(Multi-agent Collaboration)模式
在這種模式下,多個(gè)智能體通過分工協(xié)作來共同完成復(fù)雜任務(wù)。智能體之間可以共享信息、協(xié)調(diào)行動(dòng),從而提高任務(wù)執(zhí)行的效率和準(zhǔn)確性。
5.鏈?zhǔn)焦ぷ髁鳎–hain Workflow)模式
鏈?zhǔn)焦ぷ髁鲗⒍鄠€(gè)任務(wù)按線性序列組織,一個(gè)步驟的輸出作為下一個(gè)步驟的輸入。這種模式適用于任務(wù)具有明確順序且每個(gè)步驟依賴于前一步輸出的場景。
6.路由工作流(Routing Workflow)模式
路由工作流根據(jù)輸入條件動(dòng)態(tài)選擇執(zhí)行路徑,將任務(wù)路由到不同的處理流程。這種模式適合任務(wù)輸入復(fù)雜且不同輸入需要專門處理的場景。
7.編排器-工作者(Orchestrator-Worker)模式
在這種模式下,中央 AI(編排器)負(fù)責(zé)將任務(wù)分配給專門的子進(jìn)程(工作者),每個(gè)工作者負(fù)責(zé)不同的功能。這種模式通過并行處理提高了效率和專業(yè)化程度。
8.評(píng)估器-優(yōu)化器(Evaluator-Optimizer)模式
該模式通過迭代評(píng)估和優(yōu)化來不斷改進(jìn)任務(wù)處理效果。評(píng)估器負(fù)責(zé)評(píng)估智能體輸出的質(zhì)量,優(yōu)化器則根據(jù)反饋進(jìn)行改進(jìn)。
9.并行化工作流(Parallel Workflow)模式
并行化工作流通過同時(shí)執(zhí)行多個(gè)任務(wù)或處理多個(gè)數(shù)據(jù)集來提高效率,適合處理大量獨(dú)立數(shù)據(jù)或多個(gè)請(qǐng)求的場景。
寫在最后,這些設(shè)計(jì)模式各有優(yōu)勢和適用場景,開發(fā)者可以根據(jù)具體任務(wù)需求選擇合適的設(shè)計(jì)模式來構(gòu)建高效的 AI 智能體系統(tǒng)。
本文轉(zhuǎn)載自公眾號(hào)數(shù)字化助推器 作者:天涯咫尺TGH
原文鏈接:??https://mp.weixin.qq.com/s/gvrdTw1ucCvjS62QrQ9yVg??
