高级 RAG 检索策略之查询路由

Published on:

之前介绍 Self-RAG 的时候提到了其中的按需检索功能,就是根据用户的问题来判断是否需要进行文档检索,如果不需要检索的话则直接返回 LLM(大语言模型)生成的结果,这样不仅可以提升系统的性能,还可以提高用户的体验。在 Self-RAG 中按需检索是通过特殊训练后的 LLM 来实现的,但是在高级 RAG(Retrieval Augmented Generation)检索中我们可以使用查询路由来实现这个功能,借助查询路由我们可以轻松实现类似代码中的 If/Else 功能。今天我们就来介绍查询路由的原理以及实现方式,并通过代码示例来了解查询路由在实际项目中的使用。

都 2024 年了,你还在用 pip 吗?

Published on:

编程语言 Python 随着 AI 的发展越来越受开发人员的喜爱,目前已经是最流行的编程语言,但由于 Python 是一门相对较老的语言,并且经过 Python2 到 Python3 这一漫长而复杂的迁移历程,使得一些 Python 开发人员可能还在使用一些过时的工具和库。今天我们就来带大家了解当前 Python 生态系统中最流行最实用的开发工具,让你彻底告别那些老古董

高级 RAG 检索策略之知识图谱

Published on:

RAG(Retrieval Augmented Generation)技术中检索是一个非常重要的环节,检索的准确性直接影响到生成的质量,但普通 RAG 的向量检索技术并不能满足所有场景下的需求,比如在一些大型私有文档库中,传统的检索技术往往表现不好。目前已经有很多研究团队在 RAG 中引入知识图谱来提高检索的准确性,并且取得了很好的效果。今天我们就来了解一下知识图谱的原理,以及如何在 RAG 中进行使用。

高级 RAG 检索策略之 Self-RAG

Published on:

Self-RAG 是另外一种形式的 RAG(Retrieval Augmented Generation),它与其他 RAG 检索策略不同,它并不是在 RAG 流程上对某个模块进行增强, 而是在 RAG 不同的模块上进行优化改进,从而达到改进整体 RAG 流程的目的。如果你对 Self-RAG 比较陌生或者只是听说它的名字,那么今天请跟我一起来了解 Self-RAG 的实现原理,以及通过学习 Self-RAG 的代码实现来更好地理解其中的细节。

评估 RAG?只要 LlamaIndex 就足够了

Published on:

我们之前介绍过一些 RAG (Retrieval Augmented Generation)的评估工具,比如 Turlens、Ragas 等,它们的评估指标丰富、使用方便,但它们始终是独立的第三方工具,需要和 LLM(大语言模型)开发框架(LangChain、LlamaIndex)进行集成才能使用,功能一旦更新不及时就会导致不可用的问题。如果你正在使用的是 LlamaIndex 开发框架,那么恭喜你,LlamaIndex 内置了评估工具,可以帮助你快速评估 RAG 应用,无需集成第三方的评估工具。今天我们就来详细了解一下 LlamaIndex 内置评估工具的原理以及它们的使用方法。

高级 RAG 检索策略之流程与模块化

Published on:

我们介绍了很多关于高级 RAG(Retrieval Augmented Generation)的检索策略,每一种策略就像是机器中的零部件,我们可以通过对这些零部件进行不同的组合,来实现不同的 RAG 功能,从而满足不同的需求。今天我们就来介绍高级 RAG 检索中一些常见的 RAG 模块,以及如何通过流程的方式来组合这些模块,实现高级 RAG 检索功能。

高级 RAG 检索策略之混合检索

Published on:

古人云:兼听则明,偏信则暗,意思是要同时听取各方面的意见,才能正确认识事物,只相信单方面的话,必然会犯片面性的错误。在 RAG(Retrieval Augmented Generation)应用中也是如此,如果我们可以同时从多个信息源中获取信息,那么我们的检索结果会更加全面和准确。今天我们就来介绍高级 RAG 检索策略中的混合检索,并在实际操作中结合 ElaticSearch 和 Llama3 来实现混合检索的效果。

高级 RAG 检索策略之内嵌表格

Published on:

在 RAG(Retrieval Augmented Generation)应用中,最负有挑战性的问题之一是如何处理复杂文档的内容,比如在 PDF 文档中的图片、表格等,因为这些内容不像传统文本那样容易解析和检索。在本文中,我们将介绍几种关于内嵌表格的 RAG 方案,讲解其中解析和检索的技术细节,并通过代码示例让大家更好地理解其中的原理,同时对这些方案进行分析和对比,阐述它们的优缺点。

高级 RAG 检索策略之查询重写

Published on:

在 RAG(Retrieval Augmented Generation)应用中,文档检索是保证 RAG 应用高质量回答的关键环节,我们在之前的文章中也有所介绍,但除此之外,对用户问题的优化也同样重要,有时候用户的问题可能不够清晰或者不够具体,这时候就需要对用户问题进行查询重写,这样才能更好地提高检索的准确性。今天我们就来介绍一些 RAG 应用中查询重写的策略,以及了解如何在实际项目中使用它们。

使用 Llama3 打造开发团队的私有 Copilot

Published on:

相信很多开发人员都使用过 Github Copilot,这种崭新的开发方式可以帮助开发人员极大地提高开发效率,并且也正在逐渐改变开发人员的编程习惯。自从 Meta 开放了最新的开源 LLM(大语言模型) Llama3,业内的各种开发工具和开发框架都在积极地集成 Llama3,以便于使用这个迄今为止功能最强大的开源大模型。今天我们来介绍如何使用 Llama3 构建一个团队专属的私有化 Copilot,不仅可以提高团队的开发效率,还可以保护团队的代码隐私。