我的学习笔记

土猛的员外

【翻译】高级RAG 03:使用RAGAs + LlamaIndex进行RAG评估

如果您已经为实际的业务系统开发了检索增强生成(Retrieval Augmented Generation, RAG)应用程序,那么您可能会关心它的有效性。换句话说,您想要评估RAG的性能。

此外,如果您发现您现有的RAG不够有效,您可能需要验证先进的RAG改进方法的有效性。换句话说,您需要进行评估,看看这些改进方法是否有效。

在本文中,我们首先介绍了由RAGAs(检索增强生成评估)提出的RAG的评估指标,这是一个用于评估RAG管道的框架。然后,我们解释了如何使用RAGAs + LlamaIndex实现整个评估过程。

RAG评价指标

简单地说,RAG的过程包括三个主要部分:输入查询、检索上下文和LLM生成的响应。这三个要素构成了RAG过程中最重要的三位一体,并且是相互依存的。

因此,可以通过测量这些三元组之间的相关性来评估RAG的有效性,如图1所示。

img

图1:RAG的有效性可以通过测量这些三元组之间的相关性来评估。图片来自作者。

论文总共提到了3个指标:忠实度、答案相关性和上下文相关性,这些指标不需要访问人工注释的数据集或参考答案。

阅读全文

【翻译】高级RAG 02:揭秘PDF解析

对于RAG,从文档中提取信息是一个不可避免的场景。确保从源头提取内容的有效性对于提高最终输出的质量至关重要

重要的是不要低估这个过程。在实现RAG时,解析过程中的信息提取不佳可能导致对PDF文件中包含的信息的理解和利用受到限制。

pass过程在RAG中的位置如图1所示:

img

图1:通过过程在RAG中的位置(红框)。图片来自作者。

在实际工作中,非结构化数据要比结构化数据丰富得多。如果这些海量的数据不能被解析,它们的巨大价值就无法实现。

在非结构化数据中,PDF文档占多数。有效地处理PDF文档还可以**极大地帮助管理其他类型的非结构化文档

本文主要介绍解析PDF文件的方法。它提供了有效解析PDF文档和提取尽可能多的有用信息的算法和建议

解析PDF的挑战

阅读全文

检索增强生成(RAG)是通过集成来自外部知识来源的附加信息来改进大型语言模型(大语言模型)的过程。这允许大语言模型产生更精确和上下文感知的反应,同时也减轻幻觉

自2023年以来,RAG已成为基于LLM的系统中最流行的架构。许多产品的功能都严重依赖于RAG。因此,优化RAG的性能,使检索过程更快,结果更准确成为一个至关重要的问题。

本系列文章将重点介绍先进的RAG技术,以提高RAG生成的质量。

朴素RAG回顾

朴素RAG的典型工作流程如图1所示。

img

图1:朴素RAG的典型工作流程。图片来自作者。

如图1所示,RAG主要包括以下几个步骤:

  1. 索引(indexing):索引过程是离线执行的关键初始步骤。首先清理和提取原始数据,将各种文件格式(如PDF、HTML和Word)转换为标准化的纯文本。为了适应语言模型的上下文约束,这些文本被分成更小、更易于管理的块,这个过程称为分块。然后使用Embedding模型将这些块转换为向量表示。最后,创建一个索引,将这些文本块及其向量Embeddings存储为键值对,从而实现高效和可扩展的搜索功能。
  2. 检索(Retrieval):用户查询用于从外部知识来源检索相关上下文。为了实现这一点,用户查询由编码模型处理,该模型生成语义相关的Embeddings。然后,在向量数据库上进行相似性搜索,检索最接近的k个数据对象。
  3. 生成(Generation):将用户查询和检索到的附加上下文填充到prompt模板中。最后,将检索步骤得到的增强prompt输入到LLM中。

    阅读全文

TorchV的RAG实践分享(四)——开放试用

从2023年11月29日开始启动公司(杭州萌嘉网络科技有限公司),到12月中旬开始研发TorchV,第一个对外试用版本终于开始接受试用了。

欢迎企业用户试用,共同探讨AI的企业应用落地。

下面的内容主要分为:

  • TorchV Bot产品介绍;
  • 有哪些可以说道的特性;
  • 如何试用?
  • 合作方式;
  • 附录1:RAG简要说明;
  • 附录2:TorchV Bot操作说明

一、TorchV Bot介绍

1.1 TorchV Bot是什么?

TorchV Bot是一款基于大语言模型(Large Language Model,后文简称LLM)和检索增强生成(Retrieval-augmented generation,后文简称RAG)技术的人工智能问答机器人,属于TorchV最主要的三款产品(Bot、Assistant和Analyst)中一款。

阅读全文

如何使用快速压缩将RAG的Prompt成本削减80%

这是一篇翻译文章,觉得确实很有启发,所以发出来大家一起看看。

我们现在做RAG应用,对于tokens确实很敏感,能省一些是一些吧,但是这篇文章是针对英文的,不知道对于中文支持的怎么样?

我们后面也会真正用起来,会再给大家汇报一下使用效果,或者会发布我们自己的改良方法。

感谢原作者:Iulia Brezeanu,原文和引用在文末。

推理过程是使用大型语言模型时消耗资金和时间成本的因素之一,对于较长的输入,这个问题会更加凸显。下面,您可以看到模型性能与推理时间之间的关系。

img

性能得分与推理吞吐量[1]

小型模型每秒生成更多的tokens,往往在Open LLM排行榜上得分较低。增加模型参数大小可以提高性能,但会降低推理吞吐量。这使得在实际应用中部署它们变得困难[1]。
提高LLMs的速度并减少资源需求将使其能够更广泛地被个人或小型组织使用。

对于提高LLM的效率,目前大家提出了不同的解决方案来,有些人会关注模型架构或系统。然而,像ChatGPT或Claude这样的专有模型只能通过API访问,因此我们无法改变它们的内部算法。

本文我们将讨论一种简单且廉价的方法,该方法仅依赖于改变输入给模型的方式——即提示压缩。

阅读全文

AI原生应用的思考——CUI、电动机窘境和2024发展猜想

开始

AI领域最近的风声:2024是RAG爆发年。

对于这些信息,我的理解是这样的:

LLMs属于Infra,属于大厂和已经被资本投资的“AI大厂”们玩的,2023年大部分的投资也都是大额的,聚焦在LLMs这一领域。但是LLMs要找到健康的商业模式,必须与更丰富的业务场景结合起来,就需要大量基于LLMs的应用去拓展市场,不论是toC还是toB。所以到了Q4,有些资本已经在讨论2024年的投资要更加分散,更关注AI原生应用。作为基于LLMs应用支撑技术的RAG,也就必然会被特别关注,我想这就是所谓的2024是RAG爆发年的道理了。

但是今天我不是来讨论RAG的,虽然公众号“土猛的员外”是有很明显的RAG标签的,我今天更想讨论的是AI原生应用(AI-Native App)这个话题:

  • 什么是AI原生应用?
  • AI原生应用有什么不同之处?
  • AI原生应用的猜想

什么是AI原生应用?

ainative

图1:什么是AI原生应用?图片来源:bohdankit.com

当电动机出现时

在讲什么是AI原生应用之前,我们可以先来看看电动机在最开始时候的应用。

阅读全文

TorchV的RAG实践分享(1)——如何应用、技术选型和RAG知识目录

logo
图1:TorchV的LOGO

主要内容:

RAG在我们产品体系中的定位;

TorchV RAG的技术选型;

RAG知识目录

0.开始

从9月份开始在微信公众号分享RAG技术以来,收获了很多来自业界的认可和鼓励,所以11月中旬从老东家离职之后就和小明开始了创业之旅——创建了TorchV品牌,主要是围绕RAG+LLM的产品研发和应用销售。经过一个多月的努力,我们已经有了一个基础架构和一个产品。当然和规划中的成型战力还有一定的距离,但是依然可以分享一下RAG在TorchV产品体系中应用情况,主要包含以下三个问题:

  • TorchV如何围绕RAG打造产品体系?
  • TorchV RAG的技术选型;
  • 常见问题。

阅读全文

通过5个参数控制RAG在不同场景下的准确度

昨晚和小明在讨论elasticsearch的检索,整整写了三黑板。主要原因是elasticsearch的检索有knn(其实是ann,前面文章有讲过)和bm25两种,如何在不同的场景(针对不同客户)设置不同的boost比例就变得非常重要。昨晚讨论的最终结果是在针对不同的客户(租户)都分别拉出五个参数,便于在面对不同客户场景时可以将检索准确度做到最佳

可以简单展示一下其中的三个参数:

  • boost:这是es自带的参数,取值0-1,一般是用来控制混合检索中BM25和KNN的分值占比的。我们内部会写成boost * BM25_SCORE+(1-boost) * KNN_SCORE。也就是说,boost=1,那么就完全用BM25的得分来排序了,以此类推;
  • kms:kNN_min_score,取值0-1,这是用来设置重排之后的knn得分最小值,低于这个值,我们认为RAG检索无召回。比如kms=0.6,就是重排之后得分低于0.6的结果都不需要。如果所有召回的结果都低于0.6,那么就看下一个参数f_llm
  • f_llm:finally_llm,True | False,默认是False。如果设置成True,那么在某次检索中所有召回结果分值都低于kms的时候,系统会将用户的原始Query直接给到LLM。否则,系统会告诉用户,“据已知资料,无法回答您的问题!”

阅读全文

LLM企业应用调查报告——使用方式、问题和展望

看到O’Reilly的调查好文,翻译转发分享给大家。

本文的主要内容:

  • 企业是如何使用生成式AI的?
  • 在使用中遇到了哪些瓶颈?
  • 企业希望生成式AI可以解决哪些缺陷和差距?

生成式AI是2023年最大的科技故事。几乎每个人都玩过ChatGPT、Stable Diffusion、GitHub Copilot或Midjourney。一些人甚至试用了Bard或Claude.ai,或者在他们的笔记本电脑上运行Llama(或Llama.cpp)。每个人都对这些语言模型和图像生成程序将如何改变工作的本质迎来奇点甚至可能毁灭人类有着自己的看法。在企业中,我们看到了从大规模采用,到严格限制,甚至禁止使用生成式AI的风向变化。

现实是什么?我们想知道人们到底在做什么,所以在9月份我们调查了O’Reilly的用户。我们的调查重点是:

  • 企业是如何使用生成式AI的?
  • 在使用中遇到了哪些瓶颈?
  • 企业希望生成式AI可以解决哪些缺陷和差距?

调查报告主要内容

阅读全文