从数据洞察到智能决策:合合信息infiniflow RAG技术的实战案例分享

news/2024/9/17 21:06:41/文章来源:https://www.cnblogs.com/ting1/p/18407860

从数据洞察到智能决策:合合信息&infiniflow RAG技术的实战案例分享

标题取自 LLamaIndex,这个内容最早提出于今年 2 月份 LlamaIndex 官方博客。从 22 年 chatGpt 爆火,23 年大模型尝鲜,到 24 年真正用 AI 落地业务场景,业界普遍都发现了从 MVP 到 PMF 不是那么容易的,具体的原因有非常多,在 RAG 场景下,最主要的表现是企业的数据 “垃圾进,垃圾出”,如何利用好企业数据是提升 RAG 效果的关键

看一下各个公司都是怎么做的

1. 合合信息

官方网站:https://www.textin.com/

一周快速出 Demo,半年产品不好用

RAG 范式从直观上理解起来落地是比较容易的,通过自然语言的语意匹配度找到相关的内容,再让模型进行回答,可是在实际落地过程中发现效果比预期差很多,总结起来会有以下一些问题

1.1 LLM RAG 产品如何快速达到可用、好用,开始增长?

如何解决 RAG 落地过程中遇到问题,提升 RAG 的整体效果,达到线上生产可用的目标,首先落地的关键点在于

再回归本质,影响 RAG 落地效果的最本质问题在于

1.2 提升 RAG 效果核心的优化方向:高质量文档解析 + 高质量检索

  • RAG 优化目标一: 快速、稳定、精准解析文档

原始的文档是各种各样的格式,各种各样的模态,如何快速、精确解析出高质量的内容对提升最终检索效果非常重要

  • RAG 优化目标二: 高精度、高效率向量检索

从海量的内容中提取出最相关的内容,对提升 LLM 输出效果准确率、相关性非常重要

  • TextIn 通用文本解析技术 + Acge 向量化模型

合合信息自研了 TextIn 通用文本解析技术,对丰富的文档格式和内容能快速,精准解析为 MD 格式,另外自研的 acge_text_embedding 向量化模型在检索准确率,精度等方面表现也非常突出

  • TextIn 技术的一些介绍和效果展示 (示例,详见附录 PPT)








  • acge_text_embedding 向量化模型的效果展示

  • 线上产品效果展示

  • 总结

2.infiniflow(英飞流)

官网:https://infiniflow.org/
infiniflow 自研了 AI-Native Database Infinity,在 RAG 检索方面表现非常突出

  • 下一代 RAG 引擎



同样对于 RAG 效果的提升,英飞流的核心研究方向也是高质量的内容解析 + 高质量的检索

  • 内容解析

  • 效果展示

  • 表格识别模型

  • 文档识别模型

  • 多模态识别

这里演讲人描述了和月之暗面创始人关于多模态识别的讨论,在大模型厂商看来,目前英飞流做的内容识别的工作都是雕花,因为大模型的上下文会越来越长,但演讲人还是更坚定于解决当前内容识别效果提升的问题,这里没有对错,只是看什么方案更适合

  • 混合检索

英飞流提供的 AI Native 数据库是个亮点,由于当前向量化检索的一些限制 (数据量、延迟、精度等),各种数据库在混合检索方面支持的效果参差不齐,英飞流致力于提供高性能、高精度、支持海量数据、支持混合检索的 AI

  • Native 数据库

Infinity 支持稠密向量、稀疏向量、张量、全文检索、结构化检索等丰富检索方式,了解 cross-encoder 的同学应该知道,cross-encoder 在检索效果方面比双编码器要好很多,但随着数据量提升,延迟不断升高,通常是不能接受的。随着 colbert 延迟交互的提出,目前业界针对检索效果和检索性能方面有了更让人惊喜的方案,但 colbert 也有一些工程问题,比如上下文限制,无法端到端使用等,Infinity 数据库支持 Tensor 数据类型,原生支持了 colbert 端到端方案,保障效果的前提下并解决海量数据检索延迟的问题,还是非常惊喜的


性能方面的表现非常突出

Intinity 在检索效率和效果上做到了兼顾

  • 延迟交互是 RAG 的未来

2.1高级 RAG

另外一个分享的主体是在复杂查询下如何提升检索效果

  • Agentic RAG

这里通常的思路都是进行问题预处理,人机协同反馈调优,没什么大的差异

  • 知识图谱

知识图谱是一个很优秀的技术,对检索结果效果优化是非常好的补充

小结

3.LlamaIndex

博客:https://www.llamaindex.ai/blog
llamaIndex 提到的优化方向和上边提到方向是一致的,这说明在企业落地 RAG 项目中,重点应该关注的是内容的解析效果和内容检索的效果

关于 llamaIndex 的分享内容这里不详细罗列,感兴趣可以看下附录的 PPT,这里主要看下 llamaIndex 做了哪些工作

3.1 LlamaParse

LlamaIndex 提供了 LlamaParse 可以解析复杂的多格式、多模态的文档,并以 AI Friendly(MD) 的格式输出

这里可以简单说 AI Friendly,其实业界提出 MD 格式是对 AI Friendly 的格式,在我们日常和业务合作过程中,也发现了 MD 的效果是最好的

另外,chunk 一般建议最好一个 chunk 是一篇文档,保障最完整的语意,这给了我们一个组织文档的经验建议

3.2 LlamaExtract

LlamaExtract 在 llamaIndex 分享的 ppt 没有提及,但在官方博客中提了,主要是以结构化的方式提取出文档的信息,有点类似图谱,是对文档检索内容的一个非常好的补充,感兴趣可以看下官方博客

  • 参考链接
    英飞流对延迟交互的思考:https://www.maas.com.cn/blog/493.html
    acge_text_embedding: https://huggingface.co/aspire/acge_text_embedding
    英飞流 ragflow:https://github.com/infiniflow/ragflow/blob/main/README_zh.md

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据飞轮转进快递行业 能够为企业带来哪些新想象

快递行业的2024年下半场竞赛已然开始,鉴于双11、年货节等电商营销重要节点都集中在下半年,流转出快递行业在下半年的巨大市场机会,数据飞轮或许能成为更多快递企业的增长动力,转出更为稳健的业绩增长。更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【…

手动用梯度下降法和随机梯度下降法实现一元线性回归

手动用梯度下降法和随机梯度下降法实现一元线性回归(超详细)手动用梯度下降法实现一元线性回归 实验目的 本次实验旨在通过手动实现梯度下降法和随机梯度下降法来解决一元线性回归问题。具体目标包括:生成训练数据集,并使用matplotlib进行可视化。 设计一个`LinearModel`类…

[JavaScript] 事件委托以及 Vue 列表循环事件绑定的性能优化

前言 事件委托(Event Delegation) 是一种通过将事件监听器绑定到父元素,而不是直接绑定到每个子元素上的技术。这样可以减少事件监听器的数量,提升性能,并使得对动态添加或移除的元素更容易进行事件处理。 事件冒泡和事件捕获 事件冒泡:从里往外 <div id="parent…

GT收发器

1.GT触发器的IP使用 第一页 第二页 第三页 GTP IP 提供了两种解决跨时钟域的方法:(1)RX Elastic Buffer(RX 弹性缓冲器);(2)RX Phase Alignment(RX 相位对齐电路),两种方法的比较:RXElastic Buffer优点在于稳定,易使用, 执行相位校准的速度快,但是需要时钟和通道进…

Qt 中实现异步散列器

在很多工作中,我们需要计算数据或者文件的散列值,例如登录或下载文件。 而在 Qt 中,负责这项工作的类为 `QCryptographicHash`。 虽然 `QCryptographicHash `很优秀,但它最大的问题在于其散列值的计算是同步的( 即阻塞 ),对小数据来说并没什么影响,但对大数据来说则意味明…

新建工程——STM32学习笔记2

目录新建工程 添加启动程序Start 添加内核程序Core相关资料下载 下载链接(来自B站江协科技) 通过百度网盘分享的文件:STM32入门教程资料 链接:https://pan.baidu.com/s/17_sbwMXU-xBVFA2sK0smrg?pwd=cgn6 提取码:cgn6STM32开发方式有3种,分别是基于寄存器开发、基于标准…

Java八股复习指南-集合

Java集合 Map HashMap 实现原理/底层 Java1.8之前:数组加链表 Java1.8之后:当一个链表的长度超过8,且数组大小超过64时,会将链表转换成红黑树存储,查找效率更高,时间复杂度O(log n)。如果长度超过8,但是数组容量不足64,则会选择扩容数组。 定位算法 计算key的哈希值,并…

幂函数与指数函数区别

本文来自博客园,作者:cytlz2730,转载请注明原文链接:https://www.cnblogs.com/cytwjyy/p/18407701

zabbix“专家坐诊”第255期问答

问题一 Q:大家好,问一下,zabbix做聚合图的时候,可以做到两根线在一个图里- 吗?还是说只能,单边计算聚合,然后再最后作图的时候,添加两条线上去A:两个数据吗 Q:是的。一个端口,有进有出 A:如果是两个监控项可以做到聚和一起问题二 Q:请问大佬们,这个加密是干嘛的?…

项目管理方法,方法和框架–初学者指南

项目可以通过各种方式成功结束。但是,最好,最受欢迎的项目管理方法,方法和框架总是在变化。新概念无时无刻不在出现。所有成功的项目都包含一整套方法,工具和技术。实际上,作为项目管理从业人员,您一生中可能会使用其中的一种以上。 但是,项目管理方法论,方法和框架不仅…

Nodejs-child_process模块解读

在 Node.js 应用程序中,child 进程模块非常重要,有了它可以实现并行处理,这在资源密集型在 Node.js 应用程序中,child 进程模块非常重要,有了它可以实现并行处理,这在资源密集型任务里十分重要。 在本文中,我们将看一下 child 进程模块,解释其目的、使用方式以及如何使…