HiQA:一種用于多文檔問(wèn)答的層次化上下文增強(qiáng)RAG 原創(chuàng)
前言
文檔領(lǐng)域的RAG,之前的工作如ChatPDF等很多的RAG框架,文檔數(shù)量一旦增加,將導(dǎo)致響應(yīng)準(zhǔn)確性下降,如下圖;現(xiàn)有RAG方法在處理具有相似內(nèi)容(在面對(duì)大量難以區(qū)分的文檔時(shí))和結(jié)構(gòu)的文檔時(shí)表現(xiàn)不佳;用戶查詢常常涉及元信息,還增加了檢索和生成的復(fù)雜性,導(dǎo)致檢索的準(zhǔn)確性會(huì)下降,本文介紹的方法-HiQA,一種用于主要解決多文檔問(wèn)答(MDQA)中的檢索增強(qiáng)生成方法。
數(shù)量多文檔RAG對(duì)著文檔數(shù)量的性能變化
方法
提出了HiQA框架,用于解決多文檔問(wèn)答中的檢索準(zhǔn)確性問(wèn)題。該框架主要由Markdown格式化器(Markdown Formatter)、分層上下文增強(qiáng)器(Hierarchical Contextual Augmentor, HCA)、多路徑檢索器(Multi-Route Retriever, MRR)三部分組成。
Markdown格式化器(Markdown Formatter)
該部分主要是使用大模型的方式指導(dǎo)文檔解析生成markdown的過(guò)程,這樣的比較耗費(fèi)時(shí)間,可以考慮替換成一些輕量的解析方法,常見(jiàn)的過(guò)程可以參考以往的一些文檔??《【文檔智能 & RAG】RAG增強(qiáng)之路:增強(qiáng)PDF解析并結(jié)構(gòu)化技術(shù)路線方案及思路》??
下面看看這篇文章介紹的過(guò)程:
首先,使用LLM將源文檔轉(zhuǎn)換為Markdown格式的文檔,每個(gè)章節(jié)對(duì)應(yīng)一個(gè)自然段落,包含章節(jié)元數(shù)據(jù)和內(nèi)容。LLM的處理過(guò)程如下:
其中,DI是輸入的PDF文檔,DM是輸出的Markdown文檔,MC是語(yǔ)言模型,D(t)m是第個(gè)時(shí)間步的輸出。
對(duì)于圖片引用: 利用一個(gè)名為PDFImageSearcher的開(kāi)源工具,用于從文檔中提取位圖和SVG矢量圖 像,以及一個(gè)API來(lái)檢索圖像。它利用圖像周?chē)奈谋?、圖像標(biāo)題和一個(gè)可選的視覺(jué)語(yǔ)言模型,為每個(gè)圖像生成一個(gè)描述性文件。
對(duì)表格增強(qiáng):表格的語(yǔ)義值源自其定義,包括整體描述、標(biāo)題和行/列標(biāo)簽,因此,在嵌入表格時(shí),僅關(guān)注這些語(yǔ)義元素,將表格視為類(lèi)似文本知識(shí)。
表格嵌入。為了在嵌入過(guò)程中減少噪聲,省略了數(shù)據(jù)字段。但是,如果檢索到這些數(shù)據(jù)字段,它們將被保留以提供LLM的上下文
對(duì)圖片增強(qiáng):利用視覺(jué)語(yǔ)言生成模型來(lái)創(chuàng)建描述性標(biāo)題,這些標(biāo)題包含了圖像的顯著特征。然后對(duì)這些標(biāo)題進(jìn)行嵌入。
應(yīng)用視覺(jué)-語(yǔ)言模型生成圖像語(yǔ)義的文本描述,然后將其納入片段中
總之,為了得到高質(zhì)量的文檔處理結(jié)果,使用指令進(jìn)行生成markdown核心思想如下:
- 將文檔中的每一章,無(wú)論其級(jí)別如何,都視為Markdown中的一級(jí)標(biāo)題,并附上數(shù)字標(biāo)識(shí)符。將每章視為一個(gè)知識(shí)片段,而不是固定大小的塊。
- 設(shè)置正確的章節(jié)編號(hào),后面跟著章節(jié)標(biāo)題。
- 通過(guò)Markdown語(yǔ)法生成表格并記錄表格標(biāo)題。
分層上下文增強(qiáng)器(Hierarchical Contextual Augmentor, HCA)
使用級(jí)聯(lián)文檔結(jié)構(gòu)在數(shù)據(jù)處理過(guò)程中進(jìn)行文本增強(qiáng):
從Markdown文件中提取層次結(jié)構(gòu)元數(shù)據(jù),并將其級(jí)聯(lián)到每個(gè)章節(jié),形成增強(qiáng)的段落。具體步驟包括:
- 使用深度優(yōu)先搜索遍歷章節(jié)樹(shù),連接和傳遞元數(shù)據(jù)。
- 對(duì)文本、表格和圖像等不同類(lèi)型的段落進(jìn)行不同的處理。
多路徑檢索器(Multi-Route Retriever, MRR)
最后,采用多路徑檢索方法來(lái)找到最適合的段落,并將其作為上下文輸入到語(yǔ)言模型中。具體方法包括:
- 向量相似性匹配:使用Elasticsearch和BM25。
- 關(guān)鍵詞匹配:使用預(yù)訓(xùn)練的關(guān)鍵實(shí)體檢測(cè)模型提取關(guān)鍵詞。
- 補(bǔ)償向量相似性限制:結(jié)合基于頻率的檢索技術(shù)和關(guān)鍵詞排名策略。
綜合以上三個(gè)組件,形成了HiQA框架。公式如下:
其中,α、β是超參數(shù),分別平衡向量相似性和信息檢索得分的貢獻(xiàn),表示匹配的關(guān)鍵詞數(shù)量。
實(shí)驗(yàn)效果
總結(jié)
本文介紹了HiQA,這是一個(gè)專(zhuān)門(mén)為了解決現(xiàn)有RAG在多文檔問(wèn)答(MDQA)環(huán)境中的局限性而設(shè)計(jì)的新型框架,特別是在處理無(wú)法區(qū)分的多文檔時(shí)。利用文檔的結(jié)構(gòu)元數(shù)據(jù)有效地進(jìn)行塊分割和嵌入增強(qiáng),并輔以多路檢索機(jī)制以提高檢索效率。
參考文獻(xiàn)
- HiQA: A Hierarchical Contextual Augmentation RAG for Multi-Documents QA,https://arxiv.org/pdf/2402.01767v2
本文轉(zhuǎn)載自公眾號(hào)大模型自然語(yǔ)言處理 作者:余俊暉
