最高20倍!压缩ChatGPT等模型文本提示,极大节省AI算力
在长文本场景中,ChatGPT等大语言模型经常面临更高算力成本、更长的延迟以及更差的性能。为了解决这三大难题,微软开源了LongLLMLingua。
据悉,LongLLMLingua的核心技术原理是将“文本提示”实现最高20倍的极限压缩,同时又可以准确评估提示中内容与问题的相关程度,消除无关内容保留关键信息,达到降本增效目的。
实验结果显示,经过LongLLMLingua压缩后的提示,比原始提示的性能提升了17.1%,同时输入GPT-3.5-Turbo的tokens减少了4倍。在LongBench和ZeroScrolls测试中显示,每1,000个样本节省28.5美元和27.4美元的成本。
当压缩约10k tokens的提示,压缩率在2-10倍范围内时,端到端延迟可以降低1.4-3.8倍,显著加速了推理速率。

论文地址:https://arxiv.org/abs/2310.06839
开源地址:https://github.com/microsoft/LLMLingua
从介绍论文来看,LongLLMLingua主要由问题感知的粗细粒度压缩、文档重排序、动态压缩比率和压缩后子序列恢复4大模块组成。
问题感知的粗粒度压缩模块
该模块的设计思路是,使用问题文本进行条件化,评估每个段落与问题的相关程度,保留相关度更高的段落。

具体来说,通过计算问题文本与各段落的条件困惑度,判断二者的逻辑关联程度,条件困惑度越低表示相关性越高。
在此基础上,设置阈值保留困惑度较低的段落,过滤掉与问题不相关的段落。这实现了根据问题快速移除大量冗余信息的粗粒度压缩。
文档重排序模块
研究表明,在提示中,靠近开始和结束位置的内容对语言模型的影响最大。所以该模块根据各段落的相关程度对其进行重新排序,使关键信息出现在对模型更敏感的位置,减少中间位置信息损失。
通过利用粗粒度压缩模块计算出的各段落与问题的关联度,对段落进行排序,使关联度最高的段落排在最前面。这进一步增强了模型对关键信息的感知。

在获取重排序后的相关段落后,需要进一步压缩每个段落内的词量。此时动态压缩比率模块对提示进行精细调控。
动态压缩比率模块
对更相关的段落使用更低的压缩比率,分配更多的保留词语预算,而对相关性较弱的段落则使用更高的压缩比率。

通过利用粗粒度压缩结果中的段落关联度,动态确定每个段落的压缩比率。关联度最高的段落压缩比率最低,依次类推。
实现自适应、细粒度的压缩控制,有效保留关键信息。压缩后还需要提高结果的可靠性,这就需要下面的压缩后子序列恢复模块。
压缩后子序列恢复模块
在压缩过程中,一些关键词可能被过度删除,影响信息的完整性,而该模块可以检测并恢复这些关键词。
工作原理是,利用源文本、压缩文本、生成文本之间的子序列关系,从生成结果中恢复完整的关键名词词组,修复压缩带来的信息缺失,提高结果的准确性。

整个过程有点像我们快速浏览文章、筛选信息、整合要点的工作流程等,使模型快速捕捉文本的关键信息,生成高质量的摘要。
LongLLMLingua实验数据
研究人员构建了一个基于Natural Questions的多文档问答数据集,其中每个示例包含一个问题及20个相关文档,并需要从这20个文档中查找到答案。
该数据集模拟了实际的搜索引擎和问答场景,可以评估模型在长文档中的问答性能。
此外,研究人员还采用了更为通用的长文本理解基准测试集,包括LongBench和ZeroSCROLLS,以评估方法在更广泛场景下的效果。
其中,LongBench覆盖单文档问答、多文档问答、文本摘要、少样本学习等任务,包含英文数据集。ZeroSCROLLS则包括文本摘要、问答理解、情感分析等典型语言理解任务。

在这些数据集上,研究人员比较了LongLLMLingua压缩后的提示与原始提示在大语言模型上的性能。同时,也与其他提示压缩方法进行了对比,如基于困惑度的LLMLingua和基于检索的方法,评估了LongLLMLingua的有效性。
实验结果显示,LongLLMLingua压缩后的提示在问答准确率、生成文本质量等指标上普遍优于原始提示。
例如,在NaturalQuestions上,压缩4倍的提示提升了17.1%的问答准确率。当压缩约10k tokens的提示,压缩率在2-10倍范围内时,端到端延迟可以降低1.4-3.8倍。这充分证明LongLLMLingua可以在压缩提示的同时提升关键信息提取。
百川智能发布闭源大模型Baichuan2-53B 并开放API
百川智能发布了闭源大模型Baichuan2-53B,该模型全面升级了Baichuan1-53B的各项能力。Baichuan2-53B在数学和逻辑推理能力上表现出显著的提升,并且通过高质量数据体系和搜索增强的方法极大降低了模型幻觉,是目前国内幻觉问题最低的大模型。站长网2023-09-25 11:32:560000得物发布全员信:精简5%左右人员 启动组织提效计划
潮流网购社区得物近期向全员发出公开信,宣布为了适应复杂市场环境并保持业务竞争力,公司决定启动组织提效计划,这将涉及裁减大约5%的岗位。得物表示,将与受影响的员工进行一对一沟通,并依法提供经济补偿及必要的支持。站长网2024-08-08 20:40:090000嵌入式、C语言位操作的一些常见用法归纳
分享关于位操作、寄存器配置的一些笔记:一、位操作简单介绍首先,以下是按位运算符:在嵌入式编程中,常常需要对一些寄存器进行配置,有的情况下需要改变一个字节中的某一位或者几位,但是又不想改变其它位原有的值,这时就可以使用按位运算符进行操作。下面进行举例说明,假如有一个8位的TEST寄存器:当我们要设置第0位bit0的值为1时,可能会这样进行设置:TEST=0x01;站长网2023-05-24 03:39:2800015继微信和淘宝之后 京东送礼功能上线
站长之家(ChinaZ.com)1月17日消息:近日,京东电商平台正式上线了全新的“送礼”功能,为用户提供了一种更为便捷和灵活的送礼方式。用户只需在京东搜索“京东送礼”或点击相关入口,即可进入该功能区域。据京东方面介绍,目前“京东送礼”功能并非覆盖所有商品,仅支持在“京东送礼”专区中展示的商品。不过,京东表示后续将逐步扩大支持该功能的商品规模,以满足更多用户的送礼需求。站长网2025-01-17 11:17:050000