随着大语言模型(LLM)的普及,检索增强生成(RAG)技术成为企业构建知识库与智能问答系统的核心工具。然而,开源社区中涌现的 RAG 框架功能各异,如何选择适合自身场景的方案?本文从功能特性、适用场景、社区生态等维度,对 15 款主流开源 RAG 框架进行深度对比,并提供选型建议。
选型指南:按需求场景选择

选型指南:按技术要求选择

一、通用型框架:企业级开发与复杂任务
1. Dify
核心优势:全栈 LLM 应用开发平台,支持数百种模型(GPT、Llama3 等)、可视化工作流编排、Agent 框架(50+ 工具链)、LLMOps 监控,覆盖从原型开发到生产部署的全生命周期。
适用场景:企业级生成式 AI 应用(如客服自动化、数据分析报告生成)。
推荐指数:★★★★★
GitHub 星数:84.8k+
开源协议:Apache License 2.0
项目地址:https://github.com/langgenius/dify
项目介绍
Dify 是一个开源的 LLM 应用开发平台。其直观的界面结合了 AI 工作流、RAG 管道、Agent、模型管理、可观测性功能等,让您可以快速从原型到生产。

功能特点
- 工作流: 在画布上构建和测试功能强大的 AI 工作流程。
- 模型支持: 与数百种专有/开源 LLMs 以及数十种推理提供商和自托管解决方案无缝集成,涵盖 GPT、Mistral、Llama3 以及任何与 OpenAI API 兼容的模型。
- Prompt IDE: 用于制作提示、比较模型性能以及向基于聊天的应用程序添加其他功能(如文本转语音)的直观界面。
- RAG Pipeline: 广泛的 RAG 功能,涵盖从文档摄入到检索的所有内容,支持从 PDF、PPT 和其他常见文档格式中提取文本的开箱即用的支持。
- Agent 智能体: 您可以基于 LLM 函数调用或 ReAct 定义 Agent,并为 Agent 添加预构建或自定义工具。Dify 为 AI Agent 提供了 50 多种内置工具,如谷歌搜索、DALL·E、Stable Diffusion 和 WolframAlpha 等。
- LLMOps: 随时间监视和分析应用程序日志和性能。您可以根据生产数据和标注持续改进提示、数据集和模型。
- 后端即服务: 所有 Dify 的功能都带有相应的 API,因此您可以轻松地将 Dify 集成到自己的业务逻辑中。
技术架构

部署体验
# 下载
git clone https://github.com/langgenius/dify.git
cd docker
cp .env.example .env
# 使用 docker-compose.yml 启动
docker compose up -d
# 界面安装:http://localhost/install
2. Haystack
核心优势:模块化架构,集成 Elasticsearch、FAISS 等存储和 BERT 等模型,文档丰富且社区活跃,支持端到端问答系统。
适用场景:企业级搜索、复杂 NLP 任务(如摘要、多轮问答)。
推荐指数:★★★★★
GitHub 星数:19.9k
开源协议:Apache License 2.0
项目地址:https://github.com/deepset-ai/haystack
项目介绍
Haystack 是一个端到端 LLM 框架,允许您构建由 LLMs、Transformer 模型、向量搜索等提供支持的应用程序。无论您是想执行检索增强生成(RAG)、文档搜索、问答还是答案生成,Haystack 都可以编排最先进的嵌入模型并 LLMs 集成到管道中,以构建端到端 NLP 应用程序并解决您的用例。
功能特性
- 技术无关性:允许用户灵活决定使用哪个供应商或技术,并轻松替换任何组件。
- 明确性:清晰地展示不同组件之间如何'交流',以便更容易适配您的技术栈和使用场景。
- 灵活性:提供了一个集中的工具集:数据库访问、文件转换、清洗、拆分、训练、评估、推理等。
- 可扩展性:为社区和第三方提供统一且简单的方式构建自己的组件,并围绕 Haystack 培养一个开放的生态系统。
使用示例
- 利用可用的向量数据库构建检索增强生成 (RAG),并自定义您的 LLM 交互。
- 执行自然语言问题回答,以在文档中找到细致的答案。
- 进行语义搜索并根据意义检索文档。
- 构建可以做出复杂决策的应用程序,以回答复杂的查询。
部署体验
# 方式一:pip 安装
pip install haystack-ai
# 方式二:conda 安装
conda config --add channels conda-forge/label/haystack-ai_rc
conda install haystack-ai
# 方式三:代码安装
git clone https://github.com/deepset-ai/haystack.git
cd haystack
pip install --upgrade pip
pip install -e '.[dev]'
3. RagFlow
核心优势:深度文档解析能力,支持 PDF、表格、图片等多格式数据,引用溯源功能显著降低幻觉风险,新增 Agentic RAG 和音频处理功能。
适用场景:法律合同解析、医疗报告分析等需高精度引用的领域。
推荐指数:★★★★☆
GitHub 星数:46.1k+
开源协议:Apache License 2.0
项目地址:https://github.com/infiniflow/ragflow
项目介绍
RAGFlow 是一款基于深度文档理解构建的开源 RAG 引擎。RAGFlow 可以为各种规模的企业及个人提供一套精简的 RAG 工作流程,结合大语言模型(LLM)针对用户各类不同的复杂格式数据提供可靠的问答以及有理有据的引用。
功能特性
- 深度文档理解:能够解析复杂格式的非结构化数据(如 PDF、Word、Excel、图片、扫描件等),精准提取文字、表格、图片、标题等元素。
- 模板化分块与可控性:提供多种分块模板(如常规、问答、法律、表格等),用户可根据文档类型选择合适的分块方式。
- 可靠引用与幻觉抑制:答案生成时自动关联原始文档的引用来源,支持用户追溯答案依据,显著减少大模型的'幻觉'问题。
- 多模态与异构数据兼容:支持文本、图片、表格、音频等多种数据格式,兼容企业内外部异构数据源。
- 自动化 RAG 工作流:集成文档解析、嵌入、检索、生成全流程自动化,支持多路召回与重排序技术。
- 知识图谱与 Agent 增强:GraphRAG 支持,通过知识图谱优化全局语义检索;支持自定义工具链结合多模型协作实现复杂任务。
系统架构

部署体验
git clone https://github.com/infiniflow/ragflow.git
cd ragflow/docker
git checkout -f v0.17.2
# 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
4. FastGPT
核心优势:拖拽式可视化界面,OpenAI API 兼容,支持快速搭建轻量级问答系统。
适用场景:企业微信/飞书智能客服、学术文献问答。
推荐指数:★★★☆
GitHub 星数:23k+
开源协议:Apache License 2.0
项目地址:https://github.com/labring/FastGPT
项目介绍
FastGPT 是一个基于 LLM 大语言模型的知识库问答系统,提供开箱即用的数据处理、模型调用等能力。同时可以通过 Flow 可视化进行工作流编排,从而实现复杂的问答场景!
功能特点
- 数据处理和模型调用:整合与优化大量的非结构化数据,如文本文档、PDF 文件、电子邮件等。
- 知识库构建:用户可以将不同格式的文件导入系统,构建专属的知识库。支持动态更新和扩展库中的内容。
- 工作流编排:提供了强大的工作流编排功能,用户可以通过 Flow 可视化进行工作流编排,实现复杂的问答场景。
- API 集成:支持强大的 API 集成功能,可以轻松集成到其他平台,与现有系统快速集成。
- 自动化处理:能够自动化处理大量数据,显著提升信息检索和分析的效率。
部署体验
mkdir fastgpt
cd fastgpt
curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json
# pgvector 版本 (测试推荐,简单快捷)
curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/deploy/docker/docker-compose-pgvector.yml
# 启动容器
docker-compose up -d
# 目前可以通过 ip:3000 直接访问 (注意开放防火墙)。登录用户名为 root,密码为 docker-compose.yml 环境变量里设置的 DEFAULT_ROOT_PSW。
二、轻量化与自动化框架:快速迭代与动态数据
1. AutoRAG
核心优势:自动化优化 RAG 流程,通过评估数据测试模块组合,省去手动调参,适合开发者快速实验与迭代。
适用场景:动态数据场景(如新闻更新、实时分析)。
推荐指数:★★★★
GitHub 星数:3.7k+
开源协议:Apache License 2.0
项目地址:https://github.com/Marker-Inc-Korea/AutoRAG
项目简介
AutoRAG 是一款自动优化 RAG 管道的工具。RAG 管道结合了检索和生成模型,用于提高自然语言处理任务的性能。然而,找到适用于特定数据和用例的最佳 RAG 管道是一个复杂且耗时的过程。 AutoRAG 通过自动化评估各种 RAG 模块组合,帮助用户快速找到最优的 RAG 管道。
功能特性
- 数据创建:支持解析、切分和生成 QA 数据集。
- RAG 优化:自动评估和优化不同的 RAG 模块组合,支持多种 RAG 模块,如检索器、提示生成器和生成器。
- 评估指标:使用多种评估指标,如 F1 分数、召回率、MRR 和 ROUGE 等。
- 部署:提供多种方式部署优化后的 RAG 管道,包括 API 服务器和 Web 界面。
部署体验
# 方式一:pip 安装
pip install AutoRAG
# 使用本地模型,安装 gpu 版本
pip install "AutoRAG[gpu]"
# 使用 parsing 版本
pip install "AutoRAG[gpu,parse]"
# 方式二:代码安装
git clone https://github.com/Marker-Inc-Korea/AutoRAG.git
cd AutoRAG
docker compose up -d
# 访问地址:http://localhost:3000
2. LightRAG
核心优势:双层检索机制(细节 + 抽象)、增量更新算法,计算效率高,支持低资源环境下的动态数据整合。
特色功能:图增强索引、轻量化部署。
推荐指数:★★★★
GitHub 星数:13k+
开源协议:MIT license
项目地址:https://github.com/HKUDS/LightRAG
项目介绍
LightRAG 是由香港大学团队提出的开源 RAG 框架,通过引入知识图谱和增量更新算法,显著提升了检索效率与生成质量。LightRAG 通过图索引与双层检索的创新设计,解决了传统 RAG 在复杂语义理解与动态数据更新中的瓶颈。
功能特性
- 图增强文本索引:实体与关系提取,去重优化,键值对生成。
- 双层检索框架:低层检索针对具体实体或细节,高层检索处理抽象概念,混合模式兼顾细节与全局。
- 增量更新机制:新增文档时,仅需提取新实体与关系并合并到现有图谱,无需全量重建。
- 多模型兼容性:支持云端模型及本地模型(Hugging Face、Ollama)。
部署体验
# 方式一:代码安装
git clone https://github.com/HKUDS/LightRAG.git
cd LightRAG
cp .env.example .env
pip install -e .
# 方式二:PyPI 安装
pip install lightrag-hku
# 方式三:docker 安装
docker-compose up -d
# 访问地址:http://localhost:9621
3. nano-GraphRAG
核心优势:精简版 GraphRAG(代码仅 1100 行),支持异步操作和自定义组件,适合研究学习与轻量级知识图谱应用。
推荐指数:★★★☆
GitHub 星数:2.7k+
开源协议:MIT license
项目地址:https://github.com/gusye1234/nano-graphrag
项目简介
nano-GraphRAG 是一个轻量级、高可定制的 GraphRAG 框架,旨在简化传统 GraphRAG 的复杂性,同时保留其核心功能。设计为轻量级、异步和完全类型化,是希望将 GraphRAG 集成到项目中而不增加复杂性的开发者的理想选择。
功能特性
- 简洁性:代码量小,易于理解和维护。
- 易用性:提供简单的 API 接口,方便集成到现有项目中。
- 可定制性:支持多种分块策略、实体提取策略以及替换默认组件。
- 轻量级:设计为轻量级、异步和完全类型化,适合资源受限的环境。
部署体验
# 方式一:从源安装(推荐)
git clone https://github.com/gusye1234/nano-graphrag.git
cd nano-graphrag
pip install -e .
# 方式二:PyPi 安装
pip install nano-graphrag
三、企业级生产环境:高并发与稳定性
1. MaxKB
核心优势:开箱即用,支持零代码嵌入第三方系统,内置工作流引擎适配复杂业务逻辑。
适用场景:企业内部知识库问答(如政策查询、技术文档管理)。
推荐指数:★★★★
GitHub 星数:14.9k+
开源协议:GPL-3.0 license
项目地址:https://github.com/1Panel-dev/MaxKB
项目介绍
MaxKB = Max Knowledge Base,是一款基于大语言模型和 RAG 的开源知识库问答系统,广泛应用于智能客服、企业内部知识库、学术研究与教育等场景。
功能特点
- 开箱即用:支持直接上传文档 / 自动爬取在线文档,支持文本自动拆分、向量化和 RAG,有效减少大模型幻觉,智能问答交互体验好。
- 灵活编排:内置强大的工作流引擎和函数库,支持编排 AI 工作过程,满足复杂业务场景下的需求。
- 无缝嵌入:支持零编码快速嵌入到网站、办公系统(企业微信 / 钉钉 / 飞书)和第三方业务系统。
- 模型中立:支持对接各种大语言模型,包括本地私有大模型、国内公共大模型和国外公共大模型。
技术框架

实现原理

部署体验
# Linux 操作系统
docker run -d --name=maxkb --restart=always -p 8080:8080 -v ~/.maxkb:/var/lib/postgresql/data -v ~/.python-packages:/opt/maxkb/app/sandbox/python-packages registry.fit2cloud.com/maxkb/maxkb
# Windows 操作系统
docker run -d --name=maxkb --restart=always -p 8080:8080 -v C:/maxkb:/var/lib/postgresql/data -v C:/python-packages:/opt/maxkb/app/sandbox/python-packages registry.fit2cloud.com/maxkb/maxkb
# 待所有容器状态显示为 healthy 后,可通过浏览器访问 MaxKB:http://目标服务器 IP 地址:8080
# 默认登录信息 用户名:admin 默认密码:MaxKB@123..
2. Cognita
核心优势:专为生产环境设计,提供 MLOps 监控和可定制数据组件,稳定性与扩展性突出。
适用场景:企业级高并发应用部署。
推荐指数:★★★★
GitHub 星数:4k
开源协议:Apache-2.0 license
开源地址:https://github.com/truefoundry/cognita
项目介绍
Cognita 是一个开源的 RAG 框架,由 TrueFoundry 开发。它旨在帮助开发者构建模块化、可扩展的生产级应用程序,特别适合需要端到端 AI 应用开发和部署的场景。
功能特性
- 模块化设计:每个 RAG 组件都是独立的模块,易于维护和扩展。
- API 驱动:所有组件都通过 API 进行交互,方便与其他系统集成。
- 增量索引:默认支持增量索引,只对新增、更新的数据进行处理。
- 多模态支持:支持音频和视频解析,可处理多种类型的数据。
- 多模型兼容:支持 OpenAI、Llama3、DeepSeek 等主流 LLM,以及 Ollama 本地模型部署。
部署体验
# 代码下载
git clone https://github.com/truefoundry/cognita.git
cd cognita
cp models_config.sample.yaml models_config.yaml
docker-compose --env-file compose.env up
# 访问 qdrant 服务器:http://localhost:6333
# 访问后端:http://localhost:8000
# 访问前端:http://localhost:5001
3. LLMWare
核心优势:轻量级企业级 RAG,支持私有化部署和低代码开发。
不足:社区生态较弱,功能扩展性有限。
推荐指数:★★★
GitHub 星数:11.7k
开源协议:Apache-2.0 license
开源地址:https://github.com/llmware-ai/llmware
项目介绍
llmware 提供了一个统一的框架,用于构建 LLM 基于应用程序(例如 RAG、代理),使用小型专用模型,这些模型可以私密部署,安全地与企业知识源集成,并且经济高效地调整和适应任何业务流程。
功能特性
- RAG Pipeline:用于将知识源连接到生成式 AI 模型的整个生命周期的集成组件。
- 专用模型:50+ 小型专用模型,针对企业流程自动化中的关键任务进行了微调。
部署体验
# 方式一:代码安装
git clone https://github.com/llmware-ai/llmware.git
cd llmware
sh ./welcome_to_llmware.sh
# 方式二:pip 安装
pip3 install llmware
pip3 install 'llmware[full]'
四、隐私与本地化部署:敏感数据场景
1. Anything-LLM
核心优势:全本地化部署(Ollama + Qdrant),支持工作区隔离管理,保障数据隐私。
适用场景:金融、医疗等敏感领域的私有化知识库。
推荐指数:★★★☆
开源协议:MIT
GitHub 星数:41.6k+
开源地址:https://github.com/Mintplex-Labs/anything-llm
项目介绍
AnythingLLM 是一个全栈应用程序,您可以使用现成的商业大语言模型或流行的开源大语言模型,再结合向量数据库解决方案构建一个私有 ChatGPT,不再受制于人:您可以本地运行,也可以远程托管,并能够与您提供的任何文档智能聊天。
功能特性
- 多模态文档支持与智能解析:支持 PDF、TXT、DOCX、网页链接等多种格式的文档,能够智能解析复杂结构。
- 灵活的工作区(Workspace)管理:文档按'工作区'划分,每个工作区独立管理文档和对话上下文,避免不同主题间的干扰。
- 双模式交互:对话模式保留历史上下文,查询模式专注于文档内容的直接问答。
- 引用溯源与可信度增强:答案生成时自动关联原始文档片段,用户可查看引用来源及匹配度评分。
- 模型与数据库兼容性:兼容 OpenAI、Azure、Anthropic、Llama3 等 20+ 主流模型,支持本地部署或云端 API 调用。
系统架构(RAG)

部署体验
# 下载镜像
docker pull mintplexlabs/anythingllm
# 启动
export STORAGE_LOCATION=$HOME/anythingllm && \
mkdir -p $STORAGE_LOCATION && \
touch "$STORAGE_LOCATION/.env" && \
docker run -d -p 3001:3001 \
--cap-add SYS_ADMIN \
-v ${STORAGE_LOCATION}:/app/server/storage \
-v ${STORAGE_LOCATION}/.env:/app/server/.env \
-e STORAGE_DIR="/app/server/storage" \
mintplexlabs/anythingllm
# 访问地址:http://localhost:3001
2. n8n AI 工具包
核心优势:完全本地化部署,集成 Ollama 和 Qdrant,适配低资源环境。
适用场景:小团队或个人开发者。
推荐指数:★★★☆
开源协议:Apache-2.0 license
GitHub 星数:7.5k+
开源地址:https://github.com/n8n-io/self-hosted-ai-starter-kit
项目介绍
n8n 推出了 Self-Hosted AI Starter Kit 自托管 AI 入门工具包,帮助用户在本地或私有云环境中快速部署 AI 项目。此工具包利用 Docker Compose 模板,包含多种本地 AI 工具(如 Ollama、Qdrant 和 PostgresQL),并提供 AI 工作流模板和网络配置。
功能特性
- 本地易部署:基于 Docker Compose 模板的解决方案,包括 n8n 和一系列精选的本地 AI 工具。
- AI 应用构建块:用户可以拖放每个 AI 应用组件,同时保留完全的自定义控制权。
- 自动化、调试和维护:UI 强大而不限制用户,允许在需要时回落到代码,导入 cURL 请求或触发 webhooks 和队列等。
部署体验
# 克隆仓库
git clone https://github.com/n8n-io/self-hosted-ai-starter-kit.git
cd self-hosted-ai-starter-kit
# 启动服务(Nvidia GPU)
docker compose --profile gpu-nvidia up
# AMD GPU
docker compose --profile gpu-amd up
# 访问地址:http://localhost:5678/
五、多模态与知识图谱增强:复杂语义分析
1. R2R
核心优势:支持文本、图片、PDF 等多模态数据,自动构建知识图谱,集成语义 + 关键词混合搜索。
适用场景:综合性多模态应用(如新闻分析、跨语言检索)。
推荐指数:★★★★
开源协议:MIT license
GitHub 星数:5.8k+
开源地址:https://github.com/SciPhi-AI/R2R
项目介绍
R2R(Reason to Retrieve)是一种先进的 AI 检索系统,支持具有生产就绪功能的检索增强生成(RAG)。R2R 围绕 RESTful API 构建,提供多模式内容摄取、混合搜索、知识图谱和全面的文档管理。
功能特性
- 前沿搜索:高级 RAG 技术,如混合搜索、知识图谱、高级 RAG 和代理检索。
- 灵活性:运行时配置使调整和调整 R2R 变得容易。
- 扩展:处理不断增加的工作负载和大型数据集,专为性能而设计。
- 认证和收集:生产必备品,如用户认证和文档集合。
部署体验
# 方式一:Quick install and run in light mode
pip install r2r
export OPENAI_API_KEY=sk-...
python -m r2r.serve
# 方式二:run in full mode with Docker
git clone https://github.com/SciPhi-AI/R2R.git
cd R2R
export R2R_CONFIG_NAME=full
OPENAI_API_KEY=sk-...
docker compose -f compose.full.yaml --profile postgres up -d
# 方式三:代码安装
git clone https://github.com/SciPhi-AI/R2R.git
cd R2R/py
pip install -e .[core]
python -m r2r.serve
2. GraphRAG(微软)
核心优势:结合知识图谱与 RAG,通过社区检测提升复杂查询准确性,支持全局语义分析。
适用场景:新闻摘要、金融投顾等需多跳推理的场景。
推荐指数:★★★★
开源协议:MIT license
GitHub 星数:23.8k+
开源地址:https://github.com/microsoft/graphrag
项目介绍
GraphRAG(Graph-based Retrieval-Augmented Generation)是由微软提出的基于知识图谱的检索增强生成框架,通过结合图机器学习与 LLM 技术,解决传统 RAG 在复杂推理、全局语义理解上的短板。
功能特性
GraphRAG 是一种结构化的分层检索增强生成(RAG)方法,而不是使用纯文本片段的朴素语义搜索方法。GraphRAG 流程包括从原始文本中提取知识图谱、构建社区层次结构、为这些社区生成摘要,然后在执行基于 RAG 的任务时利用这些结构。
部署体验
pip install graphrag
# 准备示例数据集
mkdir -p ./ragtest/input
curl https://www.gutenberg.org/cache/epub/24022/pg24022.txt -o ./ragtest/input/book.txt
# 初始化工作区(注意.env、settings.yaml 配置)
graphrag init --root ./ragtest
# 运行索引
graphrag index --root ./ragtest
# 执行查询
graphrag query --root ./ragtest --method global --query "What are the top themes in this story?"
3. KAG(蚂蚁)
核心优势:逻辑推理优化,支持多跳问答,解决传统 RAG 的歧义性问题。
适用场景:金融、医疗等专业领域知识推理。
推荐指数:★★★★
开源协议:Apache-2.0 license
GitHub 星数:6.1k+
开源地址:https://github.com/OpenSPG/KAG
项目介绍
KAG 是基于 OpenSPG 引擎和大型语言模型的逻辑推理问答框架,用于构建垂直领域知识库的逻辑推理问答解决方案。KAG 可以有效克服传统 RAG 向量相似度计算的歧义性和 OpenIE 引入的 GraphRAG 的噪声问题。
功能特性
- 知识与 Chunk 互索引结构:以整合更丰富的上下文文本信息。
- 概念语义推理:利用概念语义推理进行知识对齐,缓解 OpenIE 引入的噪音问题。
- Schema-Constraint 知识构建:支持领域专家知识的表示与构建。
- 逻辑符号引导的混合推理与检索:实现逻辑推理和多跳推理问答。
技术架构

部署体验
# 设置 HOME 环境变量(仅 Windows 用户需要执行)
# set HOME=%USERPROFILE%
# 下载 docker-compose.yml 并用 Docker Compose 启动服务
curl -sSL https://raw.githubusercontent.com/OpenSPG/openspg/refs/heads/master/dev/release/docker-compose.yml -o docker-compose.yml
docker compose -f docker-compose.yml up -d
# 访问地址:http://127.0.0.1:8887 。Default Username: openspg Default password: openspg@kag
总结
开源 RAG 框架的百花齐放为不同场景提供了多样化选择。企业、团队或个人需结合数据规模、隐私需求、开发能力综合评估,优先选择社区活跃、功能匹配的方案。对于复杂场景,可组合使用多框架(如 RagFlow + GraphRAG)以发挥协同优势。未来,随着 Agent 与多模态技术的融合,RAG 将向更智能、更场景化的方向发展。

