大模型论文精选|| 多 LLM 文本摘要:创新方法与卓越成果

news/2025/3/10 21:37:15/文章来源:https://www.cnblogs.com/tunancbq/p/18687748

多LLM文本摘要:创新方法与卓越成果

论文

https://arxiv.org/abs/2412.15487

Multi-LLM Text Summarization 2412.15487

多LLM摘要框架在每一轮对话中有两个至关重要的步骤:生成和评估。根据使用的是多LLM去中心化摘要还是中心化摘要,这些步骤会有所不同。在这两种策略中,k个不同的大语言模型(LLM)都会生成文本的多样摘要。然而,在评估阶段,多LLM中心化摘要方法利用单个大语言模型来评估摘要并选择最佳摘要,而去中心化多LLM摘要则使用k个大语言模型进行评估。

方法

以使用5个大语言模型的示例来说明中心化和去中心化方法。

该方法处理的长文本输入可能长达数万字,这通常超出了大多数标准大语言模型的上下文窗口。为了解决这个问题,建立了一个两阶段的过程,包括对源文档进行分块,独立总结源文档的每个块,然后对连接的中间结果进行第二轮分块和总结 。在这两个阶段中,两种框架都允许多个大语言模型协作,最终生成整个原始参考文档高质量的单一最终摘要。

多LLM摘要框架概述

中心化多LLM摘要

  • 单轮:每个大语言模型都会被提示一次,然后收集它们的摘要。随后通过一个评估步骤来选择最佳的最终摘要。在单轮设置中,参与模型列表中的每个大语言模型Mj∈M,都会使用通用提示P独立生成相同输入文本的摘要。对于每个大语言模型Mj,输出为Sj =Mj(P,S),其中S代表输入文本。对所有Mj运行此步骤会产生一组摘要S = {S1,…,Sk}。从概念上讲,每个模型都贡献了其独特的视角,从而形成了多样化的候选摘要池,这对于后续评估阶段中稳健地选择摘要非常重要。

在收集到候选摘要集S后,一个中央代理C∈M会评估这些摘要。中央大语言模型C使用评估提示Pec来评估每个摘要的质量。正式表示为,E = C(Pec, S),其中E是中央大语言模型对所有候选摘要的评估结果。这包括选择最佳摘要(以匿名标识符表示)以及该评估的置信度得分(表示为0到10之间的整数)。通过对标识符进行去匿名化来恢复所选摘要Sj的文本,并将其设置为最终输出S∗。在单轮模式下,由于不再进行进一步的迭代,因此该过程到此结束。

  • 对话式:生成和评估阶段会重复多次。每个生成-评估过程被定义为一轮,并且定义了该过程结束或开始新一轮的条件,最多进行指定的最大轮数。对话式方法的第一轮与单轮过程类似。每个大语言模型Mj使用提示P从原始输入文本S生成初始摘要S(1)j :S(1) =Mj(P,S)。如果上一轮的评估结果置信度得分低于阈值,或者如果大语言模型未能输出可读的置信度得分,则流程进入下一轮。在第二轮及后续轮次中,会使用提示P(i)。后续轮次中的大语言模型既可以访问要总结的文本,也可以访问上一轮的摘要。具体来说,在第i>1轮中:S(i)j =Mj(P(i),S)。

第i>1轮的评估阶段在概念上与单轮设置类似,但现在是对在生成阶段刚刚生成的候选摘要Si = {S1(i), . . . , Sk(i)}进行评估。中央大语言模型C使用Pec评估这些候选摘要:E(i) = C(Pec, Si)。如果置信水平达到阈值,该过程终止,并且中央大语言模型选择的摘要被接受为S∗。否则,该过程进入下一轮摘要生成和评估。

去中心化多LLM摘要

  • 单轮:生成过程与中心化方法中的相同。多个大语言模型独立为输入文本生成摘要,从而获得摘要列表S = {S1,…,Sk}。在评估时,每个生成摘要的模型都会收到一个新的评估提示(该提示不包含置信水平),并且会收到要总结的文本以及所有代理(包括其自身)生成的摘要。更正式地说,收集模型偏好E(i), . . . , E(i) ,其中每个E(i)代表模型Mj在S(i),…,S(i)中选择的最佳摘要。当大多数模型选择相同的摘要时,就达成了收敛。当没有出现多数选择时,在单轮方法(tmax = 1)中,算法会从指定的决胜模型Mt中选择摘要。

  • 对话式:生成过程遵循与中心化方法相同的方法,生成摘要集S = S1 , . . . , Sk 。与单轮方法的一个关键区别在于条件再生机制:当第一轮未能达成共识时,后续轮次会使用一个新的提示,该提示包含先前评估生成的摘要。第一轮评估与单轮方法中的评估相同,但会使用新的生成提示进入额外的轮次。在单轮情况下,未达成共识会立即触发回退到决胜模型。相比之下,对话式方法会使用更新后的提示启动新的生成-评估轮次。这个过程会一直持续,直到出现多数共识或者达到最大轮数tmax。如果在tmax轮后仍未达成共识,算法将默认使用决胜机制。

实验设置

使用ArXiv和GovReport来评估摘要方法。使用ROUGE-1、ROUGE-L、BLEU-1和BLEU-4指标来评估大语言模型生成的摘要的质量。为了与多LLM方法进行比较,将GPT-3.5、GPT-4o、GPT-4o mini和LLaMA3–8B作为基线。所有模型都使用4K字符的块大小,最终摘要由生成的摘要连接而成。

评估

去中心化和中心化多LLM方法的结果。

多LLM方法在不同评估和决胜模型下的结果。

多LLM框架显著优于单LLM基线,在某些情况下提升高达3倍。

中心化多LLM方法的得分平均提高了73%,而去中心化方法的得分平均提高了70%。

仅使用两个大语言模型以及单轮的生成和评估就能带来显著的性能提升,这表明了该方法的成本效益。

该框架的有效性在不同的中央模型(评估器)和决胜模型中是一致的。

使用两个以上的大语言模型以及额外的生成和评估轮次并不会带来进一步的改进。

代码实现

from langchain_ollama import ChatOllamagemma2 = ChatOllama(model="gemma2:9b", temperature=0)
llama3 = ChatOllama(model="llama3:8b", temperature=0)
llama3_1 = ChatOllama(model="llama3.1:8b", temperature=0)prompt_initial_summary = """
Provide a concise summary of the text in around 160 words.
Output the summary text only and nothing else.

{text}

""".strip()prompt_subsequent_summary = """
Given the original text below, along with the summaries of that text by 3 LLMs,
please generate a better summary of the original text in about 160 words.
ORIGINAL:

{text}

Summary by agent_1:

{summary_1}

Summary by agent_2:

{summary_2}

Summary by agent_3:

{summary_3}

""".strip()prompt_decentralised_evaluation = """
Given the original text below, along with the summaries of that text by 3 agents,
please evaluate the summaries and output the name of the agent that has the best summary.
Output the exact name only and nothing else.
ORIGINAL:

{text}

Summary by agent_1:

{summary_1}

Summary by agent_2:

{summary_2}

Summary by agent_3:

{summary_3}

""".strip()prompt_centralised_evaluation = """
Given the initial text below, along with the summaries of that text by 3 LLMs,
please evaluate the generated summaries and output the name of the LLM has the best summary.
On a separate line indicate a confidence level between 0 and 10.
ORIGINAL:

{text}

Summary by agent_1:

{summary_1}

Summary by agent_2:

{summary_2}

Summary by agent_3:

{summary_3}

Remember, on a separate line indicate a confidence level between 0 and 10.
""".strip()prompt_concate = """
Provide a concise summary of the text in around 160 words.
Output the summary text only and nothing else.

{summaries}

""".strip()class SingleTurnCentralised():def __init__(self, models):self.models = modelsdef generate(self, text):summaries = []for model in self.models:summaries.append(model.invoke([{"role": "user", "content": prompt_initial_summary.format(text=text)}]).content)return summariesdef evaluate(self, text, summaries):response = gemma2.invoke([{"role": "user", "content": prompt_centralised_evaluation.format(text=text, summary_1=summaries[0], summary_2=summaries[1], summary_3=summaries[2])}]).contentwinner, *_, confidence = response.split()return winner, confidencedef __call__(self, chunks):summarised_chunks = []for chunk in chunks:summaries = self.generate(chunk)winner, confidence = self.evaluate(chunk, summaries)summarised_chunks.append(summaries[int(winner[-1]) -1])final_summary = gemma2.invoke([{"role": "user", "content": prompt_concate.format(summaries="\n".join(summarised_chunks))}]).contentreturn final_summarysingle_turn_centralised = SingleTurnCentralised([gemma2, llama3, llama3_1])
final_summary = single_turn_centralised(chunks)

LLM架构专栏文章

1. LLM大模型架构专栏|| 从NLP基础谈起
2.LLM大模型架构专栏|| 自然语言处理(NLP)之建模
3. LLM大模型架构之词嵌入(Part1)
4. LLM大模型架构之词嵌入(Part2)
5. LLM大模型架构之词嵌入(Part3)
6. LLM架构从基础到精通之循环神经网络(RNN)
7. LLM架构从基础到精通之LSTM
8. LLM架构从基础到精通之门控循环单元(GRUs)
9. 20000字的注意力机制讲解,全网最全
10. 深入探究编码器 - 解码器架构:从RNN到Transformer的自然语言处理模型
11. 2w8000字深度解析从RNN到Transformer:构建NLP应用的架构演进之路
欢迎关注公众号 柏企科技圈柏企阅文 如果您有任何问题或建议,欢迎在评论区留言交流!

本文由mdnice多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/873690.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

国产化板卡设计原理图:2018-基于双FT-M6678 DSP的3U VPX的信号处理平台

基于双FT-M6678 DSP的3U VPX的信号处理平台一、板卡概述该板卡是由我公司自主研发的基于3U VPX架构的信号处理板,该处理板包含2片 FT-M6678 DSP芯片,1片 Spartan-3系列XC3S200AN配置芯片,两片DSP分别有1路RapidIO x4连接至VPX背板,两片DSP之间通过Hyperlink x4和SGMII互联。…

国产化板卡设计原理图:2288-基于FMC接口的JFM7K325T PCIeX4 3U VPX接口卡

基于FMC接口的JFM7K325T PCIeX4 3U VPX接口卡 一、板卡概述 标准VPX 3U板卡, 基于JFM7K325T 芯片,pin_to_pin兼容FPGAXC7K410T-2FFG900 ,支持PCIeX8、64bit DDR3容量2GByte,HPC的FMC连接器,板卡支持各种接口输入,软件支持windows,Linux驱动。可应用于高性能计算,频域算…

vue template 转 jsx 写法及TS类型应用

vue 的响应式数据 + jsx 开发体验简直不要太好,心智负担确实小,简直完爆 react(纯属个人暴论),不足的地方就是生态了,这点确实比不过 react。 本文更侧重于 TS 类型的写法,毕竟初次接触 vue jsx 时,实在对其 TS 类型声明很不顺手。要说 vue 模板语法哪些 API 不能在 js…

团队任务分配与高效执行应该如何做?从这些方面合理调配

本文聚焦团队任务分配与高效执行,深度剖析团队协作中任务分配不合理、沟通协作障碍、目标不明确、缺乏有效监督反馈等痛难点,阐述团队协作的必要性,进而给出合理分配任务、加强沟通协作等解决方法,还推荐了相关工具,为提升团队效能提供指引 。一、团队协作的痛难点 (一)…

2025.1.23

今天正式开始YOLOv8的相关学习。 YOLOv8的架构设计主要体现在以下几个方面:1. 改进的特征提取网络    YOLOv8在特征提取网络方面进行了显著改进,采用了更深、更宽的网络结构,以提高对复杂场景的处理能力。CSPNet(Cross Stage Partial Network):    CSPNet的引入有…

Android平台从上到下,无需ROOT/解锁/刷机,应用级拦截框架的最后一环,SVC系统调用拦截。

Android平台从上到下,无需ROOT/解锁/刷机,应用级拦截框架的最后一环,SVC系统调用拦截。Android平台从上到下,无需ROOT/解锁/刷机,应用级拦截框架的最后一环 —— SVC系统调用拦截。☞ Github: https://www.github.com/iofomo/abyss ☜ 由于我们虚拟化产品的需求,需要支持…

Seq 日志: .NET 应用程序中集成与快速入门

Seq 是一个功能强大且易于使用的日志服务器,特别适合用于集中管理和可视化 .NET 应用程序的日志。它支持结构化日志记录,提供实时查询和分析功能,帮助开发者快速定位和解决问题。 安装和配置 SeqWindows 部署: 可以从 Seq 下载页面:https://datalust.co/download 获取最新…

折腾笔记[11]-使用rust进行直接法视觉里程计估计

使用rust实现了一个完整的直接法视觉里程计系统,能够通过比较两幅图像中的像素强度来估计相机的运动。它通过单层和多层的优化策略,结合图像金字塔和并行计算,提高了位姿估计的精度和效率。最终,代码输出了优化后的相机位姿变换矩阵,并可视化了投影点的位置。摘要 使用rus…

5 链路层

5 链路层 5.1 概述 节点(node):运行链路层协议的设备(主机、路由器、交换机、WiFi接入点) 链路(link):沿着通信路径连接相邻节点的通信信道 数据链路层(data link layer):将数据报封装在链路层帧(frame)中通过通信链路从一个节点传输到另一个节点 链路层提供的服务…

【动态规划】01背包专题

01背包在恰好等于的情况下求最小物品数 MELON的难题每个物品(石头)的价值w[i]就是其自己的个数,为1 体积题目已给出。 状态定义:f[i][j]表示在前i个物品中选,且体积总和恰好等于j需要的物品个数的最小值 初始化: f[i][0] = 0 , 1 <= i <= n f[0][j] = INF, 1 <=…

阿里开源语音克隆CosyVoice2 整合包

CosyVoice2 win整合包 语音克隆CosyVoice2 链接:https://pan.quark.cn/s/5e75615a5cd4 修改webui.py默认值: # 修改默认推理模式 mode_checkbox_group = gr.Radio(choices=inference_mode_list, label=选择推理模式, value=inference_mode_list[1])# 修改随机推理种子 seed =…

KeyClicker 为用户带来真实键盘打字声音体验的应用,再现机械键盘与打字机的打字感受

如果你是一名作家,或者对打字机的声音情有独钟,KeyClicker 将是你的理想选择。许多作家认为,打字机的声音能让他们更专注、更有创作灵感。虽然实体打字机的魅力独特,但它缺乏现代设备的便捷功能,例如高效的编辑与数字化操作。而使用 KeyClicker,你既能享受打字机的经典声…