RAGFlow:开源 RAG 引擎 2026 版

RAGFlow 是开源检索增强生成引擎。支持文档解析、向量检索、LLM 生成。可视化管道构建。

  • ⭐ 8900
  • Python
  • Elasticsearch
  • Milvus
  • Apache 2.0
  • 更新于 2026-05-18

什么是 RAGFlow? #

RAGFlow 是开源检索增强生成引擎。支持文档解析、向量检索、LLM 生成。提供可视化管道构建界面。

安装 #

Docker 部署 #

git clone https://github.com/ragflow-io/ragflow.git
cd ragflow/docker
docker-compose up -d

手动安装 #

pip install ragflow
ragflow-server --port 8080

核心功能 #

文档解析 #

  • PDF:文本 + 图片
  • Office:Word、Excel、PPT
  • 多媒体:音频转文字、视频关键帧
  • 网页:爬取 + 解析

向量检索 #

存储说明
Milvus大规模,GPU 加速
Elasticsearch全文检索 + 向量
SQLite小规模,本地
PostgreSQLpgvector 扩展

LLM 生成 #

  • OpenAI:GPT-4、GPT-3.5
  • Anthropic:Claude
  • Ollama:本地模型
  • GLM:智谱 AI
  • Qwen:阿里巴巴

使用流程 #

1. 创建工作区 #

from ragflow import RAGFlowClient

client = RAGFlowClient()
workspace = client.create_workspace("知识库")

2. 上传文档 #

# 命令行
ragflow upload --workspace my-bdd --file documents/

# 或通过 API
documents = workspace.upload_files(["doc1.pdf", "doc2.docx"])

3. 解析文档 #

# 自动解析
chunk_manager = workspace.build_chunks_kg(all_time=True)

4. 向量化 #

# 选择嵌入模型
embeddings = workspace.set_embeddings(
    model_name="text-embedding-3-small"
)
embeddings.vectorize_job(all_time=True)

可视化构建 #

管道设计器 #

文档 → 解析 → 分块 → 向量化 → 检索 → 生成

节点配置 #

  • 解析器:选择 OCR、规则、AI
  • 分块器:按页、句子、语义
  • 向量模型:embedding 参数
  • 检索器:Top-K、相似度
  • 重排器:RRF、MMR

API 接口 #

REST API #

# 查询
curl -X POST http://localhost:8080/api/v1/datasets/{dataset_id}/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"question": "解释一下这个项目"}'

Python SDK #

from ragflow import RAGFlow

rf = RAGFlow()
dataset = rf.get_dataset("my-dataset")

answer = dataset.query("项目的技术栈是什么?")
print(answer)

部署优化 #

资源配置 #

模型推荐内存显存
7B16GB8GB
13B32GB12GB
34B64GB24GB

生产配置 #

# docker-compose.override.yml
services:
  ragflow:
    environment:
      - RAGFLOW_WEB_SERVER_PORT=8080
      - RAGFLOW_EMBEDDING_MODEL=text-embedding-3-small
      - RAGFLOW_VECTOR_STORE=Milvus

高级功能 #

知识图谱 #

# 构建实体关系
kg = workspace.create_kg()
entities = kg.extract_entities(documents)
relations = kg.extract_relations(entities)

评估指标 #

# RAG 评估
evaluator = workspace.create_evaluator()
metrics = evaluator.evaluate(ground_truth, predictions)

常见问题 #

Q: RAGFlow 支持多租户吗?

答:支持。通过 workspace 隔离数据。

Q: 如何提高检索准确度?

答:增加文档、调整分块、使用混合检索、添加重排器。

Q: 支持私有化部署吗?

答:完全开源。可离线部署,数据不出本地。

总结 #

RAGFlow 把「RAG 实战」变成「拖拽式」工作流程。从文档到答案,一键完成。


参考:ragflow.io 更新:2026-05-18

📦 出现在以下合集中

💬 留言讨论