一、RAGFlow介绍

RAGFlow 是一款基于深度文档理解构建的开源 RAG(Retrieval-Augmented Generation)引擎。RAGFlow 可以为各种规模的企业及个人提供一套精简的 RAG 工作流程,结合大语言模型(LLM)针对用户各类不同的复杂格式数据提供可靠的问答以及有理有据的引用。

官网:https://ragflow.io/

github地址:

https://github.com/infiniflow/ragflow

官方文档:

https://ragflow.io/docs/

二、主要功能

🍭 "Quality in, quality out"

  • 基于深度文档理解,能够从各类复杂格式的非结构化数据中提取真知灼见。

  • 真正在无限上下文(token)的场景下快速完成大海捞针测试。

🍱 基于模板的文本切片

  • 不仅仅是智能,更重要的是可控可解释。

  • 多种文本模板可供选择

🌱 有理有据、最大程度降低幻觉(hallucination)

  • 文本切片过程可视化,支持手动调整。

  • 有理有据:答案提供关键引用的快照并支持追根溯源。

🍔 兼容各类异构数据源

  • 支持丰富的文件类型,包括 Word 文档、PPT、excel 表格、txt 文件、图片、PDF、影印件、复印件、结构化数据、网页等。

🛀 全程无忧、自动化的 RAG 工作流

  • 全面优化的 RAG 工作流可以支持从个人应用乃至超大型企业的各类生态系统。

  • 大语言模型 LLM 以及向量模型均支持配置。

  • 基于多路召回、融合重排序。

  • 提供易用的 API,可以轻松集成到各类企业系统。

三、 系统架构

图片

四、安装RAGFlow

1、服务器环境要求

  • CPU >= 4 核

  • RAM >= 16 GB

  • Disk >= 50 GB

  • Docker >= 24.0.0 & Docker Compose >= v2.26.1

2、Ubuntu服务器配置

确保 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

3、下载源码

 git clone https://github.com/infiniflow/ragflow.git

4、启动docker镜像

进入 docker 文件夹,利用提前编译好的 Docker 镜像启动服务器:

 cd ragflow/docker# Use CPU for embedding and DeepDoc tasks: docker compose -f docker-compose.yml up -d# To use GPU to accelerate embedding and DeepDoc tasks:# docker compose -f docker-compose-gpu.yml up -d

 各个版本的镜像情况:

RAGFlow image tag

Image size (GB)

Has embedding models?

Stable?

v0.18.0

≈9

✔️

Stable release

v0.18.0-slim

≈2

Stable release

nightly

≈9

✔️

Unstable

 nightly build

nightly-slim

≈2

Unstable

 nightly build

如果你遇到 Docker 镜像拉不下来的问题,可以在 docker/.env 文件内根据变量 RAGFLOW_IMAGE 的注释提示选择华为云或者阿里云的相应镜像。

  • 华为云镜像名:swr.cn-north-4.myhuaweicloud.com/infiniflow/ragflow

  • 阿里云镜像名:registry.cn-hangzhou.aliyuncs.com/infiniflow/ragflow

5、 服务器启动成功后再次确认服务器状态

docker logs -f ragflow-server

出现以下界面提示说明服务器启动成功:

     ____   ___    ______ ______ __    / __ \ /   |  / ____// ____// /____  _      __   / /_/ // /| | / / __ / /_   / // __ \| | /| / /  / _, _// ___ |/ /_/ // __/  / // /_/ /| |/ |/ / /_/ |_|/_/  |_|\____//_/    /_/ \____/ |__/|__/
 * Running on all addresses (0.0.0.0)

如果您在没有看到上面的提示信息出来之前,就尝试登录 RAGFlow,你的浏览器有可能会提示 network anormal 或 网络异常。

6、访问RAGFlow

在你的浏览器中输入你的服务器对应的 IP 地址并登录 RAGFlow。上面这个例子中,您只需输入 http://IP_OF_YOUR_MACHINE 即可:未改动过配置则无需输入端口(默认的 HTTP 服务端口 80)。

图片

第一次打开是界面如上,需要点击“注册”,创建个管理员账号。然后使用邮箱+密码登录。

图片

图片

右上角 切换语言。RAGFlow的安装成功了。接下来我们将创建一个RAG应用。

五、设置模型提供商

1、添加对话模型

路径:右上角头像-->模型提供商。

图片

(1)添加第3方在线API

只要添加相关API-Key信息即可,比如SILICONFLOW,填写key就可以了,SILICONFLOW内置了大量各种大模型,包括chat,embedding,rerank等,非常方便。

图片

(2)或添加本地推理模型

比如Ollama,vLLM,Xinference等。我们就拿Ollama演示(本地服务器无显卡,只能使用Ollama,不推荐生产环境使用)。

图片

上图所示,模型类型有4种,说明RAG流程种的4种场景。

  • chat :LLM自然语言大模型;

  • embedding:嵌入模型;

  • rerank:重排序;

  •  image2text:图片转文本;

我们创建一个chat类型的大模型,记住Ollama一定要是启动状态,且能够正常对话,否则添加失败。安装Ollama详情看文章《 速看!最新版 Dify 连接 Ollama 与 vLLM 全攻略

图片

添加LLM成功后,可以在页面上部看到。

图片

我们还要再添加嵌入模型Embedding,否则无法创建知识库。继续以Ollama为例,点击“添加模型”,模型类型 选择embedding。

图片

2、设置默认模型

路径:点击头像--》模型提供商--》设置默认模型。

图片

聊天模型、嵌入模型等选择刚刚设置的对应的模型。

六、聊天助理

1、新建聊天助理

路径:菜单 聊天--》新建聊天助理 。

(1)助理设置:

图片

  • 助理姓名:填写姓名;

  • 设置开场白:用户每次打开聊天对话框,提示的文本;

  • 显示引文:显示引用哪个知识库;

  • 关键词分析:通过关键词检索获取答案;

  • 文本转语音:语音播报,需要配置TTS大模型;

  • Tavily API Key:网络搜索;

  • 知识库:选择创建好的知识库,默认可不选择;

(2)提示引擎:

图片

  • 系统提示词:可看到大模型的回答,若问题未能在知识库中找到,则直接答复"知识库中未找到您要的答案!"这样就杜绝了幻觉。

  • 相似度:使用混合相似度得分来评估两行文本之间的距离。 它是加权关键词相似度和向量余弦相似度。 如果查询和块之间的相似度小于此阈值,则该块将被过滤掉。默认设置为 0.2,也就是说文本块的混合相似度得分至少 20 才会被召回。该值越大,模型在检索问题的时候精度越高,越易出现答复”知识库中未找到您要的答案!“ ,对使用者要求较高,需要问的问题较专业;该值越小,越容易出现幻觉。

  • 关键字相似度权重:需要开启”助理设置“中的关键词分析。

  • Top N:并非所有相似度得分高于“相似度阈值”的块都会被提供给大语言模型。 LLM 只能看到这些“Top N”块。

  • 多轮对话优化:在多轮对话的中,对去知识库查询的问题进行优化。会调用大模型额外消耗token。

  • 知识图谱:为了处理多个不同的知识库。

  • 推理:主要是针对思维链,比如 deepseek-r1,chatgpt-o1 ,做RAG场景,一般不打开,若打开则大模型会倾向于大模型自身的答复,而不是知识库里的回答。

  • Rerank:重排序,需要设置重排序大模型;

  • 变量:主要用于API的设置;

(3)模型设置:

图片

主要是大模型的设置。

  • 模型:选择我们设置的LLM大模型;

  • 自由度:RAG场景一般选择“精确”,这样就倾向于知识库里的内容;“即兴创作”则是倾向于大模型本身的内容;

  • 温度:RAG场景更多是使用知识库,所以温度要往低调整;

  • TOP P:该参数也称为“核心采样”,它设置一个阈值来选择较小的单词集进行采样。 它专注于最可能的单词,剔除不太可能的单词。

  • 存在处罚:这会通过惩罚对话中已经出现的单词来阻止模型重复相同的信息。

  • 频率惩罚:与存在惩罚类似,这减少了模型频繁重复相同单词的倾向。

2、聊天对话

上一步创建了一个聊天助理,我们来进行对话。“你好,你叫什么名字”

图片

回复的内容是“知识库中没有明确提到与“名字”相关的具体信息。如果您能提供更多背景或上下文内容,我将尽力为您找到相关答案。” 

因为我们没有设置知识库,而上一步骤配置助理的时候,在系统提示词里限制了只能从知识库里检索。所以,需要修改下助理,设置知识库。

 如何系统的去学习大模型LLM ?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

事实上,抢你饭碗的不是AI,而是会利用AI的人。

科大讯飞、阿里、华为等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?

与其焦虑……

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

基于此,我用做产品的心态来打磨这份大模型教程,深挖痛点并持续修改了近70次后,终于把整个AI大模型的学习门槛,降到了最低!

在这个版本当中:

第一您不需要具备任何算法和数学的基础
第二不要求准备高配置的电脑
第三不必懂Python等任何编程语言

您只需要听我讲,跟着我做即可,为了让学习的道路变得更简单,这份大模型教程已经给大家整理并打包,现在将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

一、LLM大模型经典书籍

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

在这里插入图片描述

二、640套LLM大模型报告合集

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)
在这里插入图片描述

三、LLM大模型系列视频教程

在这里插入图片描述

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt)

在这里插入图片描述

五、AI产品经理大模型教程

在这里插入图片描述

LLM大模型学习路线 

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 LLM大模型资料 包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

 

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐