RAGFlow (一) 开发环境搭建

本文介绍如何在Windows上进行RAGFlow开发环境搭建

一. 环境准备

 前提条件

  • CPU ≥ 4 核
  • 内存 ≥ 16 GB
  • 磁盘 ≥ 50 GB
  • Docker ≥ 24.0.0 & Docker Compose ≥ v2.26.1

  • 安装Docker Desktop
  • 为wsl安装Ubuntu
1.启用 WSL2​​(Windows Subsystem for Linux)2.wsl --install -d Ubuntu  # 安装Ubuntu发行版

windows会默认把Ubuntu安装到C盘,可以选择迁移一下:
详见:WSL 默认路径迁移

二、从源码启动服务

要从源代码启动 RAGFlow 服务:

克隆 RAGFlow 仓库

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

进入WSL,进入到拉取的项目路径下

wsl -d Ubuntu #进入容器cd /自己的项目路径/ragflow/

安装 Python 依赖

  1. 安装 uv

    pipx install uv
    
  2. 安装 Python 依赖

    • 精简版
    uv sync --python 3.10 # install RAGFlow dependent python modules
    
    • 完整版
    uv sync --python 3.10 --all-extras # install RAGFlow dependent python modules
    

    系统会创建一个名为 .venv 的虚拟环境,并将所有 Python 依赖项安装到该新环境中。

  3. 进入虚拟环境

source .venv/bin/activate

启动第三方服务

以下命令使用 Docker Compose 启动“基础”服务(MinIO、Elasticsearch、Redis 和 MySQL):

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

 可到Docker Desktop中查看容器情况

更新第三方服务的 host 和 port 设置

  1. 将以下行添加到Ubuntu的 /etc/hosts 文件中,以将 docker/service_conf.yaml.template 中指定的所有主机解析到 127.0.0.1

    127.0.0.1       es01 infinity mysql minio redis
    
  2. 在 docker/service_conf.yaml.template 中,将 mysql 端口更新为 5455,es 端口更新为 1200,这些端口是在 docker/.env 中指定的。

启动 RAGFlow 后端服务

       后端服务博主在windows powershell,uv虚拟环境中启动

  1. 注释掉 docker/entrypoint.sh 文件中的 nginx 行。

    # /usr/sbin/nginx
    
  2. 激活 Python 虚拟环境

    source .venv/bin/activate
    export PYTHONPATH=$(pwd)
    
  3. 可选:如果您无法访问 HuggingFace,请设置 HF_ENDPOINT 环境变量以使用镜像站点:

    export HF_ENDPOINT=https://hf-mirror.com
    
  4. 检查 conf/service_conf.yaml 中的配置,确保所有主机和端口都已正确设置。

  5. 运行 entrypoint.sh 脚本以启动后端服务:

    JEMALLOC_PATH=$(pkg-config --variable=libdir jemalloc)/libjemalloc.so;
    LD_PRELOAD=$JEMALLOC_PATH python rag/svr/task_executor.py 1;
    

    python api/ragflow_server.py;
    

如果在后台服务启动中遇到报错,大概率是某些包未安装,按异常提示安装缺少的包即可。

启动 RAGFlow 前端服务

       前端服务启动博主在IDE中进行启动

  1. 导航到 web 目录并安装前端依赖:

    cd web
    npm install
    
  2. 将 .umirc.ts 文件中的 proxy.target 更新为 http://127.0.0.1:9380

    vim .umirc.ts
    
  3. 启动 RAGFlow 前端服务:

    npm run dev 
    

    出现以下消息,显示前端服务的 IP 地址和端口号:

访问 RAGFlow 服务

在您的网络浏览器中,输入 http://127.0.0.1:<PORT>/,确保端口号与上图所示的端口号匹配。

登陆后即可进入主页

至此,RAGFlow的本地部署完成

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/94133.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/94133.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

k8sday13数据存储(1.5/2)

目录 二、高级核心存储 1、PV 1.1配置文件 ①、访问模式&#xff08;accessModes&#xff09; ②、回收策略&#xff08;persistentVolumeReclaimPolicy&#xff09; ③、存储类别 ④、状态&#xff08;Status&#xff09; 1.2创建测试 ①、准备NFS环境 ②、创建PV …

【力扣 Hot100】每日一题

D15 鲁迅曾说&#xff0c;尽量每天都让自己充实一点&#xff0c;你可以刷一个小时的短视频&#xff0c;打一个小时的王者荣耀&#xff0c;但尽量再留一个小时出来读一下书、教程、博客&#xff0c;让自己的大脑保持活跃&#xff0c;而不是垃圾场。如果真的没有事情做&#xff…

Sql server的行转列

业务场景&#xff1a;有如下一张表&#xff0c;希望汇总成下面的查询结果。 原始数据表 EmployeeTable&#xff1a;一个员工身兼多个岗位。 Employee Role Level 张三 工程师 3 张三 经理 5 李四 工程师 2 李四 主管…

某市-2025【网安·论道】决赛-misc1-翻转-wp

题目给了个图片以及一句提示 “斯蒂xx会帮助你” 直接就能想到 ste 开头的那几个工具&#xff0c;但是我比赛时候电脑什么ste开头的工具都没装&#xff0c;只能回来做了。 └─$ exiftool x.jpeg ExifTool Version Number : 13.00 File Name : …

[系统架构设计师]大数据架构设计理论与实践(十九)

[系统架构设计师]大数据架构设计理论与实践&#xff08;十九&#xff09; 一.传统数据处理系统的问题 1.传统数据库的数据过载问题 传统应用的数据系统架构设计时&#xff0c;应用直接访问数据库系统。当用户访问量增加时&#xff0c;数据库无 法支撑日益增长的用户请求的负载&…

UniAD

1. 算法动机及开创性思路 1&#xff09;UniAD算法简介 算法全称&#xff1a;Planning-oriented Autonomous Driving核心特点&#xff1a; 统一框架整合感知、预测、规划模块CVPR 2023最佳论文采用查询(query)方式连接各模块 名称含义&#xff1a; Unified&#xff1a;统一多模块…

ESP-NOW详解(esp-idf)

esp-now目前主要支持单播和广播&#xff0c;广播地址为ff:ff:ff:ff:ff:ff,广播可以向范围内所有拥有esp-now接收的设备发送数据 注意事项&#xff0c;网络模式是可以设置网络mac地址的&#xff0c;在单播中&#xff0c;目标设备网络模式选择为ap时&#xff0c;mac地址会发生改…

`strlen` 字符串长度函数

1) 函数的概念与用途 strlen 是 C 语言标准库中最基础且使用最频繁的字符串处理函数之一&#xff0c;它的名字来源于"string length"&#xff08;字符串长度&#xff09;。这个函数的功能非常明确&#xff1a;计算一个以空字符结尾的字符串的长度。 可以将 strlen 想…

TorchInductor - Introduction

PyTorch 2.x通过TorchDynamo通过Python Bytecode的动态变换实现了图捕获功能&#xff0c;需要搭配一个Compiler Backend完成图编译。 Pytorch尝试集成了多个后端&#xff0c;并使用一个轻量级的autotuner来选择最优的后端图编译结果。这个解决方案存在2个问题&#xff1a; 这…

Adobe Illustrator默认键盘快捷键

目录 默认键盘快捷键 常用的快捷键 处理文档 选择工具 查看图稿 处理所选对象 绘制 编辑形状 处理实时上色组 处理对象 创建可变宽度点 处理文字 使用面板 动作面板 “画笔”面板 “字符”和“段落”面板 “颜色”面板 “渐变”面板 “图层”面板 “色板”…

「数据获取」《中国能源统计年鉴》(1986-2023)(获取方式看绑定的资源)

01、数据简介一、年鉴基本定位与发展历程《中国能源统计年鉴》作为一部权威性极强的能源领域资料典籍&#xff0c;始终以全面、精准反映中国能源建设推进、生产运行、消费态势以及供需平衡状况为核心使命。其编纂工作发轫于 1986 年&#xff0c;最初由国家统计局工业交通统计司…

SpringBoot3系列---【SpringBoot3集成sqlite】

SpringBoot3集成sqlite 1.引入pom.xml <dependencies><dependency><groupId>org.xerial</groupId><artifactId>sqlite-jdbc</artifactId><version>3.34.0</version></dependency><dependency><groupId>com.…

头部 TTS 开源项目深度对比

语音合成&#xff08;TTS&#xff09;开源项目是技术研究与产业落地的核心支撑&#xff0c;不同项目因技术路线、设计目标差异&#xff0c;在语言覆盖、合成自然度、可扩展性等方面表现悬殊。本文选取当前开源生态中应用最广、影响力最大的五大 TTS 项目——MaryTTS、Coqui TTS…

可视化-模块1-HTML-02

1-新建一个HTML文档&#xff0c;命名为&#xff1a;week1-12-<h1>标签<body><h1>这是标题 1</h1> <h2>这是标题 2</h2> <h3>这是标题 3</h3> <h4>这是标题 4</h4> <h5>这是标题 5</h5> <h6>这是…

搜索算法在实际场景中的应用

1. 数据库系统 B+树索引 应用场景:关系型数据库(MySQL、PostgreSQL等)的索引实现 算法特点: 平衡多路搜索树,优化磁盘I/O 支持范围查询和排序操作 典型实现: CREATE INDEX idx_name ON users(last_name); 哈希索引 应用场景:键值存储(Redis、Memcached)、等值查询 算…

基础IO

目录 一、进程和文件的关系 二、背景补充 三、打开文件接口 (1) FILE *fopen(const char* filename , const char *mode) &#xff08;2&#xff09;open 系统调用 文件描述符 open和fopen的关系 &#xff08;3&#xff09;size_t fwrite&#xff08;const void * ptr, …

SpringBoot快速上手

SpringBoot快速上手 环境准备 IDEA版本: 社区版:2021.1-2022.1.4 专业版:无要求 Maven 官方对于Maven的描述: Maven是一个项目管理工具,基于POM(Project Object Model,项目对象模型)的概念,Maven可以通过一小段描述信息来管理项目的构建,报告文档和项目管理工具软件. 人…

GitHub Actions workflow最佳实践

使用 GitHub Actions Workflow 时&#xff0c;遵循最佳实践可以显著提升自动化效率、安全性和可维护性。以下是经过实践验证的核心最佳实践&#xff0c;涵盖配置设计、性能优化、安全防护等维度&#xff0c;并附具体示例&#xff1a; 一、工作流组织与触发优化 1. 拆分工作流&a…

JAVA读取项目内的文件或图片

一、读取resources下的文件或图片&#xff1b;文件或图片位置&#xff1a;代码&#xff1a;InputStream fis Thread.currentThread().getContextClassLoader().getResourceAsStream("template/" xxx.jpg);二、读取项目内任意位置的文件或图片。文件或图片位置&…

Python如何将两个列表转化为一个字典

一、使用zip函数 zip函数是Python内置的一个强大工具&#xff0c;它可以将多个迭代器&#xff08;如列表、元组等&#xff09;“压缩”成一个迭代器&#xff0c;其中每个元素都是一个元组。使用zip函数将两个列表转换为字典是最常见的方法。 1、基本用法 keys [a, b, c] value…