HtmlRAG开源,RAG系统联网搜索能力起飞~

网络是RAG系统中使用的主要外部知识来源,许多商业系统,如ChatGPT和Perplexity,都使用网络搜索引擎作为他们的主要检索系统。传统的RAG系统将网页的HTML内容转换为纯文本后输入LLM,这会导致结构和语义信息的丢失

HTML转换为纯文本时的信息丢失

为此,提出了HtmlRAG,它使用HTML而不是纯文本作为RAG系统中外部知识的格式。为了应对HTML带来的长上下文,提出了无损HTML清理基于两步块树的HTML修剪(Two-Step Block-Tree-Based
HtmlRAG总体概述
  • 无损HTML清理:这个清理过程仅移除完全不相关的内容,并压缩冗余结构,保留原始HTML中的所有语义信息。无损HTML清理压缩后的HTML适用于具有长上下文LLMs的RAG系统,并且不愿意在生成之前丢失任何信息。
  • 基于两步块树的HTML修剪:基于块树的HTML修剪包括两个步骤,这两个步骤都在块树结构上进行。第一步修剪使用嵌入模型为块计算分数,而第二步使用路径生成模型。第一步处理无损HTML清理的结果,而第二步处理第一步修剪的结果。
块分数计算。块树通过分词器转换为令牌树,相应的HTML标签和令牌用相同颜色标记。令牌生成概率在右上角显示,虚线框中的令牌不需要推理。在块树的右上角,显示了块概率,概率可以从相应的令牌概率中推导出来
生成模型Prompt
Input:**HTML**: “{HTML}”**Question**: **{Question}**Your task is to identify the most relevant text pieceto the given question in the HTML document. This textpiece could either be a direct paraphrase to the fact,or a supporting evidence that can be used to infer thefact. The overall length of the text piece should bemore than 20 words and less than 300 words. You shouldprovide the path to the text piece in the HTML document.An example for the output is: <html1><body><div2><p>Somekey information...Output:<html1><body><div2><p>At the historic 2018 Royal Rumble,Shinsuke Nakamura won the Men’s Royal Rumble. . .
在六个不同的问答数据集上进行了实验,包括模糊问答、自然问答、多跳问答和长形式问答,HtmlRAG在所有数据集上的表现均优于或等于现有的基于纯文本的后检索处理方法:BM25、BGE、E5-Mistral、LongLLMLingua、JinaAI Reader

https://arxiv.org/pdf/2411.02959HtmlRAG: HTML is Better Than Plain Text for Modeling Retrieved Knowledge in RAG Systemshttps://github.com/plageon/HtmlRAG

(文:PaperAgent)

欢迎分享

发表评论