「有效上下文」提升20倍!DeepMind發(fā)布ReadAgent框架
基于Transformer的大語言模型(LLM)具有很強的語言理解能力,但LLM一次能夠讀取的文本量仍然受到極大限制。
除了上下文窗口較小外,LLM的性能會隨著輸入內(nèi)容長度的增加而下降,即便輸入內(nèi)容未超過模型的上下文窗口長度限制也是如此。
相比之下,人類卻可以閱讀、理解和推理很長的文本。
LLM和人類在閱讀長度上存在差異的主要原因在于閱讀方法:LLM逐字地輸入精確的內(nèi)容,并且該過程相對被動;但過于準(zhǔn)確的信息往往會被遺忘,而閱讀過程更注重理解模糊的要點信息,即不考慮準(zhǔn)確單詞的內(nèi)容能記憶更長時間。
人類閱讀也是一個互動的過程,比如回答問題時還需要從原文中進行檢索。
為了解決這些限制,來自Google DeepMind和Google Research的研究人員提出了一個全新的LLM系統(tǒng)ReadAgent,受人類如何交互式閱讀長文檔的啟發(fā),將有效上下文長度增加了20倍。
論文鏈接:https://arxiv.org/abs/2402.09727
受人類交互式閱讀長文檔的啟發(fā),研究人員將ReadAgent實現(xiàn)為一個簡單的提示系統(tǒng),使用LLMs的高級語言功能:
1. 決定將哪些內(nèi)容存儲在記憶片段(memory episode)中;
2. 將記憶片段壓縮成稱為要點記憶的簡短片段記憶,
3. 如果ReadAgent需要提醒自己完成任務(wù)的相關(guān)細(xì)節(jié),則采取行動(action)來查找原始文本中的段落。
在實驗評估中,相比檢索、原始長上下文、要點記憶(gist memories)方法,ReadAgent在三個長文檔閱讀理解任務(wù)(QuALITY,NarrativeQA和QMSum)上的性能表現(xiàn)都優(yōu)于基線,同時將有效上下文窗口擴展了3-20倍。
ReadAgent框架
1. 要點記憶(gist memory)
要點記憶是原始長上下文中文本塊的短要點的有序集合,構(gòu)建gist記憶有兩個步驟:分頁(pagination)和記憶提要(memory gisting)。
片段分頁(episode pagination)
當(dāng)ReadAgent閱讀長文本時,通過選擇暫停閱讀的位置來決定在記憶片段中存儲哪些內(nèi)容。
每一步都會為LLM提供部分文本,從上一個暫停點開始,并在達(dá)到最大單詞數(shù)限制時結(jié)束;提示LLM選擇段落之間的哪個點將是自然的暫停點,然后將前一個和當(dāng)前暫停點之間的內(nèi)容視為一個episode,也可以叫做頁(page)。
記憶提要(memory gisting)
對于每一頁,提示LLM將確切的內(nèi)容縮短為要點或摘要。
2. 并行和順序交互查找
由于要點記憶與頁相關(guān),所以只需提示LLM來找出哪一頁更像是答案,并在給定特定任務(wù)的情況下再次閱讀,主要有兩種查找策略:同時并行查找所有頁面(ReadAgent-P)和每次查找一個頁面(ReadAgent-S)。
ReadAgent-P
比如說,在問答任務(wù)中,通常會給LLM輸入一個可以查找的最大頁數(shù),但也會指示其使用盡可能少的頁面,以避免不必要的計算開銷和干擾信息(distracting information)。
ReadAgent-S
順序查找策略中,模型一次請求一頁,在決定展開(expand)哪個頁面之前,先查看之前展開過的頁面,從而使模型能夠訪問比并行查找更多的信息,預(yù)期在某些特殊情況下表現(xiàn)得更好。
但與模型的交互次數(shù)越多,其計算成本也越高。
3. 計算開銷和可擴展性
片段分頁、記憶提要和交互式查找需要迭代推理,也存在潛在的計算開銷,但具體開銷由一個小因子線性約束,使得該方法的計算開銷不會輸入長度的增加而劇烈提升。
由于查找和響應(yīng)大多是條件要點(conditioned gists)而非全文,所以在同一上下文中的任務(wù)越多,成本也就越低。
4. ReadAgent變體
當(dāng)使用長文本時,用戶可能會提前知道要解決的任務(wù):在這種情況下,提要步驟可以在提示中包括任務(wù)描述,使得LLM可以更好地壓縮與任務(wù)無關(guān)的信息,從而提高效率并減少干擾信息,即條件ReadAgent
更通用的任務(wù)設(shè)置下,在準(zhǔn)備提要時可能不知道具體任務(wù),或者可能知道提出的要點需要用于多個不同的任務(wù),例如回答關(guān)于文本的問題等。
因此,通過排除注冊步驟中的任務(wù),LLM可以產(chǎn)生更廣泛有用的提要,代價是減少壓縮和增加干擾注意力的信息,即非條件ReadAgent。
這篇論文中只探討了無條件設(shè)置,但在某些情況下,條件設(shè)置可能更有優(yōu)勢。
迭代提要(iterative gisting)
對于一段很長的事件歷史,例如對話等,可以考慮通過迭代提要來進一步壓縮舊記憶來實現(xiàn)更長的上下文,對應(yīng)于人類的話,舊記憶更模糊。
實驗結(jié)果
研究人員評估了ReadAgent在三個長上下文問答挑戰(zhàn)中的長文檔閱讀理解能力:QuALITY、NarrativeQA和QMSum。
雖然ReadAgent不需要訓(xùn)練,但研究人員仍然選擇在訓(xùn)練集上開發(fā)了一個模型并在驗證、測試和/或開發(fā)集上進行了測試,以避免過擬合系統(tǒng)超參數(shù)的風(fēng)險。
選用的模型為指令微調(diào)后的PaLM 2-L模型。
評估指標(biāo)為壓縮率(compression rate, CR),計算方法如下:
LLM評分器
NarrativeQA和QMSum都有一個或多個自由形式的參考回復(fù),通常使用諸如ROUGE-F之類的語法匹配度量來評估。
除此之外,研究人員使用自動LLM評分器來評估這些數(shù)據(jù)集,作為人工評估的替代方法。
上面兩個提示中,「嚴(yán)格LLM評分器提示」用于判斷是否存在精確匹配,「許可LLM評分器提示」用于判斷是否存在精確匹配或部分匹配。
基于此,研究人員提出了兩個評價指標(biāo):LLM-Rating-1(LR-1)是一個嚴(yán)格的評估分?jǐn)?shù),計算所有示例中精確匹配的百分比;LLM-Rating-2(LR-2)計算精確匹配和部分匹配的百分比。
長上下文閱讀理解
QuALITY
QuALITY是一個多選問答任務(wù),每個問題包含四個答案,使用來自多個不同來源的文本數(shù)據(jù)。
實驗結(jié)果顯示,ReadAgent(查找1-5頁)實現(xiàn)了最好的結(jié)果,壓縮率為66.97%(即提要后上下文窗口中可以容納3倍的token)。
當(dāng)增加允許查找的最大頁數(shù)(最多5頁)時,性能會不斷提高;在6頁時,性能開始略有下降,即6頁上下文可能會增加干擾信息。
NarrativeQA
在三個閱讀理解數(shù)據(jù)集中,NarrativeQA的平均上下文長度最長,為了將gists放入上下文窗口,需要擴展頁面的尺寸大小。
提要對Gutenburg文本(書籍)的壓縮率為96.80%,對電影劇本的壓縮率為91.98%
QMSum
QMSum由各種主題的會議記錄以及相關(guān)問題或說明組成,長度從1,000字到26,300字不等,平均長度約為10,000字,其答案是自由形式的文本,標(biāo)準(zhǔn)的評估指標(biāo)是ROUGE-F
可以看到性能隨著壓縮率的降低而提高,因此查找更多頁面的技術(shù)往往比查找更少頁面的技術(shù)做得更好。
還可以看到ReadAgentS大大優(yōu)于ReadAgent-P(以及所有基線),性能改進的代價是檢索階段的請求數(shù)量增加了六倍。