Navigate to WaytoAGI Wiki →
Home/Question List/Question Detail

ragflow

Answer

RAGflow 能力拆解:

  • 文档拆分方式:
    • 通用模式:主要参考每个块的 token 数量,同时考虑语意完整性,切分段落点通常在句号或叹号等完整句子结束处。拆分结果和 langchain 的拆分大同小异。
    • Q&A 问答对:将左边内容加上“问题:”,右边内容加上“回答:”,数据清洗工作量大。
    • 简历:解析容易失败,需要匹配关键词才能解析,建议官方给出简历模板。
    • 手册:一整段文字提取,分割处在页面分页、段落分段处,块大小通常较大。
    • 表格:拆分后每一行被当成一个块,第一行的表头插入到每一块头部。对没有特殊字符的表格信息处理较好,对图片内的公式做了 OCR 检测。
  • 数据清洗:RAGflow 提供分段后的数据处理,可自行添加、修改数据或为数据加标签。测试发现,RAGflow 召回会同时使用向量相似度和关键词相似度并加权得到混合相似度,关键词相似度不仅匹配文本段内容还匹配关键词标签内容,单个实体在关键词中出现即为 100%。需要在检索获得的内容块中同时包含“问题信息”和“答案信息”,大模型才能解答。RAGflow 没提供对外接口,做聊天或其他应用时不方便。

大模型 RAG 问答行业最佳案例及微调、推理双阶段实现模式:基于模块化(Modular)RAG 自定义 RAG Flow: 原创刘焕勇老刘说 NLP 于 2024 年 1 月 29 日 18:31 发表于北京。在上一篇文章中介绍了模块化(Modular)RAG 的相关工作,重点论述了每个模块中的构成细节。本文将从三个方面深入探讨 RAG Flow 的设计思路,分别是典型的 RAG Flow 模式、特定的 RAG 流实现以及最佳的行业案例。在典型的 RAG Flow 模式方面,将介绍 3 种微调阶段模式和 4 种推理阶段模式供大家参考思考。

Content generated by AI large model, please carefully verify (powered by aily)

References

RAGflow 能力拆解

RAGflow的思路是面向应用场景提供适配性的文档拆分.当遇到不在列表中的情况时,选择通用,或者类似的场景来使用.1.General通用在通用模式下,主要拆分参考是每个块的token数量.实测中,它还考虑了语意的完整性,切分段落的点都在句号或者叹号这种完整句子结束处.结论:拆分结果和langchain的拆分大同小异,没有做其他任何处理和修改.1.Q&A问答对结论:就是问答对,它将左边这列的内容加上“问题:”,右边这列的内容加上“回答:”,组成一个block.最有效但是数据清洗工作量也最大,结果类似如下:1.Resume简历由于简历的格式通常不可控,特地找了个正常的和异形的简历.均解析失败,从代码中找到它需要匹配关键词才能解析,建议官方给出简历模板,否则非常不好用.1.Manual手册一整段的文字提取,分割处在页面分页,段落分段处--因此块大小通常很大.对图片做了OCR,提取了文字,但是用处不大:也有还不错的,比如这个对图片内的公式做了OCR检测:检测结果如下对没有特殊字符的表格信息处理比较不错:处理成了实际文本内容是html格式的表格.1.Table表格拆分后,每一行被当成了一个块,而第一行的表头被插入到每一块的头部.

RAGflow 能力拆解

RAGflow提供了分段后的数据处理,可以自行添加分段后的数据,也可以修改数据,还可以为数据加上标签.为了更准确的测试,我们添加了一条在我们提供的知识库中不可能存在的术语和数据“我们要带领大家成为超级个体”,并添加了关键词:“公司使命”使用测试工具进行召回测试|测试问题|召回结果||-|-||使命是什么?|||我们的使命是什么?|||国家的使命是什么?|||公司的使命是什么?|||超人是什么?|无召回||超级是什么?|||超级个体是什么?||我们再把知识库挂到LLM上,发生了有趣的新问题:调查发现,数据正确召回了,但是由于召回的上下文是“我们要带领大家成为超级个体”,因此大模型无法匹配上我们的问题.因此打标签这件事得慎用.结论:1.RAGflow召回会同时使用向量相似度和关键词相似度,并加权得到混合相似度.2.关键词相似度不仅会匹配文本段中的内容,还会匹配关键词标签的内容.3.关键词相似度不需要完整的一样,只需要有单个实体在关键词中出现就是100%.参考“超级是什么?”的召回结果.4.需要在检索的获得的内容块中,同时包含“问题信息”和“答案信息“,大模型才能解答.如果检索直接只给了答案,大模型本身无法关联到问题本身而无法回答.5.RAGflow没提供对外接口,做聊天或者其他应用时不方便

大模型RAG问答行业最佳案例及微调、推理双阶段实现模式:基于模块化(Modular)RAG自定义RAG Flow

原创刘焕勇老刘说NLP 2024-01-29 18:31发表于北京今天是2024年1月29日,星期一,北京,天气晴。今天我们再来看看RAG的一些话题。我们在上一个文章《值得一看的大模型RAG问答总括性梳理:模块化(Modular)RAG范式的定义、构成及机遇》(https://mp.weixin.qq.com/s/j07PkTCoxBzAhkyON1puPg)中介绍了模块化(Modular)RAG的一些相关工作,重点对每个模块中的构成细节,即模块化RAG的”模块类型“,”模块“和”算子“进行了论述,相信大家已经有了一定的认识。因此,我们趁热打铁,借着再来看看基于不3同模块和和算子的编排就组成的RAG Flow,6这为我们看待RAG系统提供了新的视角。在模块化RAG范式是如何帮助我们设计自己的RAG Flow?本文,我们将从三个方面深入探讨RAG Flow的设计思路,分别是典型的RAG Flow模式、特定的RAG流实现以及最佳的行业案例。在典型的RAG Flow模式方面,我们将介绍以下3种微调阶段模式和4种推理阶段模式。供大家一起参考并思考。

Others are asking
有什么类似于 ragflow,dify 可以本地部署的
Dify 是一个开源的大模型应用开发平台,它融合了后端即服务和 LLMOps 的理念,为用户提供直观界面,能快速构建和部署生产级别的生成式 AI 应用。其具有强大的工作流构建工具,支持广泛的模型集成,提供功能丰富的提示词 IDE 以及全面的 RAG Pipeline 用于文档处理和检索。此外,允许用户定义 Agent 智能体,并通过 LLMOps 功能持续监控和优化应用程序性能。Dify 提供云服务和本地部署选项,满足不同需求,其开源特性确保对数据的完全控制和快速产品迭代。Dify 的设计理念注重简单、克制和快速迭代,能帮助用户将 AI 应用创意快速转化为现实。无论是创业团队构建 MVP、企业集成 LLM 增强现有应用能力,还是技术爱好者探索 LLM 潜力,Dify 都提供相应支持和工具。Dify 官方手册:https://docs.dify.ai/v/zhhans 。一般来说,如果是个人研究,推荐单独使用 Dify,如果是企业级落地项目,推荐使用多种框架结合,效果更好。
2024-08-30