介绍
RAGFlow 是一款基于深度文档理解构建的开源 RAG(Retrieval-Augmented Generation)引擎。可以为各种规模的企业及个人提供一套精简的 RAG 工作流程,结合大语言模型(LLM)针对用户各类不同的复杂格式数据提供可靠的问答以及有理有据的引用。
系统架构
安装
- 环境要求
CPU >= 4 cores
RAM >= 16 GB
Disk >= 50 GB
Docker >= 24.0.0 & Docker Compose >= v2.26.1
启动服务器
确保 vm.max_map_count 不小于 262144。如需确认 vm.max_map_count 的大小,服务执行:
sysctl vm.max_map_count
如果 vm.max_map_count 的值小于 262144,可以进行重置:
# 这里我们设为 262144:``sudo sysctl -w vm.max_map_count=262144
你的改动会在下次系统重启时被重置。如果希望做永久改动,还需要在 /etc/sysctl.conf 文件里把 vm.max_map_count 的值再相应更新一遍:
vm.max_map_count=262144
1.克隆仓库
git clone https://github.com/infiniflow/ragflow.git
2.修改配置
cd ragflow/docker``vi .env
- 修改配置RAGFLOW_IMAGE,我们测试安装使用包含推理模型的镜像v0.16.0,如果自己本地部署了embedding模型,我们可以选择v0.16.0-slim版本,以减少体积。
RAGFlow 镜像tag | 大小 | 是否包含推理模型 |
v0.16.0 | ≈9 | 包含 |
v0.16.0-slim | ≈2 | 不包含 |
RAGFLOW_IMAGE=infiniflow/ragflow:v0.16.0
- 修改配置RAGFLOW_IMAGE,默认的地址可能下载会比较慢,我们可以使用国内镜像源
华为云镜像名:swr.cn-north-4.myhuaweicloud.com/infiniflow/ragflow
阿里云镜像名:registry.cn-hangzhou.aliyuncs.com/infiniflow/ragflow
RAGFLOW_IMAGE=registry.cn-hangzhou.aliyuncs.com/infiniflow/ragflow:v0.16.0
- 其他配置,.env中定义了使用的各种服务对外端口、用户名、密码,版本号以及内存限制等其他信息,如果需要修改请确保修改的配置与service_conf.yaml.template 文件中的配置保持一致。
3.启动、停止
启动:
cd ragflow/docker``docker compose -f docker-compose.yml up –d
停止:
docker compose -f docker/docker-compose.yml down –v
注意:-v 将会删除 docker 容器的 volumes,已有的数据会被清空,正常停止不要携带该参数。
5.查看服务是否正常启动
docker logs -f ragflow-server
出现以下信息,即可使用浏览器打开登陆页面
默认首页地址: http://部署机器的IP:端口 端口默认【80】具体端口参考docker-compose.ym 文件中的配置
使用
1.注册登录
填写基础信息,点击继续,进入登录页面
2.配置语言模型
进入模型提供商页面,我们可以看到各种模型厂商信息,这里我们配置本地模型经常用到的三个类型分别是 Ollama、OpenAI-API-Compatible、LocalAI。如果是其他模型厂商官网提供的可以使用对应的厂商模型,直接配置官网提供的API-key、Base-Url即可。我这边重点说明一下本地接入三种方式的区别,用聊天补全接口作为示例,其他接口类似:
模型类型 | 请求路径 | Header中Authorization是否生效 |
Ollama | /v1 /completions | 是 |
OpenAI-API-Compatible | /v1/chat/completions | 是 |
LocalAI | /v1/chat/completions | 否 |
我这边的模型是符合 /v1/chat/completions 格式,并且需要校验Authorization,所以我这边选择OpenAI-API-Compatible厂商配置。配置好后点击确定。
3.创建知识库
知识库配置页面,嵌入模型我们选择BAAI/bge-large-zh-v1.5即可,其他配置暂时默认,点击保存。
选择文件,我这边使用的word文档,然后确定。
在数据集中看到我们刚刚上传的文档,我们点击这个开始解析按钮,等待解析成功
文件解析成功后,我们可以点击名称查看分块信息。我们可以禁用一些分块或者针对一些分块添加关键词增加检索匹配的能力。我这边对这个块自定义个关键词和问题,等会来测试效果。
我们进行一下检索测试,在测试文本中输入我们的关键词或问题看一下检索效果,测试结果跟预期一样。
4.新建助理
注意知识库需要有文档才能在这个配置页面查看到,否则是看不见的。
模型选择我们开始自己配置的模型,我配置的是DeepSeek,然后保存。
创建会话,查看知识库检索效果。我们提问问题,发现可以从知识库中检索出相关信息,并给我们相关引用信息。
其他说明
我们可以基于这个框架,然后上传我们的自己的文档,打造各种各样的私有助理,比如产品助理、医疗助理等等~~~
后续还会给大家整理更多 RAGFlow 实际使用中遇到的问题。
AI大模型学习路线
如果你对AI大模型入门感兴趣,那么你需要的话可以点击这里大模型重磅福利:入门进阶全套104G学习资源包免费分享!
扫描下方csdn官方合作二维码获取哦!
这是一份大模型从零基础到进阶的学习路线大纲全览,小伙伴们记得点个收藏!
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
100套AI大模型商业化落地方案
大模型全套视频教程
200本大模型PDF书籍
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
LLM面试题合集
大模型产品经理资源合集
大模型项目实战合集
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓