如何优化大型语言模型,让AI回应更智能、更准确?

什么是检索增强生成(RAG)?

检索增强生成(RAG)是一种优化大型语言模型输出的过程,它在生成回应之前会参考其训练数据源之外的权威知识库。大型语言模型(LLM)在大量数据上进行训练,使用数十亿参数来生成原创输出,以执行回答问题、翻译语言和完成句子等任务。RAG将LLM已经强大的能力扩展到特定领域或组织的内部知识库,而无需重新训练模型。这是一种成本效益高的方法,用于改进LLM的输出,使其在各种情境中保持相关性、准确性和实用性。

LLM是推动智能聊天机器人和其他自然语言处理(NLP)应用的关键人工智能(AI)技术。目标是创建能够通过参考权威知识源,在各种情境中回答用户问题的机器人。不幸的是,LLM技术的性质引入了LLM回应的不可预测性。此外,LLM训练数据是静态的,对它拥有的知识引入了一个截止日期。

LLM的已知挑战包括:

● 当没有答案时提供错误信息。

● 当用户期望具体、当前的回应时,提供过时或泛化的信息。

● 从非权威来源创建回应。

● 由于术语混淆而创建不准确的回应,不同的训练源使用相同的术语来讨论不同的事物。

你可以将大型语言模型想象为一个过于热情的新员工,他拒绝了解当前事件,但总是会满怀信心地回答每一个问题。不幸的是,这种态度可能会对用户信任产生负面影响,这不是你希望你的聊天机器人模仿的!

RAG是解决这些挑战的一种方法。它引导LLM检索来自权威、预先确定的知识源的相关信息。组织可以更好地控制生成文本输出,用户可以了解LLM如何生成回应。

为什么RAG是重要的?

LLM是推动智能聊天机器人和其他自然语言处理(NLP)应用的关键人工智能(AI)技术。目的是创建能够通过参考权威知识源,在不同情境中回答用户问题的机器人。遗憾的是,LLM技术的本质引入了对LLM响应的不可预测性。此外,LLM训练数据是静态的,对它掌握的知识设置了一个截止日期。

LLM面临的已知挑战包括:

● 当没有答案时提供错误信息。

● 当用户期望具体、当前的回应时,提供过时或泛化的信息。

● 从非权威来源创建回应。

● 由于术语混淆而创建不准确的回应,不同的训练源使用相同的术语来讨论不同的事物。

你可以将大型语言模型看作是一个过度热情的新员工,他拒绝了解当前事件,但总是会满怀信心地回答每个问题。不幸的是,这种态度可能会对用户信任产生负面影响,这并不是你希望你的聊天机器人模仿的!

RAG是解决这些挑战的一种方法。它引导LLM检索来自权威、预先确定的知识源的相关信息。组织可以更好地控制生成的文本输出,用户可以了解LLM如何生成回应。

RAG有什么好处?

检索增强生成(RAG)技术为组织的生成式人工智能工作带来了几个好处。

成本效益的实施

聊天机器人的开发通常是从基础模型开始的。基础模型(FMs)是可通过API访问的、在广泛的泛化和未标记数据上训练的大型语言模型(LLM)。为了使FMs适应组织或特定领域的信息,重新训练的计算和财务成本很高。RAG是引入新数据到LLM的更经济有效的方法。它使生成式人工智能(生成AI)技术更广泛地被接入和使用。

最新信息

即使LLM的原始训练数据源适合您的需求,保持相关性也是一个挑战。RAG允许开发人员提供最新的研究、统计数据或新闻给生成模型。他们可以使用RAG将LLM直接连接到实时社交媒体源、新闻网站或其他频繁更新的信息源。LLM可以向用户提供最新信息。

增强用户信任

RAG使LLM能够提供带有来源归属的准确信息。输出可以包括引用或参考来源。如果用户需要进一步的澄清或更多的细节,他们也可以自行查找源文件。这可以增加用户对您的生成AI解决方案的信任和信心。

更多开发者控制

使用RAG,开发者可以更有效地测试和改进他们的聊天应用程序。他们可以控制并更改LLM的信息来源,以适应不断变化的需求或跨功能使用。开发者还可以限制对不同授权级别的敏感信息检索,并确保LLM生成适当的回应。此外,如果LLM针对特定问题引用了错误的信息来源,他们还可以进行故障排除和修复。组织可以更有信心地为更广泛的应用实施生成AI技术。

RAG是如何执行的?

在没有RAG的情况下,LLM会接收用户输入并基于它所接受的训练信息(或它已经知道的内容)来创建回应。使用RAG后,引入了一个信息检索组件,它利用用户输入首先从新的数据源提取信息。用户查询和相关信息都提供给LLM。LLM使用新的知识和它的训练数据来创建更好的回应。以下部分提供了这一过程的概览。

创建外部数据

LLM原始训练数据集之外的新数据称为外部数据。它可以来自多个数据源,例如APIs、数据库或文档存储库。数据可能以文件、数据库记录或长文本等各种格式存在。另一种称为嵌入式语言模型的AI技术,将数据转换成数值表示并存储在向量数据库中。这个过程创建了生成AI模型可以理解的知识库。

检索相关信息

下一步是执行相关性搜索。用户查询被转换为向量表示并与向量数据库进行匹配。例如,考虑一个可以回答组织人力资源问题的智能聊天机器人。如果员工搜索“我有多少年假?”系统将检索年假政策文档以及个别员工的过去请假记录。这些特定文档将被返回,因为它们与员工的输入高度相关。相关性是通过数学向量计算和表示来计算和确定的。

增强LLM提示

接下来,RAG模型通过添加相关检索数据的上下文来增强用户输入(或提示)。这一步使用提示工程技术有效地与LLM通信。增强提示允许大型语言模型生成对用户查询的准确回答。

更新外部数据

接下来的问题可能是——如果外部数据变得陈旧怎么办?为了保持检索的当前信息,异步更新文档并更新文档的嵌入表示。您可以通过自动化实时过程或定期批处理来实现。这是数据分析中的一个常见挑战——可以使用不同的数据科学方法进行变更管理。

以下图表显示了使用RAG与LLM的概念流程。


 

检索增强生成(RAG)与语义搜索(semantic search)之间的区别是什么?

对于希望将大量外部知识源添加到其LLM应用程序中的组织来说,语义搜索增强了RAG的结果。现代企业在各种系统中存储了大量信息,如手册、常见问题解答、研究报告、客户服务指南和人力资源文件存储库。在大规模情况下进行上下文检索具有挑战性,因此降低了生成输出的质量。

语义搜索技术可以扫描大型异构信息数据库并更准确地检索数据。例如,它们可以通过将问题映射到相关文档并返回特定文本而不是搜索结果来回答诸如“去年在机械维修上花费了多少钱?”之类的问题。开发者然后可以使用该答案为LLM提供更多上下文。

RAG中的常规或关键字搜索解决方案在知识密集型任务中产生有限的结果。开发者还必须处理词嵌入、文档分块和在手动准备数据时的其他复杂性。相比之下,语义搜索技术完成了知识库准备的所有工作,因此开发者不必这样做。它们还生成按相关性排序的语义相关段落和词汇,以最大化RAG载荷的质量。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MIT 6s081 blog 1.xv6内存管理

xv6内存管理部分 xv6内存布局 内核地址空间 如xv6指导书中图3.3:从0x80000000开始的地址为内核地址空间,CLINT、PLIC、uart0、virtio disk等为I/O设备(内存映射I/O),可以看到xv6虚拟地址到物理地址的映射&#xff0…

国产芯片应用于安防音频接口的选型分析,96KHZ 立体声ADC且高性能

在人工智能兴起之后,安防市场就成为了其全球最大的市场,也是成功落地的最主要场景之一。对于安防应用而言,智慧摄像头、智慧交通、智慧城市等概念的不断涌现,对于芯片产业催生出海量需求。今天,我将为大家梳理GLOBALCH…

牛客周赛 Round 2 解题报告 | 珂学家 | 字符串hash + 打家劫舍型DP + 离线双指针

前言 在黎明到来之前,必须有人稍微照亮黑暗。 整体评价 比赛的时候,A题用了字符串Hash,哭了。B题是经典题,C是模拟题,很怕的. D也是经典题,离散双指针,套路满满。 A. 小红的环形字符串 因为长…

识别卷子怎么弄?分享3款神奇的试卷识别软件!

在当今信息爆炸的时代,随着科技的飞速发展,人工智能已经深入到我们生活的方方面面。其中,试卷识别软件作为教育领域的一大亮点,正逐渐受到越来越多的关注。这类软件不仅能帮助教师减轻批改试卷的负担,还能提高工作效率…

创建YonBIP模块项目

设置UAP HOME: 新建项目:File > New > Other > YonBuilder Premium Development 创建工程和模块成功 新建业务组件currtype 新建业务组件成功

Docker容器(二)安装与初体验wordpress

一、安装 1.1关闭SeLinux SeLinux(Security-Enhanced Linux)是一种基于Linux内核的安全模块,旨在提供更严格的访问控制和安全策略。它通过强制实施安全策略来限制系统资源的访问,从而保护系统免受恶意软件和未经授权的访问。 在…

探索金融管理硕士项目:中国社科院与美国杜兰大学携手培养未来金融精英

在当今竞争激烈的金融行业中,拥有卓越的专业知识和技能是取得成功的重要因素。而中国社科院与美国杜兰大学金融管理硕士项目,以其严谨的学术要求和实践导向的教学方法,为学生提供了绝佳的学习和成长机会。 中国社科院与美国杜兰大学金融管理硕…

深度探讨 Golang 中并发发送 HTTP 请求的最佳技术

💂 个人网站:【 海拥】【神级代码资源网站】【办公神器】🤟 基于Web端打造的:👉轻量化工具创作平台💅 想寻找共同学习交流的小伙伴,请点击【全栈技术交流群】 在 Golang 领域,并发发送 HTTP 请求…

Java学习(十八)--网络编程

介绍 需求 如何准确地定位网络上一台或多台主机; 定位主机上的特定的应用 找到主机后如何可靠高效地进行数据传输 目的 直接或间接地通过网络协议与其它计算机实现数据交换,进行通讯; 网络通信 网络:两台或多台设备通过一…

详解SpringCloud微服务技术栈:Nacos服务搭建及服务分级存储模型

👨‍🎓作者简介:一位大四、研0学生,正在努力准备大四暑假的实习 🌌上期文章:详解SpringCloud微服务技术栈:强推!源码跟踪分析Ribbon负载均衡原理、Eureka服务部署 📚订阅…

MIT 6s081 lab 1.Xv6 and Unix utilities

Lab1: Xv6 and Unix utilities 作业网址:https://pdos.csail.mit.edu/6.828/2020/labs/util.html Boot xv6(easy) 下载,启动xv6系统 $ git clone git://g.csail.mit.edu/xv6-labs-2020 Cloning into xv6-labs-2020... ... $ cd xv6-labs-2020 $ git …

解决jmeter响应乱码的问题

HTTP请求响应乱码 方法一:添加后置处理器BeanShell PostProcessor,写入【prev.setDataEncoding("utf-8")】 方法二:修改bin目录下的配置文件jmeter.properties,将配置修改为【sampleresult.default.encodingUTF-8】 J…

【LeetCode每日一题】82. 删除排序链表中的重复元素 II

2024-1-15 文章目录 [82. 删除排序链表中的重复元素 II](https://leetcode.cn/problems/remove-duplicates-from-sorted-list-ii/) 82. 删除排序链表中的重复元素 II 思路: 创建一个虚拟节点 dummy 作为头节点的前置节点。使用两个指针 pre 和 cur 分别指向前一个非…

光纤和光缆有何不同之处?

很多人会有这样的疑问,光纤和光缆有何不同之处?主要是因为光纤和光缆这两个名词容易引起混淆。在严格的定义下,光纤和光缆是两种不同的东西,然而在现实生活中,许多人仍然会混淆这两者。为了更好地理解光纤和光缆之间的…

全国博物馆数据, shp+excel数据,数据来源可靠,基于国家文物局发布的《2021年度全国博物馆名录》

数据名称: 全国博物馆数据 数据格式: shpexcel 数据几何类型: 点 数据坐标系: WGS84 数据来源:网络公开数据,数据名录来源于国家文物局发布的《2021年度全国博物馆名录》 数据字段: 序号字段名称字段说明1province省份名称2city城市名…

GoZero微服务个人探索之路(三)Go-Zero官方rpc demo示例探究

官方网址:https://go-zero.dev/docs/tasks/cli/grpc-demo 项目结构 demo包 两个文件均为protoc-gen-go-grpc自动生成构成一个完整的 gRPC 服务的定义和实现 democlient包 demo.go goctl生成的客户端代码 Request 和 Response 别名: 定义了 Request 和…

知识付费saas租户平台:揭秘成功的密码

明理信息科技知识付费saas租户平台 随着互联网的快速发展,人们越来越重视知识的获取和价值的挖掘。在这个信息爆炸的时代,知识付费已经成为了一种新的商业模式,为知识的传播和价值的转化提供了更加高效和便捷的途径。本文将探讨知识付费的发…

UI设计入门:解析用户界面的基础概念

UI设计是什么:用户界面设计的基础 用户的视觉体验。一个好的用户界面需要强大、可靠和良好的使用感。用户界面设计应尽量减少用户与产品互动的能量,使用户更容易实现目标。 以我们最熟悉的应用程序界面为例。通常,手机软件的UI用户界面设计…

LeetCode刷题---基本计算器

解题思路: 根据题意,字符串中包含的运算符只有和- 使用辅助栈的方法来解决该问题 定义结果集res和符号位sign(用于判断对下一数的加减操作),接着对字符串进行遍历。 如果当前字符为数字字符,判断当前字符的下一个字符是否也是数字字符&#x…
最新文章