谷歌推出AGREE,增强大模型生成回答准确性

2024-06-12 00:52

本文主要是介绍谷歌推出AGREE,增强大模型生成回答准确性,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ChatGPT、Gemini等文本理解、生成方面现出了前所未有的能力,极大地推动了生成式AI的技术创新。但这些模型在实际应用中有时会生成听起来合理,但实际上并不准确的“幻觉”内容,就是一本正经的胡说八道。

为了解决这一难题,谷歌研究院在官网发布了创新框架AGREE,可增强大模型生成内容和引用的准确性。

研究人员在Llama-2-13b等知名大模型进行了实验,结果显示,与现有方法相比,AGREE在提升内容回答准确性和引用性方面非常出色。

论文地址:https://arxiv.org/abs/2311.09533

图片

AGREE的核心技术是通过检索文档中的相关段落来增强大模型生成回答的事实基础,并提供相应的引用。这种方法不仅可以提高回答的准确性,还可以为用户提供验证信息真实性的途径,主要由训练阶段微调和测试时自适应两大块组成。

训练阶段微调

训练阶段微调是AGREE提升大模型自我归因能力的关键模块,在生成每一个回答时都能够提供支持其声明的可靠来源。

首先使用基础的大模型生成一系列回答,作为微调流程的起点。然后,使用了自然语言推理模型(NLI),来评估一个给定的段落是否支持一个特定的声明。在AGREE框架中,NLI模型被用来从未标记的查询中自动构建训练数据集。

图片

构建训练数据的过程包括将基础大模型生成的回答与检索到的文档进行匹配,NLI模型会为每个声明找到最相关的支持性段落,并将其作为引用附加到声明上;如果声明没有找到支持的段落,则被标记为未支持。

图片

在微调阶段,AGREE框架采用了LORA的轻量级微调技术,通过在大模型的权重矩阵上添加低秩更新,来实现高效且针对性的调整,有助于减少计算资源的消耗,同时保持模型的泛化能力。

测试时自适应

测试时自适应是一种动态、迭代的推理增强方法,可帮助大模型在面对新的内容查询时,能够主动地从大型语料库中检索相关信息,并对之前生成的回答进行补充和修正。这种方法与传统的静态回答生成方式不同,它强调的是在测试时不断优化和调整回答,以确保生成的内容尽可能准确和全面。

图片

测试时自适应的工作流程开始于接收到一个新的查询,经过微调的大模型会首先根据其训练阶段学到的知识生成一个初步的回答,然后进入一个自动迭代的过程,大模型会自我评估生成的回答,并识别出其中尚未归因或需要进一步支持的声明。

一旦识别出需要额外信息的声明,测试时自适应就会启动检索过程。这一过程涉及到在预先构建的语料库中搜索与未归因声明相关的段落。

这些段落被选出来后,大模型会尝试将它们与先前的回答结合起来,生成一个更加完善、准确的内容。同时会不断迭代循环,直至达到预定的推理效果或模型认为回答已足够完美为止。

本文素材来源AGREE论文,如有侵权请联系删除

END

图片

图片

这篇关于谷歌推出AGREE,增强大模型生成回答准确性的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1052738

相关文章

k8s admin用户生成token方式

《k8sadmin用户生成token方式》用户使用Kubernetes1.28创建admin命名空间并部署,通过ClusterRoleBinding为jenkins用户授权集群级权限,生成并获取其t... 目录k8s admin用户生成token创建一个admin的命名空间查看k8s namespace 的

Linux五种IO模型的使用解读

《Linux五种IO模型的使用解读》文章系统解析了Linux的五种IO模型(阻塞、非阻塞、IO复用、信号驱动、异步),重点区分同步与异步IO的本质差异,强调同步由用户发起,异步由内核触发,通过对比各模... 目录1.IO模型简介2.五种IO模型2.1 IO模型分析方法2.2 阻塞IO2.3 非阻塞IO2.4

Vue3 如何通过json配置生成查询表单

《Vue3如何通过json配置生成查询表单》本文给大家介绍Vue3如何通过json配置生成查询表单,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录功能实现背景项目代码案例功能实现背景通过vue3实现后台管理项目一定含有表格功能,通常离不开表单

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

Python从Word文档中提取图片并生成PPT的操作代码

《Python从Word文档中提取图片并生成PPT的操作代码》在日常办公场景中,我们经常需要从Word文档中提取图片,并将这些图片整理到PowerPoint幻灯片中,手动完成这一任务既耗时又容易出错,... 目录引言背景与需求解决方案概述代码解析代码核心逻辑说明总结引言在日常办公场景中,我们经常需要从 W

C#使用Spire.XLS快速生成多表格Excel文件

《C#使用Spire.XLS快速生成多表格Excel文件》在日常开发中,我们经常需要将业务数据导出为结构清晰的Excel文件,本文将手把手教你使用Spire.XLS这个强大的.NET组件,只需几行C#... 目录一、Spire.XLS核心优势清单1.1 性能碾压:从3秒到0.5秒的质变1.2 批量操作的优雅

Python使用python-pptx自动化操作和生成PPT

《Python使用python-pptx自动化操作和生成PPT》这篇文章主要为大家详细介绍了如何使用python-pptx库实现PPT自动化,并提供实用的代码示例和应用场景,感兴趣的小伙伴可以跟随小编... 目录使用python-pptx操作PPT文档安装python-pptx基础概念创建新的PPT文档查看

在ASP.NET项目中如何使用C#生成二维码

《在ASP.NET项目中如何使用C#生成二维码》二维码(QRCode)已广泛应用于网址分享,支付链接等场景,本文将以ASP.NET为示例,演示如何实现输入文本/URL,生成二维码,在线显示与下载的完整... 目录创建前端页面(Index.cshtml)后端二维码生成逻辑(Index.cshtml.cs)总结

Python实现数据可视化图表生成(适合新手入门)

《Python实现数据可视化图表生成(适合新手入门)》在数据科学和数据分析的新时代,高效、直观的数据可视化工具显得尤为重要,下面:本文主要介绍Python实现数据可视化图表生成的相关资料,文中通过... 目录前言为什么需要数据可视化准备工作基本图表绘制折线图柱状图散点图使用Seaborn创建高级图表箱线图热

SQLServer中生成雪花ID(Snowflake ID)的实现方法

《SQLServer中生成雪花ID(SnowflakeID)的实现方法》:本文主要介绍在SQLServer中生成雪花ID(SnowflakeID)的实现方法,文中通过示例代码介绍的非常详细,... 目录前言认识雪花ID雪花ID的核心特点雪花ID的结构(64位)雪花ID的优势雪花ID的局限性雪花ID的应用场景