RAGFlow 开源检索增强生成(RAG)引擎——部署、配置、管理与故障排除
打开 RAGFlow是一项面向实际任务的技能,主要用于打开源代码 RAG 引擎以代理能力来启动 RAG. . . 富尔- 斯塔克: Python 后端 (Flask), React/ TypeScript 前端, 多克- 部署的微服务. . . 使用 case.;Dept. 部署或自動- .。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
开源 RAG 引擎,融合 RAG 与 Agent 能力。全栈架构:Python 后端(Flask)、React/TypeScript 前端、基于 Docker 的微服务部署。
infiniflow/ragflowvm.max_map_count ≥ 262144(Linux 系统,用于 Elasticsearch)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/ragflowregistry.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 |
仅基础设施服务(开发模式) |
docker/service_conf.yaml.template:user_default_llm: factory: "OpenAI" # 或 "DeepSeek"、"Gemini" 等 api_key: "sk-..." base_url: "https://api.openai.com/v1/"
docker compose -f docker-compose.yml up -d 应用变更。所有 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;
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/):DeepDoc 解析、LLM/embedding/rerank 抽象层、分块(chunking)、GraphRAG/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 改为 |
| Elasticsearch 退出码为 137 | 增加 Docker 内存分配 |
vm.max_map_count 过低 |
sudo sysctl -w vm.max_map_count=262144 |
http://SERVER_IP/api/ — Swagger 文档位于 /api/docssdk/python/python admin/client/ragflow_cli.py 相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.3万人学习
共49课时 | 82.7万人学习
最新文章