💡 RAGFlow 是什么?

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

🌟 主要功能

🍭 “质量进,质量出”

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

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

  • RAGflow拥有一个深入的知识检索系统,当提供上下文信息时,它能够高效地处理非结构化或大量数据,并基于所提供的知识,智能生成准确、合理的内容。

🍱 基于模板的文本切片

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

  • 多种文本模板可供选择

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

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

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

🍔 兼容各类异构数据源

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

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

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

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

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

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

🔎 系统架构

🎬 快速开始

安装要求

  • CPU >= 2 核

  • 内存 >= 8 GB

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

  • 如果你并没有在本机安装 Docker(Windows、Mac,或者 Linux), 可以参考文档 Install Docker Engine 自行安装。

  • 演示在CentOS 7 系统上进行安装,最好是桌面环境的,自己准备好Clash等工具,因为后面添加Open AI的API密钥,受网络影响需要挂梯子连接。
    (群晖Docker版本不符合要求,你可以开群晖虚拟机自己尝试,这里略过。)

  • 一键安装Docker脚本

    curl -fsSL https://get.docker.com | bash -s docker
  • 一键安装指定版本docker-compose脚本

    sudo curl -L "https://github.com/docker/compose/releases/download/v2.26.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  • 安装git工具

    sudo yum install -y git
  • 安装完之后启动docker服务命令

    systemctl start docker

安装环境

  • 物理机

  • 系统:CentOS 7

  • CPU:i5-4570

  • 内存:DDR3-8G

安装教程

  1. 演示以在CentOS 7 系统上安装为例

  2. 打开系统的SSH功能,使用终端软件进行连接,并切换到root状态下。

  3. 查看系统vm.max_map_count的值

    sysctl vm.max_map_count

  4. 如果vm.max_map_count的值小于262144,可以进行重置:vm.max_map_count

    # 这里我们设为 262144
    
    sudo sysctl -w vm.max_map_count=262144
  5. 你的改动会在下次系统重启时被重置。如果希望做永久改动,还需要在 /etc/sysctl.conf 文件里把 的值再相应更新一遍。
    编辑/etc/sysctl.conf文件

    vi /etc/sysctl.conf
  6. 按字母 i 键进入编辑模式,再最后一行添加下面的参数,按Esc键退出编辑模式,输入 :wq 退出并保存。

    vm.max_map_count=262144

  7. 安装git工具

    sudo yum install -y git
  8. 克隆