Agent工作流記憶 - 讓AI助手更聰明地完成復(fù)雜任務(wù)
今天我要跟大家分享一篇很有意思的論文,題目是《Agent Workflow Memory》,也就是"Agent工作流記憶"。這篇論文提出了一種新方法,讓AI助手(我們稱之為Agent)能更好地完成復(fù)雜的網(wǎng)頁(yè)任務(wù)。
首先,我們來(lái)聊聊這個(gè)研究的背景?,F(xiàn)在的AI技術(shù)已經(jīng)非常強(qiáng)大了,特別是像GPT這樣的大語(yǔ)言模型(LLM),它們可以進(jìn)行對(duì)話、回答問(wèn)題,甚至可以幫我們完成一些簡(jiǎn)單的任務(wù)。但是,當(dāng)面對(duì)復(fù)雜的、需要多個(gè)步驟才能完成的任務(wù)時(shí),AI助手還是會(huì)遇到不少困難。
舉個(gè)例子,假設(shè)我們讓AI助手幫我們?cè)诰W(wǎng)上訂一張從北京到上海的機(jī)票。這個(gè)任務(wù)看似簡(jiǎn)單,但實(shí)際上涉及很多步驟:
打開(kāi)航空公司網(wǎng)站
選擇出發(fā)地和目的地
選擇日期
篩選合適的航班
填寫(xiě)乘客信息
選擇座位
支付訂單
對(duì)于人類來(lái)說(shuō),我們可能已經(jīng)訂過(guò)很多次機(jī)票了,這些步驟我們爛熟于心。但對(duì)AI助手來(lái)說(shuō),每次執(zhí)行這樣的任務(wù)都像是全新的體驗(yàn)。它可能會(huì)在某些步驟卡住,或者忘記了重要的步驟。
研究人員發(fā)現(xiàn),現(xiàn)有的AI助手主要有兩個(gè)問(wèn)題:
- 缺乏可重用的工作流程:AI助手無(wú)法像人類那樣,從過(guò)去的經(jīng)驗(yàn)中提取出通用的工作流程,并在新任務(wù)中靈活運(yùn)用。
- 無(wú)法從失敗中學(xué)習(xí):每次執(zhí)行任務(wù)時(shí),AI助手都是從頭開(kāi)始,無(wú)法利用之前成功或失敗的經(jīng)驗(yàn)來(lái)改進(jìn)自己的表現(xiàn)。
研究目標(biāo):讓AI助手更聰明
基于這些挑戰(zhàn),研究者提出了一個(gè)非常有趣的想法:能不能讓AI助手也像人類一樣,能夠?qū)W習(xí)、記憶和使用工作流程呢?
這就是本篇論文的核心目標(biāo):開(kāi)發(fā)一種方法,讓AI助手能夠從過(guò)去的經(jīng)驗(yàn)中提取出可重用的工作流程,并在未來(lái)的任務(wù)中靈活運(yùn)用這些工作流程。
研究者們希望通過(guò)這種方法,AI助手可以:
- 更高效地完成復(fù)雜任務(wù)
- 在不同的網(wǎng)站和領(lǐng)域之間更好地泛化
- 隨著經(jīng)驗(yàn)的積累不斷提升自己的能力
那么他們是如何實(shí)現(xiàn)這個(gè)目標(biāo)的呢?這就要說(shuō)到本文的核心方法了:Agent Workflow Memory(AWM),也就是"Agent工作流記憶"。
AWM的核心思想:工作流記憶
Agent Workflow Memory (AWM)的核心思想是讓AI助手能夠像人類一樣,從過(guò)去的經(jīng)驗(yàn)中學(xué)習(xí)、記憶和使用工作流程。但什么是"工作流"呢?讓我們先來(lái)理解這個(gè)概念。
什么是工作流?
在AWM中,工作流(Workflow)是指完成某個(gè)任務(wù)或子任務(wù)的一系列步驟。它包含兩個(gè)主要部分:
- 工作流描述(Workflow Description): 一段簡(jiǎn)短的文本,描述這個(gè)工作流的目標(biāo)或功能。
- 工作流軌跡(Workflow Trajectory): 一系列具體的步驟,包括觀察環(huán)境、推理和執(zhí)行動(dòng)作。
舉個(gè)例子,假設(shè)我們有一個(gè)"搜索產(chǎn)品"的工作流,它可能看起來(lái)像這樣:
## 工作流描述: 在電商網(wǎng)站搜索特定產(chǎn)品
工作流軌跡:
1. [觀察] 當(dāng)前頁(yè)面顯示搜索框
2. [推理] 我需要在搜索框中輸入產(chǎn)品名稱
3. [動(dòng)作] 在搜索框中輸入"{產(chǎn)品名稱}"
4. [觀察] 搜索結(jié)果頁(yè)面加載完成
5. [推理] 我需要查看搜索結(jié)果并選擇最相關(guān)的產(chǎn)品
6. [動(dòng)作] 點(diǎn)擊最相關(guān)的產(chǎn)品鏈接
這個(gè)工作流描述了在電商網(wǎng)站搜索產(chǎn)品的通用步驟,可以適用于多種不同的產(chǎn)品和網(wǎng)站。
AWM的工作原理
現(xiàn)在我們了解了工作流的概念,讓我們來(lái)看看AWM是如何工作的。AWM的核心流程包括三個(gè)主要步驟:
- 工作流提取(Workflow Induction)
- 工作流整合(Workflow Integration)
- 工作流使用(Workflow Utilization)
讓我們逐一詳細(xì)了解這些步驟。
1. 工作流提取 (Workflow Induction)
在這個(gè)步驟中,AWM會(huì)從AI助手過(guò)去執(zhí)行任務(wù)的經(jīng)驗(yàn)中提取出可重用的工作流。這個(gè)過(guò)程可以通過(guò)兩種方式進(jìn)行:
a) 基于規(guī)則的提取: 使用預(yù)定義的規(guī)則來(lái)識(shí)別和提取常見(jiàn)的行為模式。b) 基于語(yǔ)言模型的提取: 使用大型語(yǔ)言模型(如GPT)來(lái)分析和總結(jié)任務(wù)執(zhí)行過(guò)程,生成抽象的工作流。
研究者發(fā)現(xiàn),基于語(yǔ)言模型的提取方法通常能產(chǎn)生更抽象、更通用的工作流,因此在實(shí)驗(yàn)中表現(xiàn)更好。
工作流提?。╓orkflow Induction)是AWM方法的核心步驟之一,論文中詳細(xì)描述了兩種主要的實(shí)現(xiàn)方式:基于規(guī)則的方法和基于語(yǔ)言模型的方法。我們來(lái)深入了解一下這兩種方法的具體實(shí)現(xiàn)細(xì)節(jié)。
1. 基于規(guī)則的方法(Rule-based Induction)
基于規(guī)則的方法主要包括兩個(gè)步驟:經(jīng)驗(yàn)去重和無(wú)效動(dòng)作過(guò)濾。
1.1 經(jīng)驗(yàn)去重
目的:從多個(gè)相似的任務(wù)執(zhí)行經(jīng)驗(yàn)中提取出獨(dú)特的工作流。
實(shí)現(xiàn)步驟:
- 提取動(dòng)作序列:
例如,從軌跡CLICK('12') → CLICK('30') → TYPE('44', "cat") 中提取出CLICK → CLICK → TYPE。
- 按動(dòng)作序列分組:
- 將具有相同動(dòng)作序列的經(jīng)驗(yàn)分到一組。
- 隨機(jī)選擇:
- 從每組中隨機(jī)選擇n個(gè)經(jīng)驗(yàn)(默認(rèn)n=1)作為該組的代表。
- (針對(duì)WebArena)額外的模板去重:
- 如果有任務(wù)模板信息,再按模板分組。
- 從每個(gè)模板組中隨機(jī)選擇n個(gè)經(jīng)驗(yàn)(默認(rèn)n=1)。
1.2 無(wú)效動(dòng)作過(guò)濾
目的:移除無(wú)法在環(huán)境中成功執(zhí)行的動(dòng)作步驟。
實(shí)現(xiàn)步驟:
- 設(shè)定規(guī)則:
例如,CLICK和TYPE動(dòng)作的第一個(gè)參數(shù)必須是字符串格式的整數(shù)(代表環(huán)境中元素的ID)。
- 應(yīng)用規(guī)則:
- 遍歷每個(gè)動(dòng)作,檢查是否符合規(guī)則。
- 移除不符合規(guī)則的動(dòng)作。
- 生成最終工作流:
- 保留經(jīng)過(guò)過(guò)濾后的有效動(dòng)作序列作為工作流。
示例:輸入軌跡:CLICK(12) → CLICK('12') → CLICK('30') → TYPE(44, "cat") → TYPE('44', "cat")?輸出工作流:CLICK('12') → CLICK('30') → TYPE('44', "cat")
2. 基于語(yǔ)言模型的方法(LM-based Induction)
基于語(yǔ)言模型的方法利用大型語(yǔ)言模型(如GPT)來(lái)生成更抽象、更通用的工作流。
2.1 提示工程(Prompt Engineering)
研究者設(shè)計(jì)了特殊的提示模板,引導(dǎo)語(yǔ)言模型從給定的任務(wù)經(jīng)驗(yàn)中提取工作流。
提示模板的關(guān)鍵點(diǎn):
- 任務(wù)描述:要求模型從給定的網(wǎng)頁(yè)導(dǎo)航任務(wù)列表中提取常見(jiàn)工作流。
- 輸入格式說(shuō)明:每個(gè)任務(wù)包含一個(gè)自然語(yǔ)言指令和一系列解決任務(wù)的動(dòng)作。
- 輸出要求:
找出多個(gè)任務(wù)中重復(fù)出現(xiàn)的動(dòng)作子集。
將每個(gè)重復(fù)子集提取為一個(gè)工作流。
每個(gè)工作流應(yīng)該是常用的子例程,至少包含兩個(gè)步驟。
使用描述性變量名代替具體的輸入文本或按鈕字符串。
Given a list of web navigation tasks, your task is to extract the common workflows.
Each given task contains a natural language instruction, and a series of actions to solve the task. You need to find the repetitive subset of actions across multiple tasks, and extract each of them out as a workflow.
Each workflow should be a commonly reused sub-routine of the tasks. Do not generate similar or overlapping workflows. Each workflow should have at least two steps. Represent the non-fixed elements (input text, button strings) with descriptive variable names as shown in the example.
2.2 工作流生成
語(yǔ)言模型基于提供的任務(wù)經(jīng)驗(yàn)和提示,生成抽象的工作流。
生成的工作流通常包含:
- 工作流描述:簡(jiǎn)要說(shuō)明工作流的目標(biāo)或功能。
- 工作流軌跡:包含多個(gè)步驟,每個(gè)步驟包括:
環(huán)境描述:當(dāng)前網(wǎng)頁(yè)狀態(tài)的文本描述。
推理過(guò)程:解釋為什么要執(zhí)行下一步動(dòng)作。
具體動(dòng)作:可執(zhí)行的程序化動(dòng)作。
示例工作流:
## 在電商網(wǎng)站搜索產(chǎn)品
工作流描述:此工作流用于在電商網(wǎng)站上搜索特定產(chǎn)品。
工作流軌跡:
[環(huán)境描述] 當(dāng)前頁(yè)面顯示搜索框。
[推理] 我需要在搜索框中輸入產(chǎn)品名稱。
[動(dòng)作] fill('搜索框ID', '{產(chǎn)品名稱}')
[環(huán)境描述] 搜索結(jié)果頁(yè)面已加載。
[推理] 我需要點(diǎn)擊最相關(guān)的產(chǎn)品鏈接。
[動(dòng)作] click('{最相關(guān)產(chǎn)品鏈接ID}')
3. 兩種方法的比較
研究者發(fā)現(xiàn),基于語(yǔ)言模型的方法通常能產(chǎn)生更好的結(jié)果:
- 更抽象:生成的工作流更容易泛化到不同的任務(wù)和網(wǎng)站。
- 更細(xì)粒度:能夠捕捉到更精細(xì)的操作模式。
- 更靈活:可以根據(jù)上下文生成適應(yīng)性更強(qiáng)的工作流。
然而,基于規(guī)則的方法也有其優(yōu)勢(shì):
- 計(jì)算效率高:不需要大型語(yǔ)言模型,處理速度更快。
- 確定性:結(jié)果更可預(yù)測(cè),便于調(diào)試和優(yōu)化。
在實(shí)際應(yīng)用中,研究者主要使用基于語(yǔ)言模型的方法,因?yàn)樗墚a(chǎn)生更高質(zhì)量、更通用的工作流,從而在各種測(cè)試場(chǎng)景中取得更好的性能。
通過(guò)這種精心設(shè)計(jì)的工作流提取過(guò)程,AWM能夠從AI助手的歷史經(jīng)驗(yàn)中學(xué)習(xí)到有用的操作模式,這些模式后續(xù)可以被用來(lái)指導(dǎo)AI助手更有效地完成新的任務(wù)。這就是AWM方法效果顯著的關(guān)鍵所在。
2. 工作流整合 (Workflow Integration)
一旦提取出工作流,AWM會(huì)將這些工作流整合到AI助手的記憶中。這個(gè)過(guò)程就像是給AI助手一本"操作手冊(cè)",里面包含了各種常見(jiàn)任務(wù)的執(zhí)行步驟。
3. 工作流使用 (Workflow Utilization)
當(dāng)AI助手面對(duì)新任務(wù)時(shí),它會(huì)先查閱自己的"操作手冊(cè)",看看有沒(méi)有適用的工作流。如果找到了相關(guān)的工作流,AI助手就會(huì)參考這個(gè)工作流來(lái)執(zhí)行任務(wù),而不是從零開(kāi)始摸索。
AWM的兩種工作模式
AWM有兩種主要的工作模式:離線模式(Offline)和在線模式(Online)。
- 離線模式(AWM Offline):
- 在任務(wù)執(zhí)行之前,使用已有的訓(xùn)練數(shù)據(jù)來(lái)提取工作流。
- 適用于有大量高質(zhì)量訓(xùn)練數(shù)據(jù)的場(chǎng)景。
- 優(yōu)點(diǎn)是可以提前準(zhǔn)備好工作流,執(zhí)行任務(wù)時(shí)更快。
- 在線模式(AWM Online):
- 在執(zhí)行任務(wù)的過(guò)程中實(shí)時(shí)提取和使用工作流。
- 適用于沒(méi)有現(xiàn)成訓(xùn)練數(shù)據(jù),或者任務(wù)環(huán)境經(jīng)常變化的場(chǎng)景。
- 優(yōu)點(diǎn)是可以不斷學(xué)習(xí)和適應(yīng)新的任務(wù)環(huán)境。
這兩種模式各有優(yōu)勢(shì),研究者在不同的實(shí)驗(yàn)場(chǎng)景中都進(jìn)行了測(cè)試。
到這里,我們已經(jīng)對(duì)AWM的核心思想和工作原理有了基本的了解。在下一部分,我們將看看研究者是如何評(píng)估AWM的效果的,以及它在實(shí)際任務(wù)中表現(xiàn)如何。
AWM的實(shí)驗(yàn)評(píng)估
研究者們?yōu)榱巳鏈y(cè)試AWM的效果,選擇了兩個(gè)主要的網(wǎng)頁(yè)導(dǎo)航基準(zhǔn)測(cè)試:WebArena和Mind2Web。這兩個(gè)測(cè)試集涵蓋了各種不同類型的網(wǎng)頁(yè)任務(wù),從簡(jiǎn)單的信息查找到復(fù)雜的多步驟操作都有。讓我們來(lái)看看AWM在這些測(cè)試中的表現(xiàn)。
WebArena測(cè)試
## shopping: Browse Products in a Specific Category
To browse products in a specific category, I need to navigate to the relevant main category. I will start by hovering over the main category menu item to reveal the subcategories.
hover(’main category id’)
To browse products in the specific subcategory, I need to click on the subcategory link. click(’subcategory id’)
WebArena是一個(gè)包含812個(gè)網(wǎng)頁(yè)導(dǎo)航任務(wù)的測(cè)試集,涉及5個(gè)不同的網(wǎng)站,包括電子商務(wù)、社交論壇、軟件開(kāi)發(fā)協(xié)作平臺(tái)和內(nèi)容管理系統(tǒng)等。這個(gè)測(cè)試的特點(diǎn)是它可以嚴(yán)格評(píng)估AI助手執(zhí)行任務(wù)的功能正確性。
實(shí)驗(yàn)設(shè)置
研究者使用了GPT-4作為基礎(chǔ)模型,采用AWM的在線模式(AWM Online)進(jìn)行測(cè)試。這意味著AI助手在執(zhí)行測(cè)試任務(wù)的過(guò)程中,會(huì)不斷學(xué)習(xí)和使用新的工作流。
主要結(jié)果
- 整體成功率:
- AWM: 35.5%
- 基準(zhǔn)方法(BrowserGym): 23.5%
- 相對(duì)提升: 51.1%
- 平均步驟數(shù):
- AWM: 5.9步
- 基準(zhǔn)方法: 7.9步
這些結(jié)果表明,AWM不僅顯著提高了任務(wù)完成的成功率,還減少了完成任務(wù)所需的步驟數(shù),使AI助手的操作更加高效。
跨模板泛化能力
研究者還專門(mén)測(cè)試了AWM在不同任務(wù)模板之間的泛化能力。結(jié)果顯示,即使面對(duì)全新的任務(wù)類型,AWM仍然保持了較高的成功率(33.2%),遠(yuǎn)超基準(zhǔn)方法(20.5%)。
Mind2Web測(cè)試
# travel: enter flight locations
Given that you are on the flight booking page, this workflow enters the departure and destination city/airport for your flight.
[link] From Departure Airport or City Your Origin ? > CLICK [textbox] Origin City or Airport ? > TYPE: {your-origin-city}
[link] {best-popup-option} ? > CLICK
[link] To Destination Airport or City Your Destination ? > CLICK [textbox] Destination City or Airport ? > TYPE: {your-destination-city} [link] {best-popup-option} ? > CLICK
Mind2Web是另一個(gè)重要的測(cè)試集,它強(qiáng)調(diào)了跨任務(wù)、跨網(wǎng)站和跨領(lǐng)域的泛化能力。這個(gè)測(cè)試集包含了1000多個(gè)任務(wù),涉及200多個(gè)不同的網(wǎng)站和多個(gè)領(lǐng)域(如旅行、購(gòu)物、社交媒體等)。
實(shí)驗(yàn)設(shè)置
研究者在Mind2Web上同時(shí)測(cè)試了AWM的離線模式(AWM Offline)和在線模式(AWM Online)。
主要結(jié)果
- 跨任務(wù)測(cè)試:
- AWM Offline (GPT-4): 45.1% 步驟成功率
- 基準(zhǔn)方法(MindAct): 36.2% 步驟成功率
- 相對(duì)提升: 24.6%
- 跨網(wǎng)站測(cè)試:
- AWM Online: 33.9% 步驟成功率
- 基準(zhǔn)方法: 30.1% 步驟成功率
- 絕對(duì)提升: 3.8個(gè)百分點(diǎn)
- 跨領(lǐng)域測(cè)試:
- AWM Online: 35.5% 步驟成功率
- 基準(zhǔn)方法: 18.6% 步驟成功率
- 絕對(duì)提升: 16.9個(gè)百分點(diǎn)
這些結(jié)果清楚地表明,AWM在各種不同的場(chǎng)景下都能顯著提升AI助手的表現(xiàn),特別是在跨領(lǐng)域的任務(wù)中,improvement非常顯著。
結(jié)果分析
通過(guò)這些實(shí)驗(yàn),我們可以得出以下幾個(gè)重要的結(jié)論:
- 顯著提升性能: AWM無(wú)論在哪種測(cè)試場(chǎng)景下,都能顯著提升AI助手的任務(wù)完成能力。
- 更高效的執(zhí)行: 使用AWM的AI助手通常能用更少的步驟完成任務(wù),這說(shuō)明它學(xué)會(huì)了更有效的操作方式。
- 強(qiáng)大的泛化能力: AWM展現(xiàn)出了優(yōu)秀的跨任務(wù)、跨網(wǎng)站和跨領(lǐng)域泛化能力,這意味著它學(xué)到的工作流具有廣泛的適用性。
- 在線學(xué)習(xí)的優(yōu)勢(shì): 在一些場(chǎng)景下,特別是面對(duì)全新的領(lǐng)域時(shí),AWM的在線模式表現(xiàn)得更好,說(shuō)明實(shí)時(shí)學(xué)習(xí)和適應(yīng)的能力非常重要。
- 基礎(chǔ)模型的重要性: 實(shí)驗(yàn)結(jié)果顯示,使用更強(qiáng)大的基礎(chǔ)模型(如從GPT-3.5升級(jí)到GPT-4)可以進(jìn)一步提升AWM的效果。
本文轉(zhuǎn)載自 ??芝士AI吃魚(yú)??,作者: 芝士AI吃魚(yú)
