RAGFlow部署与使用介绍-深度文档理解和检索增强生成
ragflow部署与使用教程-智能文档处理与知识管理的创新引擎
1. ragflow简介
RAGFlow作为新一代智能文档处理平台,深度融合检索增强生成(RAG)技术与自动化工作流引擎,为企业级知识管理提供全栈解决方案。通过结合多模态解析、语义理解与智能推理能力,重塑了非结构化数据处理范式。传统的生成模型在回答复杂问题时常常依赖于预训练数据的广度与深度,而检索增强生成(Retrieval-Augmented Generation,简称RAG)则有效结合了检索与生成的优势,为各类应用场景提供了更为灵活、高效的解决方案。能够针对性的进行解答。
ragflow官方网址:https://ragflow.io/
github项目地址:https://github.com/infiniflow/ragflow
- 核心功能架构
- 多模态文档解析
集成OCR、文档结构识别和跨模态理解技术,支持PDF、Word、PPT、表格、扫描件等30+格式的深度解析。突破性地实现文本、公式、图表的多维度信息提取,准确率较传统方案提升40%。 - 智能语义检索
构建混合检索体系,融合关键词匹配、向量语义检索和关系图谱查询。独创的"多路召回-动态加权"机制,在金融实测场景中达到92%的召回准确率,较单向量检索提升35%。 - 动态工作流引擎
可视化编排文档处理流程,支持条件分支、人工复核节点和API对接。某医疗客户案例显示,报告生成效率从8小时缩短至20分钟,流程错误率降低70%。 - 精准问答系统
基于深度语义理解的问答引擎,支持多轮对话和溯源验证。在法律合同审查场景中,关键条款定位准确率达到98.6%,回答相关性评分超业界基准25%。
-
技术突破
-
混合增强索引:融合BM25、DPR和ColBERT模型,构建多层检索体系
-
动态上下文感知:基于Transformer的查询重写技术,实现意图精准捕捉
-
私有化安全部署:支持本地化部署和分级权限管理,通过等保三级认证
-
-
应用场景(包括但不限于在线问答系统、智能客服、知识库问答、个性化推荐等)
-
金融投研:自动解析财报/研报,构建智能投研知识库
-
法律合规:合同关键条款提取与风险预警
-
医疗健康:科研文献分析与诊疗指南生成
-
智能制造:设备手册知识化与故障诊断辅助
-
2. ragflow安装部署
2.1 环境准备
本次部署演示环境为Linux CentOS 7.9 操作系统
(base) [root@ops05 ~]# docker -v
Docker version 24.0.8, build e0dfb46(base) [root@ops05 ~]# docker-compose -v
Docker Compose version v2.33.0(base) [root@ops05 ~]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)(base) [root@ops05 ~]# free -htotal used free shared buff/cache available
Mem: 31G 3.3G 1.3G 1.6G 26G 25G
Swap: 0B 0B 0B# 配置vm.max_map_count参数
(base) [root@ops05 ~]# vim /etc/sysctl.conf
vm.max_map_count=262144(base) [root@ops05 ~]# sysctl -p
vm.swappiness = 0
net.core.somaxconn = 1024
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_max_syn_backlog = 1024
vm.max_map_count = 262144
max_map_count是 Linux 系统内核中的一个参数,用于限制一个进程可以拥有的最大内存映射区域数量。内存映射区域是指内存映射文件、匿名内存映射等。这个参数对于一些应用程序(例如常见的 Elasticsearch等等)特别重要,因为它们在运行时会创建大量的内存映射区域.
2.2 配置ragflow服务
# 拉取源代码
(base) [root@ops05 ~]# git clone https://github.com/infiniflow/ragflow.git
Cloning into 'ragflow'...
remote: Enumerating objects: 31866, done.
remote: Counting objects: 100% (171/171), done.
remote: Compressing objects: 100% (74/74), done.
remote: Total 31866 (delta 108), reused 100 (delta 96), pack-reused 31695 (from 3)
Receiving objects: 100% (31866/31866), 73.80 MiB | 16.92 MiB/s, done.
Resolving deltas: 100% (23143/23143), done.
(base) [root@ops05 ragflow]# ll -h
total 4.0K
drwxr-xr-x 18 root root 4.0K Apr 3 09:30 ragflow# 更改.env配置(如果网速快,可以不配置)
(base) [root@ops05 ragflow]# cd docker/
(base) [root@ops05 docker]# vim .env #RAGFLOW_IMAGE=infiniflow/ragflow:v0.17.2-slim
RAGFLOW_IMAGE=swr.cn-north-4.myhuaweicloud.com/infiniflow/ragflow:v0.17.2# [注意]:RAGFLOW_IMAGE的值默认官方镜像下载很慢,并且image镜像文件非常大,可以把值换成国内的镜像源,下方提供2个镜像下载加速,**RAGFLOW_IMAGE** 的值取决于下方使用哪个下载路径,也可以使用下方的镜像重新tag标签# 镜像下载加速参考
### 阿里加速仓库
(base) [root@ops05 docker]# docker pull registry.cn-hangzhou.aliyuncs.com/infiniflow/ragflow:v0.17.2
### 或华为加速仓库
(base) [root@ops05 docker]# docker pull swr.cn-north-4.myhuaweicloud.com/infiniflow/ragflow:v0.17.2(base) [root@ops05 docker]# docker images | grep ragflow
swr.cn-north-4.myhuaweicloud.com/infiniflow/ragflow v0.17.2 eff1c12fb3b4 2 weeks ago 18.3GB# 先docker pull把镜像文件下载后,再启动,避免up等待许久
(base) [root@ops05 docker]# docker-compose -p ragflow -f docker-compose.yml up -d
3. ragflow使用介绍
3.1 访问登录与界面设置
Web-UI-界面访问,服务器IP+80默认端口

点击注册,注册后登录即可

点击右上方头像进入到设置页面,可以在Profile- Language中将语言改为简体中文

3.2 配置添加大模型
再模型提供商中添加大模型,例如Qwen、DeepSeek,注意需要先准备自己的API-KEY

模型提供商界面中,右上角系统模型设置,可以配置已经添加的模型,例如我这里配置了deepseek-r1

3.3 建立知识库
点击知识库,右边有一个
创建知识库按钮,定义知识库名称,例如我这里名称资产重组,知识库的数据集文件随意,只要可以识别即可我这里的素材分享:
通过网盘分享的文件
链接: https://pan.baidu.com/s/1AIEX4eQhBrR-B4IwUCygvQ?pwd=h6rb 提取码: h6rb
–来自百度网盘超级会员v6的分享

上传文件后,例如上传《附件1:上市公司重大资产重组管理办法.pdf》,需要点击解析文件,等待解析状态完成。此时自己的知识库就已经成功的配置完成

可以点击文件名称进入查看解析状态

3.4 使用知识库
- 使用示例1(PDF政策解读)
创建一个聊天,注意在知识库的位置关联上已经建好的知识库

还需要设置模型设置,自由度可以去慢慢调试,这需要比较熟练使用以后进行微调,鼠标放在?图标会有参数的详细解释

使用聊天窗口进行提问

可以看到提问的回答内容,会显示引用了附件1:上市公司重大资产重组管理办法.pdf,并且在回答内容中都会有关联出引用文中的出处,在回答的窗口的上方也可以看Prompt提示
使用示例2(自定义文件,进行数据分析)
新建一个知识库

- 数据文件内容
魔兽世界职业表,其中加了一行游戏不存在的魔导师职业,来印证知识库的使用一定会去读取本地本地并给出正确回答,素材上方的网盘分享中有

- 建立一个聊天,方法同示例1

相关文章:
RAGFlow部署与使用介绍-深度文档理解和检索增强生成
ragflow部署与使用教程-智能文档处理与知识管理的创新引擎 1. ragflow简介 RAGFlow作为新一代智能文档处理平台,深度融合检索增强生成(RAG)技术与自动化工作流引擎,为企业级知识管理提供全栈解决方案。通过结合多模态解析、语…...
一文读懂 UML:基础概念与体系框架
UML 图是一种标准化的建模语言,在软件开发和系统设计等领域有着广泛的应用。以下是对 UML 图各类图的详细介绍: 1.用例图 定义:用例图是从用户角度描述系统功能的模型图,展现了系统的参与者与用例之间的关系。作用:帮…...
【AI赋能:58招聘数据的深度剖析之旅】
影刀出鞘,抓取数据 在当今数字化时代,数据分析已成为企业决策和发展的关键驱动力。而获取高质量的数据则是数据分析的首要任务。在这个信息爆炸的时代,网络上蕴含着海量的数据,其中招聘网站的数据对于人力资源分析、市场趋势研究…...
几何法证明卡特兰数_栈混洗
模型: 考虑从坐标原点 (0, 0) 到点 (n, n) 的路径,要求路径只能向右(x 方向)或向上(y 方向)移动,并且路径不能越过直线 y x(即始终满足 y< x )。这样的路径数量就是…...
Kafka的安装与使用(windows下python使用等)
一、下载 可以去官网下载:https://kafka.apache.org/downloads 版本可选择,建议下载比较新的,新版本里面自带zookeeper 二、安装 创建一个目录,此处是D:\kafka,将文件放进去解压 如果文件后缀是gz,解压…...
DataPermissionInterceptor源码解读
原文首发在我的博客:https://blog.liuzijian.com/post/mybatis-plus-source-data-permission-interceptor.html 目录 一、概述二、源码解读2.1 beforeQuery2.2 beforePrepare2.3 processSelect2.4 setWhere2.5 processUpdate2.6 processDelete2.7 getUpdateOrDelete…...
大模型中的参数规模与显卡匹配
在大模型训练和推理中,显卡(GPU/TPU)的选择与模型参数量紧密相关,需综合考虑显存、计算能力和成本。以下是不同规模模型与硬件的匹配关系及优化策略: 一、参数规模与显卡匹配参考表 模型参数量训练阶段推荐显卡推理阶…...
数据结构初阶: 顺序表的增删查改
顺序表 概念 顺序表是⽤⼀段物理地址连续的存储单元依次存储数据元素的线性结构,⼀般情况下采⽤数组存储。如图1: 顺序表和数组有什么区别? 顺序表的底层是用数组实现的,是对数组的封装,实现了增删查改等接口。 分…...
Spring Boot项目中策略模式的应用与实现
前言 在Spring Boot项目中,策略模式是一种非常重要的设计模式,它能够让我们定义一系列算法,并使它们可以互相替换。 策略模式通过将算法封装到独立的类中,从而使得代码中的算法可以独立于使用它的客户端变化。 这对于某些需求频…...
【机器学习中的基本术语:特征、样本、训练集、测试集、监督/无监督学习】
机器学习基本术语详解 1. 特征(Feature) 定义:数据的属性或变量,用于描述样本的某个方面。作用:模型通过学习特征与目标之间的关系进行预测。示例: 预测房价时,特征可以是 面积、地段、房龄。…...
MySQL全链路指南
目录 前言 第一章 MySQL基础入门 1.1 MySQL简介与安装 1.2 数据库基本操作 1.3 表结构与数据类型 第二章 SQL语言深度解析 2.1 DDL(数据定义语言) 2.2 DML(数据操作语言) 2.3 DQL(数据查询语言) 2…...
System.arraycopy()
在 Java 编程中,数组是一种常用的数据结构,用于存储相同类型的元素集合。在处理数组时,经常需要进行数组复制操作,例如将一个数组的部分或全部元素复制到另一个数组中。System.arraycopy() 方法是 Java 提供的一个高效的数组复制工…...
详解AI采集框架Crawl4AI,打造智能网络爬虫
大家好,Crawl4AI作为开源Python库,专门用来简化网页爬取和数据提取的工作。它不仅功能强大、灵活,而且全异步的设计让处理速度更快,稳定性更好。无论是构建AI项目还是提升语言模型的性能,Crawl4AI都能帮您简化工作流程…...
【爬虫开发】爬虫开发从0到1全知识教程第14篇:scrapy爬虫框架,介绍【附代码文档】
本教程的知识点为:爬虫概要 爬虫基础 爬虫概述 知识点: 1. 爬虫的概念 requests模块 requests模块 知识点: 1. requests模块介绍 1.1 requests模块的作用: 数据提取概要 数据提取概述 知识点 1. 响应内容的分类 知识点:…...
MySQL索引原理:从B+树手绘到EXPLAIN
最近在学后端,学到了这里做个记录 一、为什么索引像书的目录? 类比:500页的技术书籍 vs 10页的目录缺点:全表扫描就像逐页翻找内容优点:索引将查询速度从O(n)提升到O(log n) 二、B树手绘课堂 1. 结构解剖࿰…...
SQLark:一款国产免费数据库开发和管理工具
SQLark(百灵连接)是一款面向信创应用开发者的数据库开发和管理工具,用于快速查询、创建和管理不同类型的数据库系统,目前可以支持达梦数据库、Oracle 以及 MySQL。 对象管理 SQLark 支持丰富的数据库对象管理功能,包括…...
防爆对讲机VS非防爆对讲机,如何选择?
在通信设备的广阔市场中,对讲机以其高效、便捷的特点,成为众多行业不可或缺的沟通工具。而面对防爆对讲机与非防爆对讲机,许多用户常常陷入选择困境。究竟该如何抉择,且听我为您细细道来。 防爆对讲机,专为危险作业场…...
微信小程序开发:开发实践
微信小程序开发实践研究 摘要 随着移动互联网的迅猛发展,微信小程序作为一种轻量化、无需安装的应用形式,逐渐成为开发者和用户的首选。本文以“个人名片”小程序为例,详细阐述了微信小程序的开发流程,包括需求分析、项目规划、…...
操作 Office Excel 文档类库Excelize
Excelize 是 Go 语言编写的一个用来操作 Office Excel 文档类库,基于 ECMA-376 OOXML 技术标准。可以使用它来读取、写入 XLSX 文件,相比较其他的开源类库,Excelize 支持操作带有数据透视表、切片器、图表与图片的 Excel 并支持向 Excel 中插…...
青铜与信隼的史诗——TCP与UDP的千年博弈
点击下面图片带您领略全新的嵌入式学习路线 🔥爆款热榜 88万阅读 1.6万收藏 第一章 契约之匣与自由之羽 熔岩尚未冷却的铸造台上,初代信使长欧诺弥亚将液态秘银倒入双生模具。左侧模具刻着交握的青铜手掌,右侧则是展开的隼翼纹章。当星辰…...
「青牛科技」GC5849 12V三相无感正弦波电机驱动芯片
芯片描述: • 4 ~ 20V 工作电压, 30V 最大耐压 • 驱动峰值电流 2.0A ,连续电流 800mA 以内 • 芯片内阻: 900mΩ (上桥 下桥) • eSOP-8 封装,底部 ePAD 散热,引…...
Java基础之反射的基本使用
简介 在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意属性和方法;这种动态获取信息以及动态调用对象方法的功能称为Java语言的反射机制。反射让Java成为了一门动…...
大语言模型中的嵌入模型
本教程将拆解什么是嵌入模型、为什么它们在NLP中如此重要,并提供一个简单的Python实战示例。 分词器将原始文本转换为token和ID,而嵌入模型则将这些ID映射为密集向量表示。二者合力为LLMs的语义理解提供动力。图片来源:[https://tzamtzis.gr/2024/coding/tokenization-by-an…...
【从零实现Json-Rpc框架】- 项目实现 - 服务端主题实现及整体封装
📢博客主页:https://blog.csdn.net/2301_779549673 📢博客仓库:https://gitee.com/JohnKingW/linux_test/tree/master/lesson 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! &…...
位置编码(Positional Encoding, PE)的作用
在神经网络(尤其是Transformer、RNN等序列模型)中,位置编码(Positional Encoding, PE)的作用是为模型提供序列中元素的位置信息,以弥补模型本身对顺序感知的不足。 为什么Transformer需要位置编码…...
开源的 LLM 应用开发平台Dify的安装和使用
文章目录 前提环境应用安装deocker desktop镜像源配置Dify简介Dify本地docker安装Dify安装ollama插件Dify安装硅基流动插件简单应用练习进阶应用练习数据库图像检索与展示助手echart助手可视化 前提环境 Windows环境 docker desktop魔法环境:访问Dify项目ollama电脑…...
从零构建大语言模型全栈开发指南:第五部分:行业应用与前沿探索-5.1.2行业落地挑战:算力成本与数据隐私解决方案
👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 从零构建大语言模型全栈开发指南-第五部分:行业应用与前沿探索5.1.2 行业落地挑战:算力成本与数据隐私解决方案1. 算力成本挑战与优化策略1.1 算力成本的核心问题1.2 算力优化技术方案2. 数据隐私挑战…...
NodeJS--NPM介绍使用
1、使用npm install命令安装模块 1.1、本地安装 npm install express 1.2、全局安装 npm install express -g 1.3、本地安装和全局安装的区别...
DeepSeek与ChatGPT的优势对比:选择合适的工具来提升工作效率
选DeepSeek还是ChatGPT?这就像问火锅和披萨哪个香! "到底该用DeepSeek还是ChatGPT?” 这个问题最近在互联网圈吵翻天!其实这就跟选手机系统-样,安卓党iOS党都能说出一万条理由,但真正重要的是你拿它来干啥!&am…...
lib-zo,C语言另一个协程库,sleep协程化,睡眠
lib-zo,C语言另一个协程库,sleep协程化,睡眠 另一个 C 协程库 https://blog.csdn.net/eli960/article/details/146802313 重载了 sleep 函数, 使其支持协程化 另外毫秒单位睡眠函数 void zcoroutine_sleep_millisecond(int milliseconds);例子 #include "coroutine.h…...
