ragflow

2025-12-11 0 207

文档|路线图| Twitter |不和谐|演示

目录
  • 什么是ragflow
  • ?演示
  • ?最新更新
  • ?关键功能
  • ?系统体系结构
  • ?开始
  • ?配置
  • ?在不嵌入模型的情况下构建Docker映像
  • ?构建一个码头图像,包括嵌入模型
  • ?开发来源的启动服务
  • 文档
  • 路线图
  • ?社区
  • ?贡献

什么是ragflow ?

ragflow是一种基于深厚文档理解的开源抹布(检索增强的生成)引擎。它为任何规模的企业提供了简化的RAG工作流程,结合了LLM(大型语言模型),以提供真实的提问功能,并获得来自各种复杂格式化数据的良好引用。

?演示

在https://demo.ra**gfl*ow.io上尝试我们的演示。

最新更新

  • 2025-05-23将Python/JavaScript代码执行程序组件添加到代理中。
  • 2025-05-05支持跨语言查询。
  • 2025-03-19支持使用多模式模型来理解PDF或DOCX文件中的图像。
  • 2025-02-28与互联网搜索(Tavily)结合使用,支持任何LLM的深入研究。
  • 2024-12-18在DeepDoc中升级文档布局分析模型。
  • 2024-08-22通过RAG支持SQL语句的文本。

?请继续关注

配进我们的存储库,以保持最新的新功能和改进!获取新版本的即时通知! ?

?关键功能

? “质量,质量”

  • 深层文档理解基于复杂格式的非结构化数据的知识提取。
  • 从字面上找到无限令牌的“数据干草堆中的针头”。

?基于模板的块

  • 聪明而可以解释。
  • 大量的模板选项可供选择。

?以减少幻觉的扎根引用

  • 可视化文本块,以允许人类干预。
  • 快速查看关键参考和可追溯引用以支持基础答案。

?与异质数据源的兼容性

  • 支持单词,幻灯片,Excel,TXT,图像,扫描副本,结构化数据,网页等。

?自动且轻松的抹布工作流程

  • 精简的RAG编排均符合个人和大型企业。
  • 可配置的LLM以及嵌入模型。
  • 多次召回与融合重新排列配对。
  • 与业务无缝集成的直观API。

?系统体系结构

?开始

先决条件

  • CPU> = 4个内核
  • RAM> = 16 GB
  • 磁盘> = 50 GB
  • docker> = 24.0.0&docker组成> = = v2.26.1
  • Gvisor:仅在您打算使用ragflow的代码执行程序(沙盒)功能时才需要。

提示

如果您尚未在本地计算机(Windows,Mac或Linux)上安装Docker,请参见Install Docker Engine。

启动服务器

  1. 确保vm.max_map_count> = 262144:

    要检查vm.max_map_count的值:

    $ sysctl vm.max_map_count

    reset vm.max_map_count如果不是,则至少为262144。

     # In this case, we set it to 262144:
    $ sudo sysctl -w vm.max_map_count=262144

    重新启动后,将重置此更改。为确保您的更改保持永久性,请在/etc/sysctl.conf中添加或更新vm.max_map_count值:

    vm.max_map_count=262144
  2. 克隆回购:

    $ git clone https://g*i*thub*.com/infiniflow/ragflow.git
  3. 使用预构建的Docker映像启动服务器:

警告

所有Docker图像都是为X86平台构建的。我们目前不提供ARM64的Docker图像。如果您在ARM64平台上,请按照本指南构建与系统兼容的Docker Image。

下面的命令下载了ragflow Docker Image的V0.19.1-SLIM版。有关不同的ragflow版本的描述,请参见下表。要下载与v0.19.1-Slim不同的ragflow Edition,请在使用Docker撰写以启动服务器之前,在Docker/.env中相应地更新ragflow _image变量。例如:设置ragflow _image = infiniflow/ ragflow :v0.19.1对于完整版V0.19.1。

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\”>

$ 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图像标签 图像大小(GB) 有嵌入模型吗? 稳定的?
V0.19.1 ≈9 ✔️ 稳定版本
v0.19.1-slim ≈2 稳定版本
每晚 ≈9 ✔️ 夜间不稳定
夜间lim ≈2 夜间不稳定
  1. 在让服务器启动并运行服务器后检查服务器状态:

    $ docker logs -f ragflow -server

    以下输出证实了系统的成功启动:

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

    如果您跳过此确认步骤并直接登录到ragflow ,则浏览器可能会引起网络androral错误,因为当时,您的ragflow可能无法完全初始化。

  2. 在您的Web浏览器中,输入服务器的IP地址并登录到ragflow 。

    使用默认设置,您只需要输入http:// ip_of_your_machine( sans端口号),因为使用默认配置时,即可省略默认的http服务端口80。

  3. 在service_conf.yaml.template中,选择USER_DEFAULT_LLM中所需的LLM工厂,然后使用相应的API键更新API_KEY字段。

    有关更多信息,请参见LLM_API_KEY_SETUP。

    节目开始了!

?配置

在系统配置方面,您需要管理以下文件:

  • service_conf.yaml.template:配置后端服务。当Docker容器启动时,该文件中的环境变量将自动填充。 Docker容器中设置的任何环境变量均可使用,使您可以根据部署环境自定义服务行为。
  • docker-compose.yml:该系统依赖于docker-compose.yml启动。

./docker/readme文件提供了环境设置和服务配置的详细说明,可以用作service_conf.yaml.template文件中的$ {env_vars}。

要更新默认的HTTP服务端口(80),请转到Docker-compose.yml,然后将80:80更改为<your_serving_port>:80。

上述配置的更新需要重新启动所有容器才能生效:

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

将DOC引擎从Elasticsearch转换为无限

ragflow默认使用Elasticsearch来存储全文和向量。要切换到无穷大,请按照以下步骤:

  1. 停止所有运行容器:

    $ docker compose -f docker/docker-compose.yml down -v

警告

-v将删除Docker容器量,并将清除现有数据。

  1. 将doc_engine设置在docker/.env中的无限。

  2. 启动容器:

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

警告

尚未正式支持在Linux/ARM64机器上切换到Infinity。

?在不嵌入模型的情况下构建Docker映像

该图像的大小约为2 GB,依赖于外部LLM和嵌入服务。

ragflow/
docker build –platform linux/amd64 –build-arg LIGHTEN=1 -f Dockerfile -t infiniflow/ ragflow :nightly-slim .\”>

git clone https://g*i*thub*.com/infiniflow/ragflow.git
cd ragflow /
docker build --platform linux/amd64 --build-arg LIGHTEN=1 -f Dockerfile -t infiniflow/ ragflow :nightly-slim . 

?构建一个码头图像,包括嵌入模型

该图像的大小约为9 GB。由于它包括嵌入模型,因此它仅依赖于外部LLM服务。

ragflow/
docker build –platform linux/amd64 -f Dockerfile -t infiniflow/ ragflow :nightly .\”>

git clone https://g*i*thub*.com/infiniflow/ragflow.git
cd ragflow /
docker build --platform linux/amd64 -f Dockerfile -t infiniflow/ ragflow :nightly . 

?开发来源的启动服务

  1. 安装UV,或者如果已经安装了此步骤:

    pipx install uv pre-commit
  2. 克隆源代码并安装python依赖性:

    ragflow/
    uv sync –python 3.10 –all-extras # install ragflow dependent python modules
    uv run download_deps.py
    pre-commit install\”>

    git clone https://g*i*thub*.com/infiniflow/ragflow.git
    cd ragflow /
    uv sync --python 3.10 --all-extras # install ragflow dependent python modules
    uv run download_deps.py
    pre-commit install
  3. 使用Docker组成:

    docker compose -f docker/docker-compose-base.yml up -d

    将以下行添加到/etc/hosts以解决Docker/.env中指定的所有主机至127.0.0.1:

    127.0.0.1       es01 infinity mysql minio redis sandbox-executor-manager
    
  4. 如果您无法访问拥抱面,请设置HF_ENDPOINT环境变量以使用镜像站点:

     export HF_ENDPOINT=https://hf*-m**irror.com
  5. 如果您的操作系统没有Jemalloc,请按以下方式安装:

     # ubuntu
    sudo apt-get install libjemalloc-dev
    # centos
    sudo yum install jemalloc
  6. 启动后端服务:

     source .venv/bin/activate
    export PYTHONPATH= $( pwd )
    bash docker/launch_backend_service.sh
  7. 安装前端依赖性:

     cd web
    npm install
  8. 启动前端服务:

    npm run dev

    以下输出证实了系统的成功启动:

  9. 开发完成后停止ragflow前端和后端服务:

    pkill -f \" ragflow _server.py|task_executor.py \" 

文档

  • Quickstart
  • 配置
  • 发行说明
  • 用户指南
  • 开发人员指南
  • 参考
  • 常见问题解答

路线图

请参阅ragflow路线图2025

?社区

  • 不和谐
  • 叽叽喳喳
  • Github讨论

?贡献

ragflow通过开源协作蓬勃发展。本着这种精神,我们接受社区的各种贡献。如果您想参与其中,请首先查看我们的贡献指南。

下载源码

通过命令行克隆项目:

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

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

左子网 编程相关 ragflow https://www.zuozi.net/33979.html

nix
上一篇: nix
MTConnect.NET
下一篇: MTConnect.NET
常见问题
  • 1、自动:拍下后,点击(下载)链接即可下载;2、手动:拍下后,联系卖家发放即可或者联系官方找开发者发货。
查看详情
  • 1、源码默认交易周期:手动发货商品为1-3天,并且用户付款金额将会进入平台担保直到交易完成或者3-7天即可发放,如遇纠纷无限期延长收款金额直至纠纷解决或者退款!;
查看详情
  • 1、描述:源码描述(含标题)与实际源码不一致的(例:货不对板); 2、演示:有演示站时,与实际源码小于95%一致的(但描述中有”不保证完全一样、有变化的可能性”类似显著声明的除外); 3、发货:不发货可无理由退款; 4、安装:免费提供安装服务的源码但卖家不履行的; 5、收费:价格虚标,额外收取其他费用的(但描述中有显著声明或双方交易前有商定的除外); 6、其他:如质量方面的硬性常规问题BUG等。 注:经核实符合上述任一,均支持退款,但卖家予以积极解决问题则除外。
查看详情
  • 1、左子会对双方交易的过程及交易商品的快照进行永久存档,以确保交易的真实、有效、安全! 2、左子无法对如“永久包更新”、“永久技术支持”等类似交易之后的商家承诺做担保,请买家自行鉴别; 3、在源码同时有网站演示与图片演示,且站演与图演不一致时,默认按图演作为纠纷评判依据(特别声明或有商定除外); 4、在没有”无任何正当退款依据”的前提下,商品写有”一旦售出,概不支持退款”等类似的声明,视为无效声明; 5、在未拍下前,双方在QQ上所商定的交易内容,亦可成为纠纷评判依据(商定与描述冲突时,商定为准); 6、因聊天记录可作为纠纷评判依据,故双方联系时,只与对方在左子上所留的QQ、手机号沟通,以防对方不承认自我承诺。 7、虽然交易产生纠纷的几率很小,但一定要保留如聊天记录、手机短信等这样的重要信息,以防产生纠纷时便于左子介入快速处理。
查看详情

相关文章

猜你喜欢
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务