使用RAGAs + LlamaIndex进行RAG评估

LlamaIndex——RAG概述 目前,以下组件是 Transformation 对象:文本分割器、节点解析器、元数据提取器、Embeddingsmodel(查看我们支持的嵌入列表)。除了这些模块,我们可以自定义转换操作,例如import re], 阅读详情

原文地址:Using RAGAs + LlamaIndex for RAG evaluation

2024 年 2 月 5 日

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

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

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

RAG评价指标

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

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

img

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

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

此外,RAGAs网站引入了另外两个指标:上下文精度和上下文召回。

Faithfulness/Groundedness

Faithfulness指的是确保答案是基于给定的上下文。这对于避免错觉和确保检索到的上下文可以用作生成答案的理由非常重要。

如果分数低,则表明LLM的回答不符合检索到的知识,提供幻觉答案的可能性增加。例如:

img

图2:高Faithfulness答案和低Faithfulness答案。来源:https://docs.ragas.io/en/latest/concepts/metrics/faithfulness.html。

为了估计信度,我们首先使用LLM提取一组语句,**S(a(q))**。方法是使用以下prompt:

1
2
3
Given a question and answer, create one or more statements from each sentence in the given answer.
question: [question]
answer: [answer]

在生成**S(a(q))之后,LLM确定是否可以从c(q)**中推断出每个语句si。此验证步骤使用以下prompt执行:

1
2
3
4
5
Consider the given context and following statements, then determine whether they are supported by the information present in the context. Provide a brief explan ation for each statement before arriving at the verdict (Yes/No). Provide a final verdict for each statement in order at the end in the given format. Do not deviate from the specified format.

statement: [statement 1]
...
statement: [statement n]

最终的忠实度得分**F计算为 F = |V|/|S|** ,其中**|V|表示根据LLM支持的语句数,|S|**表示语句总数。

回答的相关性

这个度量度量生成的答案和查询之间的相关性。分数越高,相关性越好。例如:

img

图3:高相关性答案和低相关性答案。来源:https://docs.ragas.io/en/latest/concepts/metrics/answer_relevance.html。

为了估计答案的相关性,我们promptLLM根据给定的答案 a(q) 生成n个潜在问题 qi ,如下所示:

1
2
3
Generate a question for the given answer.

answer: [answer]

然后,我们利用文本Embedding模型获得所有问题的Embeddings。

对于每个 qi ,我们计算 sim(q, qi) 与原始问题 q 的相似性。这对应于Embeddings之间的余弦相似度。问题**q的答案相关性评分AR**计算方法如下:

img

上下文相关性

这是一个度量检索质量的指标,主要评估检索上下文支持查询的程度。分数低表明检索到的不相关内容数量较多,这可能会影响LLM生成的最终答案。例如:

img

图4:高上下文相关性和低上下文相关性。来源:https://docs.ragas.io/en/latest/concepts/metrics/context_relevancy.html。

为了估计上下文的相关性,使用LLM从上下文**(c(q))**中提取一组关键句子 (Sext) 。这些句子对于回答这个问题至关重要。prompt符如下:

1
2
3
4
Please extract relevant sentences from the provided context that can potentially help answer the following question. 
If no relevant sentences are found, or if you believe the question cannot be answered from the given context, 
return the phrase "Insufficient Information". 
While extracting candidate sentences you’re not allowed to make any changes to sentences from given context.

然后,在RAGAs中,使用以下公式在句子级别计算相关性:

img

上下文召回

该度量度量检索上下文与带注释的答案之间的一致性级别。它是使用地面真值和检索上下文计算的,值越高表示性能越好。例如:

img

图5:高上下文回忆和低上下文回忆。来源:Context Recall | Ragas

在实施时,要求提供地面真值数据。

计算公式如下:

img

上下文精准度

这个度量是相对复杂的,它被用来度量包含真实事实的所有相关上下文是否都排在最前面。分数越高表示精确度越高。

该指标的计算公式如下:

img

上下文精确的优势在于它能够感知排序效应。但是,它的缺点是,如果相关的召回很少,但是排名都很高,那么得分也会很高。因此,有必要结合其他几个指标来考虑总体效果。

采用RAGAs + LlamaIndex进行RAG评估

img

环境配置

安装ragas: pip install ragas。然后,检查当前版本。

1
2
(py) Florian:~ Florian$ pip list | grep ragas
ragas                        0.0.22

值得一提的是,如果您使用pip install git+https://github.com/explodinggradients/ragas.git安装最新版本(v0.1.0rc1),则不支持LlamaIndex。

然后导入相关库,设置环境变量和全局变量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import os
os.environ["OPENAI_API_KEY"] = "YOUR_OPENAI_KEY"
dir_path = "YOUR_DIR_PATH"

from llama_index import VectorStoreIndex, SimpleDirectoryReader

from ragas.metrics import (
    faithfulness,
    answer_relevancy,
    context_relevancy,
    context_recall,
    context_precision
)

from ragas.llama_index import evaluate

目录中只有一个PDF文件,使用的是论文“TinyLlama:一个开源的小型语言模型”。

1
2
(py) Florian:~ Florian$ ls /Users/Florian/Downloads/pdf_test/
tinyllama.pdf

使用LlamaIndex构建RAG查询引擎

1
2
3
documents = SimpleDirectoryReader(dir_path).load_data()
index = VectorStoreIndex.from_documents(documents)
query_engine = index.as_query_engine()

LlamaIndex默认使用OpenAI模型,LLM和Embedding模型可以通过ServiceContext轻松配置。

构建评估数据集

由于有些指标需要手动标注数据集,所以我自己编写了一些问题和相应的答案。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
eval_questions = [
    "Can you provide a concise description of the TinyLlama model?",
    "I would like to know the speed optimizations that TinyLlama has made.",
    "Why TinyLlama uses Grouped-query Attention?",
    "Is the TinyLlama model open source?",
    "Tell me about starcoderdata dataset",
]
eval_answers = [
    "TinyLlama is a compact 1.1B language model pretrained on around 1 trillion tokens for approximately 3 epochs. Building on the architecture and tokenizer of Llama 2, TinyLlama leverages various advances contributed by the open-source community (e.g., FlashAttention), achieving better computational efficiency. Despite its relatively small size, TinyLlama demonstrates remarkable performance in a series of downstream tasks. It significantly outperforms existing open-source language models with comparable sizes.",
    "During training, our codebase has integrated FSDP to leverage multi-GPU and multi-node setups efficiently. Another critical improvement is the integration of Flash Attention, an optimized attention mechanism. We have replaced the fused SwiGLU module from the xFormers (Lefaudeux et al., 2022) repository with the original SwiGLU module, further enhancing the efficiency of our codebase. With these features, we can reduce the memory footprint, enabling the 1.1B model to fit within 40GB of GPU RAM.",  
    "To reduce memory bandwidth overhead and speed up inference, we use grouped-query attention in our model. We have 32 heads for query attention and use 4 groups of key-value heads. With this technique, the model can share key and value representations across multiple heads without sacrificing much performance",
    "Yes, TinyLlama is open-source",
    "This dataset was collected to train StarCoder (Li et al., 2023), a powerful opensource large code language model. It comprises approximately 250 billion tokens across 86 programming languages. In addition to code, it also includes GitHub issues and text-code pairs that involve natural languages.",
]
eval_answers = [[a] for a in eval_answers]

指标选择和RAGAs评估

1
2
3
4
5
6
7
8
9
10
metrics = [
    faithfulness,
    answer_relevancy,
    context_relevancy,
    context_precision,
    context_recall,
]

result = evaluate(query_engine, metrics, eval_questions, eval_answers)
result.to_pandas().to_csv('YOUR_CSV_PATH', sep=',')

请注意,在缺省情况下,在RAGAs中使用OpenAI模型。

在RAGAs中,如果您想使用另一个LLM(如Gemini)使用LlamaIndex来评估,即使在调试了RAGAs的源代码之后,我也没有在RAGAs版本0.0.22中找到任何有用的方法。

最终代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import os
os.environ["OPENAI_API_KEY"] = "YOUR_OPENAI_KEY"
dir_path = "YOUR_DIR_PATH"

from llama_index import VectorStoreIndex, SimpleDirectoryReader

from ragas.metrics import (
    faithfulness,
    answer_relevancy,
    context_relevancy,
    context_recall,
    context_precision
)

from ragas.llama_index import evaluate

documents = SimpleDirectoryReader(dir_path).load_data()
index = VectorStoreIndex.from_documents(documents)
query_engine = index.as_query_engine()

eval_questions = [
    "Can you provide a concise description of the TinyLlama model?",
    "I would like to know the speed optimizations that TinyLlama has made.",
    "Why TinyLlama uses Grouped-query Attention?",
    "Is the TinyLlama model open source?",
    "Tell me about starcoderdata dataset",
]
eval_answers = [
    "TinyLlama is a compact 1.1B language model pretrained on around 1 trillion tokens for approximately 3 epochs. Building on the architecture and tokenizer of Llama 2, TinyLlama leverages various advances contributed by the open-source community (e.g., FlashAttention), achieving better computational efficiency. Despite its relatively small size, TinyLlama demonstrates remarkable performance in a series of downstream tasks. It significantly outperforms existing open-source language models with comparable sizes.",
    "During training, our codebase has integrated FSDP to leverage multi-GPU and multi-node setups efficiently. Another critical improvement is the integration of Flash Attention, an optimized attention mechanism. We have replaced the fused SwiGLU module from the xFormers (Lefaudeux et al., 2022) repository with the original SwiGLU module, further enhancing the efficiency of our codebase. With these features, we can reduce the memory footprint, enabling the 1.1B model to fit within 40GB of GPU RAM.",  
    "To reduce memory bandwidth overhead and speed up inference, we use grouped-query attention in our model. We have 32 heads for query attention and use 4 groups of key-value heads. With this technique, the model can share key and value representations across multiple heads without sacrificing much performance",
    "Yes, TinyLlama is open-source",
    "This dataset was collected to train StarCoder (Li et al., 2023), a powerful opensource large code language model. It comprises approximately 250 billion tokens across 86 programming languages. In addition to code, it also includes GitHub issues and text-code pairs that involve natural languages.",
]
eval_answers = [[a] for a in eval_answers]

metrics = [
    faithfulness,
    answer_relevancy,
    context_relevancy,
    context_precision,
    context_recall,
]

result = evaluate(query_engine, metrics, eval_questions, eval_answers)
result.to_pandas().to_csv('YOUR_CSV_PATH', sep=',')

请注意,在终端中运行程序时,可能不会完全显示Pandas数据框。为了查看它,您可以将其导出为CSV文件,如图6所示。

img

图6:最终结果。

从图6中可以明显看出,第四个问题“Tell me about starcoderdata dataset”全部为0。这是因为LLM无法给出答案。第二个和第三个问题的上下文精度为0,表明检索上下文中的相关上下文没有排在最前面。第二个问题的上下文召回为0,表明检索到的上下文与带注释的答案不匹配。

现在,我们来检查问题0至问题3。这些问题的答案相关性得分很高,表明答案和问题之间存在很强的相关性。此外,信度得分不低,这表明答案主要是从上下文推导或总结出来的,可以得出结论,答案不是由于LLM的幻觉而产生的。

此外,我们发现尽管我们的上下文相关性得分很低,gpt-3.5-turbo-16k (RAGAs的默认模型)仍然能够从中推断出答案。

从结果来看,这个基本的RAG系统显然还有很大的改进空间。

结论

一般来说,RAGAs为评估RAG提供了全面的指标,并提供了方便的调用。目前,RAG评价框架缺乏,RAGAs提供了一个有效的工具。

在调试RAGAs的内部源代码后,很明显RAGAs仍处于早期开发阶段。我们对其未来的更新和改进持乐观态度。

《Advanced RAG》-03-使用 RAGAs + LlamaIndex 进行 RAG 评估 文章首先介绍了 RAG 评估的三个主要部分:输入查询、检索上下文和 LLM 生成的响应。 提到了 RAGAs 提出的 RAG 评估指标,包括 Faithfulness、Answer Relevance 和 Context Relevance,以及 RAGAs 网站提供的两个额外指标:Context Precision 和 Context Recall。详细解释了每个指标的计算方法,并提供了一些示例。 最后,它介绍了使用 RAGAs 和 LlamaIndex 进行 RAG 评估的主要过程。 阅读详情

相关推荐

RAG学习(七)——RAG评估策略

RAG系统评估的三个关键维度 RAG(检索增强生成)系统的评估可分为三个层次:1)检索层关注文档召回率和排序质量(包括Recall@k、Precision@k、MRR、nDCG@k和MAP等指标);2)生成层评估语言质量和答案准确性(使用EM、F1、ROUGE等文本相似度指标);3)端到端层重点考察答案的可信度和可验证性(通过LLM判断或人工标注验证答案是否基于检索内容)。此外还需考虑延迟、吞吐量等工程指标。这种多维评估体系能全面衡量RAG系统的检索能力、生成质量和可信性。

m0_73944777的博客 910

深度测评 RAG 应用评估框架:指标最全面的 RAGas

本文介绍了如何使用 ragas 生成测试集,介绍了多个常用的 RAG 评估指标。本文生成测试集部分代码基于 ragas v0.1 版本编写,具有较多问题根本无法使用,升级 v0.2.0 后出现代码兼容问题无法运行,后续等我更新吧。评估部分 v0.2.0 是兼容的,并且我在 v0.1 下评估会报错类似等问题,在升级后完美解决了,也没有出现指标 NaN 或者 0 的情况,推荐使用。

m0_59235945的博客 1万+

RAG落地的最后一个环节:评估 RAG 应用

RAG应用评估的重要性与方法 在部署RAG应用前,评估是确保质量的关键环节。大模型输出的不确定性、知识库动态变化以及模型选择等问题,都要求建立科学的评估体系。评估依据包括输入问题、生成答案、上下文和参考答案四大要素。主要评估指标涵盖正确性、语义相似度、忠实度、上下文相关性和答案相关性等维度。这些评估能有效衡量回答质量、检测知识干扰,并为模型选择提供依据。定期评估对维护RAG应用的稳定性和准确性至关重要。

沐雪架构师 1130

Py之Ragas:Ragas(一款用于评估检索增强生成RAG流程的评估框架)的简介、安装、使用方法之详细攻略

​ Py之Ragas:Ragas(一款用于评估检索增强生成RAG流程的评估框架)的简介、安装、使用方法之详细攻略 目录 Ragas的简介 Ragas的安装 Ragas的使用方法 Ragas的简介 2023年5月15日,Ragas正式发布,这是一款用于评估检索增强生成(RAG)流程的评估框架。专门的解决方案,用于评估、监控和改进生产中的LLM和RAG应用的性能,包括用于生产质量监控的自定义模型。与创始人交谈 Ragas是一个框架,帮助您评估检索增强生成(RAG)流程。RAG表示一类LLM应用

头部AI社区如有邀博主AI主题演讲请私信—心比天高,仗剑走天涯,保持热爱,奔赴向梦想!低调,专注,谦虚,自律,反思,成长,还算比较正能量的博主,公益免费传播…内心特别想在AI界做出一些可以推进历史进程影响力的技术(兴趣使然,有点小情怀,也有点使命感呀 5494

《AI大模型开发笔记》企业RAG技术实战(二)

接上一篇《AI大模型开发笔记》企业RAG技术实战(一)

qq837993702的博客 1159

AI大模型探索之路-应用篇11:AI大模型应用智能评估(Ragas)

随着人工智能技术的飞速发展,AI大模型(LLM)已经成为了推动技术创新和应用的关键因素。这些大模型在语言理解、图像识别、自然语言生成等领域展现出了惊人的能力。然而,随着模型规模的增大,它们对计算资源的消耗、环境适应性、模型稳定性、安全性和可解释性等方面也提出了新的挑战。因此,对AI大模型进行智能评估变得至关重要,以确保它们在实际应用中的稳定性、可靠性和有效性。本文将详细介绍Ragas框架,一个专为AI大模型设计的智能评估工具。

寻道AI,探索AI无限可能! 5546

LLM之RAG实战(三十二)| 使用RAGAs和LlamaIndex评估RAG

第二个和第三个问题的上下文精度为0,表明检索到的上下文中的相关上下文没有排在最前面。此外,忠实度得分并不低,这表明答案主要是从上下文中得出或总结的,可以得出结论,答案不是由于LLM的幻觉而产生的。在RAGAs中,如果您想使用另一个LLM(如Gemini)来使用LlamaIndex进行评估,即使在调试了RAGAs的源代码后,我也没有在版本0.0.22中找到任何有用的方法。此外,我们发现,尽管我们的上下文相关性得分较低,gpt-3.5-turb-16k(RAGA的默认模型)仍然能够从中推断出答案。

wshzd的博客 4311

【AI大模型应用开发】【RAG评估】1. 通俗易懂:深度理解RAGAS评估方法的原理与应用

本文我们针对RAGAS评估方法进行详细介绍。我们将深入其原理,理解其评估指标背后是怎么实现的。都是我根据自己的理解用大白话解释,保证大家能看懂。

同学小张的博客 6412

高级 RAG 03:使用 RAGA + LlamaIndex 进行 RAG 评估

这是一个用于评估RAG管道的框架。

xx_nm98的博客 1729

Docker 安装 CentOS7

本文主要介绍了docker 下安装centos7。访问 CentOS 镜像库地址:https://hub.docker.com/_/centos?tab=tags&page=1。可以通过 Sort by 查看其他版本的 CentOS 。默认是最新版本 centos:latest 。 使用以下命令来查看是否已安装了 centos7: 启动centos容器,并把docker上centos的22端口映射到本机60001端口(端口号可以自己指定) 3、进入到Centos容器 4.安装ssh服务和网络必须软件

折腾java的博客 1万+

基于Android Studio的校园智能点餐系统开发实战(附完整源码与部署指南)

本文详细介绍了基于Android Studio开发校园智能点餐系统的完整流程,包括需求分析、环境搭建、数据库设计、客户端与后台功能实现。系统采用SSM框架和MySQL数据库,解决了校园食堂高峰期排队问题,提供高效的点餐体验。附完整源码与部署指南,助力开发者快速构建类似应用。

weixin_29015801的博客 560

RAG 03:运用 RAGAs 与 LlamaIndex 评估 RAG 应用

如果你已经为某个真实业务系统开发了检索增强生成(RAG)应用程序,可能会想了解该 RAG 应用的效果如何。换句话说,您可能想评估该 RAG App 的性能。

DEVELOPERAA的博客 1449

绕开华为通道,获取解锁码解锁BootLoader

刷机有风险,操作需谨慎,如果因为各种因素导致手机变砖无法开机,本教程概不负责,望悉知 前言 这篇文章的大多内容是根据我自己找的一篇文章《绕开华为通道,获取解锁码解锁BootLoader》来编写的,里面的大部分内容是文章的原内容。下面的都是我参考文章中做了一些小部分的修改,增加了我华为P8手机的一些操作,下面开始讲述我的解锁过程。 因为华为官方在2018年的七八月份吧,关闭了解锁码的申请通道,这...

Martin.Mu `s Special Column 5万+

ragas官方文档中文版(五十五)

摘要:使用Ragas、Phoenix和LlamaIndex构建与评估RAG管道 本指南介绍了一个结合Ragas、Phoenix和LlamaIndex的工作流,用于构建、评估和优化RAG(检索增强生成)系统。主要内容包括: 工具组合:使用Ragas生成合成测试数据并进行评估,Phoenix进行可视化追踪和聚类分析,LlamaIndex构建RAG管道。 实施步骤: 安装必要依赖 配置OpenAI API密钥 使用Ragas生成高质量合成测试数据(25个样本) 用LlamaIndex构建基础RAG管道 集成Pho

厚积薄发的博客 331

计算机毕业设计springboot基于微信平台的二次元手办商场小程序【附源码】

选题背景: 随着二次元文化的兴起和普及,越来越多的人开始对二次元角色产生了浓厚的兴趣和喜爱。手办作为二次元文化的重要载体之一,成为了许多二次元爱好者收藏和展示的对象。然而,在传统的线下手办商场中,消费者往往面临着时间、空间和选择的限制。因此,基于微信平台的二次元手办商场小程序应运而生。 选题意义: 首先,基于微信平台的二次元手办商场小程序能够打破地域限制,使得用户可以随时随地通过手机进行购物。无论是在家中、上班途中还是旅行中,用户都能够方便地浏览和购买自己喜欢的手办,极大地提高了购物的便利性和灵活性。

拉期程序 452

用VINS-Fusion跑通EuRoC数据集:Ubuntu22.04+ROS2环境下的保姆级评测指南

本文详细介绍了在Ubuntu22.04和ROS2 Humble环境下使用VINS-Fusion处理EuRoC数据集的完整流程。从环境配置、数据集转换到参数调优和性能评估,提供了一套全面的多传感器融合分析方案,帮助开发者在无人机精准定位场景中实现高效部署与优化。

weixin_29212867的博客 517

RAG-18-评估工具

它通过捕获LLM应用的轨迹(Traces),提供强大的可视化、切片和聚类分析能力,帮助开发者理解线上真实数据的表现。(1)准备数据集:根据官方文档,一个标准的评估数据集应包含 question(问题)、answer(RAG系统生成的答案)、contexts(检索到的上下文)以及 ground_truth(标准参考答案)这四列。RAGAS 的核心思想是通过分析问题(question)、生成的答案(answer)和检索到的上下文(context)三者之间的关系,来综合评估RAG系统的性能。来管理整个评估过程。

weixin_74301566的博客 258

MCP详解:手把手教你理解和如何使用各种开源MCP服务

MCP 作为一种开放协议,为 AI 模型与外部世界的连接提供了标准化的解决方案。它不仅降低了开发门槛,还极大地扩展了 AI 应用的边界。无论是开发者还是普通用户,都可以通过 MCP 更高效地利用 AI 技术,实现更多智能化的功能。

王哥儿聊AI的博客 6056

ragas官方文档中文版(六十六)

文章摘要 本文介绍了使用Ragas评估LlamaIndex智能体的操作指南,分为三个主要部分:1) 使用现成的Ragas指标(如AgentGoalAccuracy和ToolCallAccuracy)评估智能体目标达成度和工具调用准确性;2) 为CodeActAgent开发自定义评估指标,展示如何处理代码生成智能体的特殊需求;3) 评估查询引擎工具的表现。教程通过具体代码示例演示了如何设置评估环境、转换消息格式、执行评估并解读结果,特别强调了CodeActAgent利用代码执行的优势(如可组合性和对象管理)

厚积薄发的博客 306

072、LLC谐振变换器的谐振电容选型

文章摘要: 本文深入探讨了LLC谐振变换器中谐振电容的选型要点。作者通过实际案例指出,谐振电容的高频特性(如ESR、ESL)会显著影响LLC性能,导致死区振铃或EMI问题。对比薄膜电容(稳定性好但体积大)和MLCC(体积小但存在直流偏置与温漂缺陷),建议100W以上优先选薄膜电容。强调需关注容值精度、耐压、纹波电流及布局对称性,避免寄生参数引发谐振异常。最后提出验证方法(热成像与波形观测)及选型清单,并分享经验:薄膜电容可靠性更优,MLCC需严格测试,布局时应缩短走线以降低环路辐射。

Jack010169的博客 228

CATIA二次开发核心技术:多实体零件自动化拆解与装配生成深度解析(零件转产品)

CATIA二次开发核心技术:多实体零件自动化拆解与装配生成深度解析

KE17RS的博客 2145

RAG质量评估&实施RAG工程核心步骤

评估先行没有评估的 RAG 是盲目的,没有工程的评估是空洞的。

ts5oE4glC的博客 212

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Advanced RAG 03:运用 RAGAs 与 LlamaIndex 评估 RAG 应用

作者 | Florian June编译 | 岳扬🚢🚢🚢欢迎小伙伴们加入AI技术软件及技术交流群,追踪前沿热点,共探技术难题~如果你已经为某个真实业务系统开发了检索增强生成(RAG)应用程序,可能会想了解该 RAG 应用的效果如何。换句话说,您可能想评估该 RAG App 的性能。另外,如果发现现有的 RAG 应用效果不佳,可能还需要验证使用的 RAG 性能优化方法是否有效。换句话说,需要进行评估,确定这些性能优化方法是否起了作用。在本文,我们首先介绍了由 RAGAs(Retrieval Augment

Baihai_IDP的博客 1362

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

如何评估检索增强生成(RAG)系统:RAGAS框架与基于LlamaIndex的实现代码

忠实度衡量生成的答案对检索到的上下文的忠实程度。高忠实度意味着答案中的信息严格来源于检索到的上下文,而不是模型的"幻觉"。答案相关性评估生成的答案与原始查询的相关程度。高相关性意味着答案直接且准确地回应了用户的问题。上下文相关性衡量检索出来的信息有多么贴合你的问题。高上下文相关性意味着检索系统能够准确定位与查询相关的信息。上下文召回率评估检索到的上下文是否包含回答问题所需的全部信息。这个指标需要预先标注的"黄金标准"答案。上下文精确度衡量检索到的相关上下文在结果中的排序质量。

优快云_430422的博客 1595

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

评估大模型 RAG,只要 LlamaIndex 就足够了

总体而言,LlamaIndex 的评估功能可以帮助我们快速地评估 RAG 的性能,满足我们基本的 RAG 评估需求,无需借助其他第三方库。如果你正在使用 LlamaIndex 开发 RAG 应用,建议使用 LlamaIndex 内置的评估工具,使用后如果发现满足不了需求再考虑使用其他第三方评估工具。希望这篇文章可以帮助大家更好地了解 LlamaIndex 的评估功能。关注我,一起学习各种人工智能和 AIGC 新技术,欢迎交流,如果你有什么想问想说的,欢迎在评论区留言。

机器学习社区 1742
上一篇: Re-ranking 从原理到实现的两种主流方法
下一篇: 高级RAG:揭秘PDF解析
lichunericli
博客等级 码龄11年 6948粉丝 399原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值