RAGFlow open-source Retrieval-Augmented Generation (RAG) engine — deployment, configuration, management, and troubleshooting.

Polar Sponsor
爱发电 赞助
.NET 9.0

RAGFlow 开源检索增强生成(RAG)引擎——部署、配置、管理与故障排除

打开 RAGFlow

功能概述

打开 RAGFlow是一项面向实际任务的技能,主要用于打开源代码 RAG 引擎以代理能力来启动 RAG. . . 富尔- 斯塔克: Python 后端 (Flask), React/ TypeScript 前端, 多克- 部署的微服务. . . 使用 case.;Dept. 部署或自動- .。

核心要点

  • 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
  • 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
  • 从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。

使用与执行

实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;

结果检查与注意事项

涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。

Open RAGFlow

开源 RAG 引擎,融合 RAG 与 Agent 能力。全栈架构:Python 后端(Flask)、React/TypeScript 前端、基于 Docker 的微服务部署。

使用场景

  • 通过 Docker Compose 或源码方式部署或自托管 RAGFlow
  • 配置 RAGFlow(LLM 提供商、API 密钥、文档引擎、端口等)
  • 通过 RAGFlow CLI 管理知识库、数据集、文档、Agent 和对话
  • 理解 RAGFlow 架构(DeepDoc、Agent 系统、RAG 流水线)
  • 集成 RAGFlow REST API
  • 排查 RAGFlow 部署或运行时问题

快速参考

  • 官网: https://ragflow.io
  • 云服务: https://cloud.ragflow.io
  • 文档: https://ragflow.io/docs/dev/
  • 代码仓库: https://github.com/infiniflow/ragflow
  • Discord 社区: https://discord.gg/NjYzJD3GM3
  • Docker Hub: infiniflow/ragflow
  • 许可证: Apache 2.0

何时使用哪份参考文档

  • 部署 / 排查部署问题 → references/deployment.md
  • 理解架构 / 组件 / 数据流 → references/architecture.md
  • 使用 CLI 管理数据集、Agent、模型 → references/cli-reference.md

前置条件

  • CPU ≥ 4 核,内存 ≥ 16 GB,磁盘 ≥ 50 GB
  • Docker ≥ 24.0.0 且 Docker Compose ≥ v2.26.1
  • vm.max_map_count ≥ 262144(Linux 系统,用于 Elasticsearch)
  • gVisor:可选,仅在启用代码执行器(sandbox)功能时需要

Docker 部署(快速开始)

git clone https://github.com/infiniflow/ragflow.git
cd ragflow/docker
docker compose -f docker-compose.yml up -d
docker logs -f docker-ragflow-cpu-1  # 等待启动横幅(banner)出现后即可登录
# 在浏览器中打开 http://YOUR_SERVER_IP

在 docker/service_conf.yaml.template 中的 user_default_llm 下配置 LLM API 密钥,然后重启服务:

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

国内镜像源

若从 Docker Hub 拉取镜像速度较慢:

  • 华为云: swr.cn-north-4.myhuaweicloud.com/infiniflow/ragflow
  • 阿里云: registry.cn-hangzhou.aliyuncs.com/infiniflow/ragflow

如需设置 HuggingFace 镜像,请在 docker/.env 中添加:HF_ENDPOINT=https://hf-mirror.com。

关键配置文件

文件 作用范围
docker/.env 环境变量:SVR_HTTP_PORT、MYSQL_PASSWORD、MINIO_PASSWORD、DOC_ENGINE、RAGFLOW_IMAGE、HF_ENDPOINT
docker/service_conf.yaml.template 后端服务配置:LLM 工厂、API 密钥、embedding/rerank/ASR/TTS 模型
docker/docker-compose.yml 全栈服务编排
docker/docker-compose-base.yml 仅基础设施服务(开发模式)

部署后 LLM 配置

  1. 通过浏览器登录系统
  2. 编辑 docker/service_conf.yaml.template:
    user_default_llm:
      factory: "OpenAI"   # 或 "DeepSeek"、"Gemini" 等
      api_key: "sk-..."
      base_url: "https://api.openai.com/v1/"
    
  3. 执行 docker compose -f docker-compose.yml up -d 应用变更。

CLI 快速参考

所有 CLI 命令均以 ; 结尾。完整命令说明详见:references/cli-reference.md。

# 数据集
LIST DATASETS;
CREATE DATASET 'my_kb' WITH EMBEDDING 'text-embedding-ada-002' PARSER 'pdf';
DROP DATASET 'my_kb';
LIST FILES OF DATASET 'my_kb';

# 文档
IMPORT '/path/to/doc.pdf' INTO DATASET 'my_kb';
PARSE DATASET 'my_kb' SYNC;
PARSE DATASET 'my_kb' ASYNC;

# 搜索
SEARCH 'What is RAG?' ON DATASETS 'my_kb';

# 模型
CREATE MODEL PROVIDER 'openai' 'sk-...';
SET DEFAULT LLM 'gpt-4';
LIST MODEL PROVIDERS;
LIST DEFAULT MODELS;

# Agent 与对话
LIST AGENTS;
LIST CHATS;
CREATE CHAT 'my_session';
DROP CHAT 'my_session';

# 连接
PING;
SHOW CURRENT USER;

切换文档引擎(Elasticsearch → Infinity)

docker compose -f docker/docker-compose.yml down -v  # 警告:将清除所有数据
# 编辑 docker/.env:设置 DOC_ENGINE=infinity
docker compose -f docker-compose.yml up -d

Infinity 更轻量,但目前官方暂不支持 Linux/arm64 平台。

架构概览

Web UI(React+TS+vitejs+shadcn)→ Flask API(/api/)→ RAG Core(/rag/) + Agent(/agent/)
                                                          ↓
基础设施:MySQL + Elasticsearch/Infinity + Redis + MinIO
  • 后端(/api/):Flask Blueprint — kb、dialog、document、canvas、file、user
  • RAG Core(/rag/):DeepDoc 解析、LLM/embedding/rerank 抽象层、分块(chunking)、GraphRAG
  • Agent(/agent/):基于 Canvas 的工作流构建器,内置组件(LLM、Retrieval、Code Executor、MCP、Search、SQL)
  • 前端(/web/):React 18 + TypeScript + Vite

详细组件划分请参阅 references/architecture.md。

源码开发

git clone https://github.com/infiniflow/ragflow.git && cd ragflow
uv sync --python 3.12 && uv run python3 download_deps.py
docker compose -f docker/docker-compose-base.yml up -d
# 在 /etc/hosts 中添加:127.0.0.1 es01 infinity mysql minio redis sandbox-executor-manager
source .venv/bin/activate && export PYTHONPATH=$(pwd)
bash docker/launch_backend_service.sh
# 新开终端:
cd web && npm install && npm run dev

故障排查快速参考

问题 解决方法
network abnormal 浏览器报错 等待 Docker 日志中出现 RAGFlow 启动横幅(banner)——服务正在初始化
中国地区 Docker 拉取超时 使用 RAGFLOW_IMAGE 镜像(华为云 / 阿里云)
HuggingFace 不可达 export HF_ENDPOINT=https://hf-mirror.com
ARM64 平台 从源码构建 Docker 镜像(暂无官方 ARM64 镜像)
端口冲突 在 docker-compose.yml 中将 80:80 改为 :80
Elasticsearch 退出码为 137 增加 Docker 内存分配
vm.max_map_count 过低 sudo sysctl -w vm.max_map_count=262144

API 与 SDK

  • REST API:http://SERVER_IP/api/ — Swagger 文档位于 /api/docs
  • Python SDK:位于 sdk/python/
  • CLI 客户端:python admin/client/ragflow_cli.py
  • 使用指南:https://ragflow.io/docs/dev/

相关专题

更多
Go-Zero API开发使用教程
Go-Zero API开发使用教程

本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。

2026.11.12

0

15

Go-Zero安装与goctl环境配置教程
Go-Zero安装与goctl环境配置教程

本专题围绕Go-Zero的安装与工具链配置展开,讲清Go版本要求、goctl安装方式、代理镜像、protoc依赖与环境变量设置,说明多版本共存、升级回退与CI流水线安装的做法,并整理安装阶段的常见报错与验证步骤。

2026.11.12

0

15

Go-Zero零基础入门教程
Go-Zero零基础入门教程

本专题整理Go-Zero的入门知识,从框架定位、环境准备到跑通第一个API服务,讲清目录分层、配置加载、日志与中间件的基本用法,并对比Gin、Kratos的差异,帮助Go开发者建立整体认知,判断它是否适合当前项目。

2026.11.12

0

15

Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

2026.11.06

0

12

Postman请求头Headers怎么设置
Postman请求头Headers怎么设置

围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。

2026.11.06

0

13

Postman接口请求发送教程
Postman接口请求发送教程

详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。

2026.11.06

0

10

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

0

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

0

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

0

16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 134.3万人学习