AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


快速搭建专业AI知识库的开源工具:Ragflow
发布日期:2025-02-02 20:55:31 浏览次数: 1572 来源:ruby的数据漫谈
推荐语

提升AI模型性能,Ragflow开源工具助力构建专业知识库。

核心内容:
1. RAG技术在AI领域的重要性及其应用场景
2. RAG技术面临的主要问题:幻觉、拒答和回答不完整
3. Ragflow工具的主要功能及如何快速搭建AI知识库

杨芳贤
53A创始人/腾讯云(TVP)最具价值专家
摘要:在大模型应用的蓬勃发展中,检索增强生成(Retrieval-Augmented Generation,RAG)技术占据了举足轻重的地位。它就像是大模型的智慧助手,通过从外部知识库中检索相关信息,并将其融入到大模型的回答生成过程中,有效提升了大模型回答的准确性、可靠性和时效性,在问答系统、智能客服、文档摘要等多个领域都发挥着关键作用 。

上图是一个常见的AI应用的数据流向图,文档分块之后向量化存储到向量数据库,然后输入文本内容,形成prompt,从向量数据库检索相关的知识背景,发送给LLM之后,返回结果。然而,目前 RAG 在实际应用中仍然存在一些效果问题,严重影响了其应用的体验和价值。比如,幻觉问题较为突出,模型可能会生成一些看似合理但实际上与事实不符的答案,就像在回答关于历史事件的问题时,可能会虚构一些不存在的细节或情节 。拒答现象也时有发生,当检索结果不完整或未能检索到相关内容时,模型就无法给出答案,这在一些对回答及时性要求较高的场景中是难以接受的。此外,回答不完整的情况也屡见不鲜,可能是因为文档切片本身不完整,或者召回过程中存在缺失,导致模型在处理复杂问题时遗漏关键信息,给出的答案无法满足用户的需求 。

造成这些问题的原因是多方面的。语义不协调是一个重要因素,任务的预期含义、RAG 的理解以及存储的底层知识之间可能存在不一致,导致问题与答案在语义上不匹配,使得直接比较问题和原始知识库难以得到理想的结果。向量嵌入技术的不透明性也增加了问题的复杂性,向量在捕捉陈述语义内容方面存在固有缺陷,余弦相似性等度量方法在排名时不够精确,且难以理解和校准这些分数的意义,使得检索结果的可靠性受到影响 。本文介绍一款开源工具解决语义分块的工具,可以快速搭建专业的AI知识库.



  • Ragflow是什么?

  • Ragflow的主要功能

  • 快速上手Ragflow:构建知识库与应用



01

Ragflow 是什么

这样的背景下,ragflow 应运而生,为解决 RAG 现存问题带来了新的希望 。ragflow 是一款基于深度文档理解构建的开源 RAG 引擎,它就像是一位智能的知识管家,能够为各种规模的企业及个人提供一套精简高效的 RAG 工作流程。它的出现,让用户在处理各类复杂格式数据时,能够结合大语言模型,获得可靠的问答结果,并且每一个回答都有理有据,有清晰的引用来源 。

ragflow 的主要功能十分强大且全面。在文档处理方面,它支持丰富多样的文件类型,无论是常见的 Word 文档、PPT、Excel 表格、txt 文件,还是图片、PDF、影印件、复印件,甚至是结构化数据和网页等,都能轻松应对,就像一个万能的文件处理器,不遗漏任何一种知识载体 。在文本切片环节,它采用基于模板的文本切片技术,这一技术可不简单,不仅智能化程度高,更重要的是可控可解释 。它提供了多种文本模板供用户选择,用户可以根据不同的文档类型和需求,灵活选择最合适的切片方式,大大提高了文本处理的灵活性和准确性 。在检索和生成过程中,ragflow 基于多路召回、融合重排序,能够从海量的信息中精准地找到与问题相关的内容,并通过大语言模型生成高质量的回答 。同时,它还最大程度地降低了幻觉问题,文本切片过程可视化,用户可以直观地看到文本是如何被处理的,并且支持手动调整,确保答案提供关键引用的快照并支持追根溯源,让每一个回答都真实可靠 。




02

Rag的主要功能


深度文档理解与知识提取

ragflow 基于深度文档理解技术,能够从各类复杂格式的非结构化数据中精准提取知识 。无论是密密麻麻的学术论文,还是格式复杂的商务报告,它都能像一位专业的知识侦探,从中找到关键信息,实现真正意义上的 “大海捞针”。在处理一份包含大量图表和数据的市场调研报告时,ragflow 不仅能准确识别其中的文字内容,还能理解图表所表达的信息,并将其转化为可检索和利用的知识,为后续的问答和分析提供坚实的数据基础 。

RAGFlow 能够对 PDF、DOCX、EXCEL、PPT,甚至是图片等复杂格式的非结构化数据进行深度剖析。它的核心组件 DeepDoc 利用视觉信息和解析技术,实现了强大的文档理解能力。在视觉处理方面,借助 OCR(光学字符识别)技术,将图像形式的文档或可转换为图像的文档识别为文本,解决了从图像中提取文字信息的难题。例如,对于扫描版的 PDF 文件,OCR 技术可以准确地将其中的文字转化为可编辑的文本,为后续的处理奠定基础。

布局识别也是视觉处理中的重要环节。不同领域的文件布局千差万别,像报纸、杂志、书籍和简历等在排版上各具特点。DeepDoc 能够精准识别文档的标题、段落、表格、图像等元素,判断文本部分的连续性,以及确定哪些部分需要进行表结构识别(TSR)处理,哪些是配图及对应的标题等。它涵盖了 10 个基本布局组件,几乎能够适应所有常见的文档布局情况。通过布局识别,文档中的信息能够以更结构化的方式呈现,便于后续的分析和处理。

在表结构识别(TSR)方面,DeepDoc 同样表现出色。数据表的结构往往较为复杂,存在层次结构标题、跨单元格和投影行标题等情况。DeepDoc 不仅能够识别表的结构,还能将表中的内容重新组合成大语言模型易于理解的句子。TSR 任务定义了 5 个标签,包括列、行列标题、行标题、合并单元格等,通过这些标签可以更准确地解析表格的结构和内容。

除了视觉处理,解析器也是 DeepDoc 的重要组成部分。针对 PDF、DOCX、EXCEL 和 PPT 这四种常见的文档格式,都有专门的解析器。其中,PDF 解析器最为复杂,因为 PDF 格式具有较高的灵活性。PDF 解析器的输出包括有确切位置(页码和矩形位置)的文本块、带有 PDF 裁剪图像的表格以及已翻译成自然语言句子的表格内容,还有带标题和文字的图。通过这些解析器,不同格式的文档能够被准确地解析,提取出其中有价值的信息。

通过深度文档理解技术,RAGFlow 能够从各类复杂格式的非结构化数据中精准提取知识,在海量数据中快速定位关键内容,极大地提升了信息检索的准确性,为后续的检索和生成高质量回答提供了坚实的数据基础。



模板化分块与可解释性

ragflow 采用的模板化分块技术是其一大亮点 。它提供了多种智能且可解释的模板选项,就像为不同类型的文档量身定制的切割模具 。用户可以根据文档的具体类型和需求,轻松选择最合适的分块模板,确保文本切片的准确性和合理性 。对于简历文档,选择 “Resume” 模板可以按照简历的常见结构,如个人信息、工作经历、教育背景等进行分块,使得后续的检索和处理更加高效;而对于学术论文,“Paper” 模板则能根据论文的章节结构进行分块,方便用户快速定位和获取所需信息 。这种模板化分块方式不仅提高了文本处理的效率,还让整个过程更加透明和可控,用户可以清晰地了解文本是如何被处理和分割的 。

异构数据源兼容性

ragflow 的兼容性非常强大,它支持丰富多样的异构数据源 。无论是常见的文本文件,如 Word、Excel、txt,还是特殊格式的文件,如图片、PDF、影印件、复印件,甚至是结构化数据和网页等,都能被 ragflow 轻松接纳和处理 。这意味着用户在构建知识库时,可以将各种不同类型的数据整合在一起,无需担心格式不兼容的问题 。企业可以将内部的合同文档、财务报表、会议纪要等不同格式的文件统一导入 ragflow,构建一个全面的企业知识库,为企业的决策和运营提供有力支持 。

自动化工作流与配置性

ragflow 为用户提供了自动化的 RAG 工作流,从文档的上传、解析、分块,到信息的检索和回答的生成,整个过程都能高效自动地完成 。同时,它对大语言模型和向量模型具有高度的可配置性,用户可以根据自己的需求和实际情况,灵活选择不同的大语言模型和向量模型 。用户可以根据自己的预算和性能需求,选择合适的大语言模型,如DeepSeek-V2、 GPT-4、文心一言等,也可以根据数据的特点和应用场景,选择不同的向量模型进行文本的向量化表示 。这种高度的可配置性,使得 ragflow 能够适应不同用户和不同场景的需求,为用户提供个性化的解决方案 。


03

快速上手Ragflow:构建知识库与应用


准备工作

在使用 ragflow 构建知识库之前,需要确保你的硬件和软件环境满足一定的条件。硬件方面,建议使用 CPU 不低于 4 核心 ,内存大于等于 16GB,磁盘空间大于 50GB 的设备,以保证系统的流畅运行。软件方面,需要安装 Docker 且版本不低于 24.0.0,Docker Compose 版本不低于 v2.26.1 。如果你的设备尚未安装 Docker,可以参考官方文档进行安装 。

下载和部署服务

准备工作完成后,就可以启动 ragflow 服务器了。

首先,通过 git 命令克隆 ragflow 仓库:git clone https://github.com/infiniflow/ragflow.git 。

克隆完成后,进入 docker 文件夹,利用提前编译好的 Docker 镜像启动服务器,执行命令:

cd ragflow/docker

git checkout -f v0.15.1

chmod +x./entrypoint.sh

docker compose -f docker-compose-CN.yml up -d

在这个过程中,需要注意的是,核心镜像文件大约 9GB,下载可能需要一定的时间,请耐心等待 。服务启动成功后,可以通过命令docker logs -f ragflow-server来确认服务器状态,如果出现类似于下图的输出,说明服务已成功启动 。

配置知识库与模型

服务启动后,在浏览器中输入服务器对应的 IP 地址并登录 ragflow,首先需要进行模型配置。点击右上角的头像,选择左侧菜单中的「模型提供商」,在「待添加的模型」中选择要使用的模型供应商,如 DeepSeek-V2,并配置好供应商的 API key 。配置完成后,点击右上角的「系统模型设置」,在弹出的对话框中选择 DeepSeek-V2 模型,点击保存即可 。


单击所需的 LLM 并相应地更新 API 密钥(在本例中为 DeepSeek-V2):

接下来创建知识库,回到知识库页面,点击右上角的「创建知识库」,

输入知识库名称,设置语言、嵌入模型和解析方法等参数 。
语言可以根据需求选择,如中文;嵌入模型可以根据数据特点和应用场景选择合适的模型;解析方法则提供了多种选项,如通用模板、论文模板、简历模板等,用户可以根据文档类型进行选择 。设置完成后,点击保存,然后就可以上传文件到知识库了。


上传文件后,点击解析状态下的开始解析文件,等待解析成功,知识库就创建完成了 。


当文件解析完成时,其解析状态变为SUCCESS。

构建应用与使用

ragflow 提供了易用的 API,可以轻松集成到各类企业系统或第三方应用中 。以构建一个简单的问答应用为例,假设我们已经在 ragflow 中创建好了知识库并配置好了模型,接下来可以利用 ragflow 的 API 实现问答功能 。首先,获取 Chat Bot API key 用来对 RESTful API 调用进行鉴权 。然后,调用 REST 方法new_conversation获取唯一的 id 。在应用中,当用户提出问题时,将问题和获取到的 id 以及 API key 一起发送到 ragflow 的 API 服务,如http://demo.ragflow.io/v1/api/completion_aibotk ,ragflow 会根据问题从知识库中检索相关信息,并通过配置的模型生成回答返回给应用 。这样,一个基于 ragflow 的简单问答应用就构建完成了,用户可以在应用中输入问题,获取准确、可靠的回答 。

ragflow 作为一款创新的开源 RAG 引擎,为解决当前 RAG 应用中存在的诸多问题提供了全面而有效的解决方案 。它以其深度文档理解、模板化分块、减少幻觉、异构数据源兼容性以及自动化工作流等强大功能和优势,在众多 RAG 工具中脱颖而出 。无论是处理复杂的企业文档,还是构建智能问答系统,ragflow 都能展现出卓越的性能,为用户提供高质量的服务 。
随着人工智能技术的不断发展,RAG 应用的前景将更加广阔 。ragflow 有望在未来的发展中,不断优化和完善自身的功能,进一步提升 RAG 的效果和应用体验 。它可能会与更多先进的技术相结合,如多模态技术,实现对图像、音频等多种类型数据的更深入理解和处理,为用户带来更加丰富和智能的交互体验 。相信在 ragflow 等优秀工具的推动下,RAG 技术将在更多领域发挥重要作用,为人们的生活和工作带来更多的便利和创新 。如果你对 RAG 技术感兴趣,不妨尝试使用 ragflow,开启你的智能知识管理之旅 。


欢迎加入免费【数据&AIGC交流群】社群,长按以下二维码加入专业微信群,商务合作加微信备注商务合作,AIGC应用开发交流入群备注AIGC应用



Ruby数据漫谈

知识星球介绍

在这个数据驱动的时代,您是否渴望成为大数据技术的领航者?是否希望掌握AIGC的前沿应用?是否在寻找数字化转型的秘籍?【数据星河】知识星球,是您理想的知识家园!

往期数据平台历史热门文章:

基于DataOps的数据开发治理:实现数据流程的自动化和规范化

数据平台:湖仓一体、流批一体、存算分离的核心问题及原因解析

数据治理体系该怎么建设?

实时数仓&流批一体技术发展趋势

数据仓库、数据中台、大数据平台的关系?

数字化转型如何促进业务的发展

数据中台中的核心概念解析

数据治理中的数据标准的作用?

全面数字化转型:打造全新营销模式

一图展示数据中台的数据流图

揭秘数据治理系统的数据流程图

往期AIGC历史热门文章:

AIGC系列之一-一文理解什么是Embedding嵌入技术

十大AIGC文生视频产品介绍

九大最热门的开源AI Agent框架

AutoGen零代码构建⾃⼰的智能助理

往期数据资产入表历史热门文章:

资产入表

数据资产入表流程

数据资产管理及入表的关键步骤


53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询