HtmlRAG:利用 HTML 結(jié)構(gòu)化信息增強(qiáng) RAG 系統(tǒng)的知識(shí)檢索能力和準(zhǔn)確性 原創(chuàng) 精華
01、概述
在大型語(yǔ)言模型(LLM)逐漸普及的今天,檢索增強(qiáng)生成(Retrieval-augmented Generation,簡(jiǎn)稱RAG)技術(shù)逐漸成為提高AI知識(shí)處理能力、減少模型幻覺(jué)(hallucination)的關(guān)鍵手段。通過(guò)將外部知識(shí)庫(kù)和生成模型相結(jié)合,RAG為如ChatGPT等多種商業(yè)應(yīng)用提供了重要支持。然而,當(dāng)前RAG的實(shí)現(xiàn)方式仍面臨一項(xiàng)根本性挑戰(zhàn),即在知識(shí)處理過(guò)程中對(duì)HTML網(wǎng)頁(yè)結(jié)構(gòu)與語(yǔ)義信息的損失。
對(duì)于復(fù)雜的網(wǎng)頁(yè)內(nèi)容來(lái)說(shuō),將HTML文檔簡(jiǎn)單地轉(zhuǎn)換為純文本輸入往往會(huì)破壞原始格式,導(dǎo)致重要的上下文信息丟失,特別是表格類內(nèi)容。這一問(wèn)題長(zhǎng)期以來(lái)困擾著RAG系統(tǒng)的優(yōu)化。為了解決這個(gè)難題,中國(guó)人民大學(xué)高瓴人工智能學(xué)院和百川智能科技的研究團(tuán)隊(duì)提出了一種創(chuàng)新的解決方案——HtmlRAG,它通過(guò)HTML格式而非純文本的方式來(lái)傳遞和處理檢索到的知識(shí),從而保留更豐富的語(yǔ)義和結(jié)構(gòu)信息。
那么,HtmlRAG究竟是如何突破傳統(tǒng)RAG系統(tǒng)的局限性,并帶來(lái)顯著性能提升的呢?本文將為大家深入剖析。
02、為什么現(xiàn)有RAG系統(tǒng)在處理HTML時(shí)捉襟見(jiàn)肘?
在傳統(tǒng)的RAG實(shí)現(xiàn)中,開發(fā)者會(huì)使用多種方法優(yōu)化內(nèi)容流入模型的質(zhì)量。例如,LangChain和LlamaIndex等框架中常用的查詢改寫、檢索器、重排序器、精煉器、讀取器等組件,能夠增強(qiáng)文本檢索的準(zhǔn)確性。然而,這些方法在處理HTML內(nèi)容時(shí)卻面臨諸多瓶頸:
- HTML結(jié)構(gòu)的丟失:HTML具有豐富的結(jié)構(gòu)化標(biāo)簽,能夠傳遞表格、分區(qū)等語(yǔ)義信息,簡(jiǎn)單轉(zhuǎn)換為純文本會(huì)破壞這些結(jié)構(gòu),使得模型在理解內(nèi)容時(shí)喪失上下文。
- 現(xiàn)有精煉器的不足:當(dāng)前的內(nèi)容精煉方法主要依賴文本的分塊處理(chunking),在面對(duì)長(zhǎng)HTML內(nèi)容時(shí)顯得力不從心,且需要消耗大量計(jì)算資源,難以高效處理。
- 高昂的計(jì)算成本:長(zhǎng)HTML內(nèi)容需要大量的計(jì)算資源去精煉,而HTML中的CSS樣式、JavaScript代碼及注釋等非核心信息又會(huì)大大增加詞元數(shù)量,導(dǎo)致效率低下。
鑒于這些局限性,傳統(tǒng)RAG系統(tǒng)在面對(duì)復(fù)雜HTML內(nèi)容時(shí)表現(xiàn)出明顯的不足。而HtmlRAG的創(chuàng)新之處在于,它不僅能夠保留HTML的原始語(yǔ)義和結(jié)構(gòu)信息,還通過(guò)一套獨(dú)特的機(jī)制有效應(yīng)對(duì)HTML文檔的高詞元負(fù)擔(dān)。
03、HtmlRAG的核心技術(shù):從“純文本”到“HTML結(jié)構(gòu)”的轉(zhuǎn)變
HtmlRAG的核心理念在于直接使用HTML格式作為知識(shí)檢索的輸入,以最大限度保留網(wǎng)頁(yè)內(nèi)容的語(yǔ)義和結(jié)構(gòu)細(xì)節(jié)。為了有效處理復(fù)雜的HTML文檔,研究團(tuán)隊(duì)設(shè)計(jì)了一套創(chuàng)新的兩步式修剪機(jī)制,使系統(tǒng)能夠在不失去重要信息的前提下,將繁雜的HTML內(nèi)容高效處理為適合模型使用的格式。
Step 1:HTML清洗與樹形結(jié)構(gòu)轉(zhuǎn)換
首先,HtmlRAG將所有檢索到的HTML文檔進(jìn)行整合,并通過(guò)Beautiful Soup解析為單一的DOM樹。與傳統(tǒng)的DOM樹結(jié)構(gòu)相比,HtmlRAG采用了一種“塊樹”結(jié)構(gòu)(block tree),通過(guò)maxWords參數(shù)控制粒度。這樣一來(lái),系統(tǒng)能夠遞歸地將零碎的子節(jié)點(diǎn)合并為父節(jié)點(diǎn),形成較大的信息塊,并嚴(yán)格遵循單詞數(shù)限制。通過(guò)這種方式,系統(tǒng)能夠有效減少節(jié)點(diǎn)數(shù)量,顯著降低了復(fù)雜HTML結(jié)構(gòu)的處理難度。
Step 2:分步處理與語(yǔ)義精煉
在HTML文檔被清洗并轉(zhuǎn)換為塊樹結(jié)構(gòu)后,系統(tǒng)會(huì)進(jìn)入第二階段的處理。HtmlRAG首先利用嵌入模型對(duì)清洗后的HTML輸出進(jìn)行處理,初步篩選出核心內(nèi)容,接著通過(guò)生成模型對(duì)其進(jìn)一步優(yōu)化。這樣的分步處理方式既保留了HTML文檔的結(jié)構(gòu)性信息,又能夠避免長(zhǎng)文本造成的高計(jì)算消耗。
實(shí)驗(yàn)數(shù)據(jù):HtmlRAG在六個(gè)數(shù)據(jù)集上的表現(xiàn)勝出
在性能測(cè)試中,HtmlRAG表現(xiàn)出色,在六個(gè)數(shù)據(jù)集上全面超越了傳統(tǒng)的純文本處理方法。與常見(jiàn)的分塊精煉法(如LangChain的實(shí)現(xiàn))相比,HtmlRAG在處理HTML文檔時(shí)顯得更加精準(zhǔn),同時(shí)顯著減少了對(duì)結(jié)構(gòu)信息的損失。
研究表明,在重排序模塊中,基于嵌入的密集檢索器(dense retrievers)明顯優(yōu)于稀疏檢索器BM25,尤其是基于編碼器的BGE表現(xiàn)尤為出色。相較之下,基于解碼器的e5-mistral效果則稍遜一籌。此外,傳統(tǒng)的精煉器在長(zhǎng)HTML文檔的優(yōu)化上存在明顯不足,尤其是像LongLLMLingua這樣的模型會(huì)在純文本轉(zhuǎn)換中丟失大量結(jié)構(gòu)信息,而JinaAI-reader雖然可以從HTML輸入中生成Markdown,但在面對(duì)長(zhǎng)序列時(shí)存在逐字解碼的計(jì)算瓶頸。
這些實(shí)驗(yàn)數(shù)據(jù)驗(yàn)證了HtmlRAG利用HTML格式進(jìn)行知識(shí)處理的有效性,并表明了其在不同數(shù)據(jù)集上的廣泛適應(yīng)性。
04、HtmlRAG的應(yīng)用前景:引領(lǐng)RAG系統(tǒng)的新方向
HtmlRAG的成功不僅在于提升了RAG系統(tǒng)的知識(shí)處理能力,更開辟了基于HTML格式的知識(shí)檢索和處理的新方向。這一技術(shù)對(duì)于有復(fù)雜信息處理需求的應(yīng)用場(chǎng)景尤為關(guān)鍵。例如:
高結(jié)構(gòu)化內(nèi)容的AI應(yīng)用:HtmlRAG能夠保留并理解表格、列表、導(dǎo)航欄等高結(jié)構(gòu)化信息,使其在財(cái)務(wù)數(shù)據(jù)分析、法律文件解析等領(lǐng)域有廣泛的應(yīng)用潛力。
內(nèi)容復(fù)雜的網(wǎng)頁(yè)數(shù)據(jù)處理:在新聞、學(xué)術(shù)、技術(shù)文檔等信息密集型領(lǐng)域,HtmlRAG可以更好地保留內(nèi)容的語(yǔ)義與上下文,提供更可靠的回答。
長(zhǎng)文本的計(jì)算成本優(yōu)化:通過(guò)減少非必要信息的參與,HtmlRAG實(shí)現(xiàn)了高效的內(nèi)容處理,為開發(fā)者在構(gòu)建AI應(yīng)用時(shí)節(jié)省了大量資源。
面向未來(lái)的潛力
作為一種開創(chuàng)性的RAG方法,HtmlRAG提供了一個(gè)切實(shí)可行的解決方案,展示了HTML在AI應(yīng)用中的獨(dú)特優(yōu)勢(shì)。研究團(tuán)隊(duì)不僅證明了HTML格式在知識(shí)檢索和生成中的價(jià)值,還為未來(lái)基于HTML的知識(shí)處理方法指明了方向。借助HtmlRAG,我們可以想象,未來(lái)的RAG系統(tǒng)會(huì)逐步整合更多的HTML處理工具,進(jìn)一步提升內(nèi)容解析的精準(zhǔn)性和效率。
05、結(jié)語(yǔ)
HtmlRAG的推出標(biāo)志著RAG系統(tǒng)在知識(shí)檢索與處理上的一次重要突破。通過(guò)直接使用HTML格式,HtmlRAG在提升語(yǔ)義保真度和結(jié)構(gòu)信息保留方面表現(xiàn)出色,有效克服了傳統(tǒng)純文本方法的諸多缺陷。對(duì)于需要復(fù)雜信息處理的企業(yè)來(lái)說(shuō),這一技術(shù)不僅提供了即時(shí)的解決方案,更為未來(lái)的知識(shí)處理方式開辟了全新路徑。
可以預(yù)見(jiàn),隨著HtmlRAG這一技術(shù)的深入應(yīng)用和推廣,RAG系統(tǒng)在各行業(yè)的AI應(yīng)用中將展現(xiàn)出更強(qiáng)大的實(shí)力。在知識(shí)無(wú)比豐富的互聯(lián)網(wǎng)世界中,HtmlRAG將引領(lǐng)RAG技術(shù)的升級(jí)和進(jìn)化,讓AI在理解和處理復(fù)雜信息時(shí)更上一層樓。
參考:
本文轉(zhuǎn)載自公眾號(hào)Halo咯咯 作者:基咯咯
原文鏈接:??https://mp.weixin.qq.com/s/0djvZL-T_rJI_QhH2q1ZkQ??
