RAG 框架全景解析:7 个 GraphRAG 及 17 个传统框架汇总
引言
检索增强生成(Retrieval-Augmented Generation, RAG)技术已成为连接大语言模型与私有知识的关键桥梁。随着企业级应用对信息准确性、实时性和可解释性要求的提升,RAG 架构不断演进。从传统的向量检索到引入知识图谱的图检索,技术路线日益丰富。
本文基于当前开源社区的最新进展,梳理了现有的主流 RAG 框架体系。我们将现有框架分为两大类:17 个传统 RAG 框架和 7 个 GraphRAG 框架。通过对这些框架的核心机制、适用场景及技术特点进行归纳,旨在为开发者提供选型参考和技术实现思路。
一、十七个传统 RAG 框架
传统 RAG 框架通常遵循'文档处理 - 向量化 - 存储 - 检索 - 生成'的标准流水线。其核心在于通过不同的策略适应多样化的文档结构和检索需求,如文档切分粒度、混合检索策略、重排序(Rerank)等。
1. AnythingLLM
具备完整的 RAG 和 AI 代理能力。支持多种本地和云端模型,内置向量数据库,适合快速搭建个人知识库或小型团队应用。地址:https://github.com/Mintplex-Labs/anything-llm
2. MaxKB
基于大型语言模型的知识库问答系统。设计为即插即用,支持快速嵌入到第三方业务系统,强调部署的便捷性和集成能力。地址:https://github.com/1Panel-dev/MaxKB
3. RAGFlow
一个基于深度文档理解的开源 RAG 引擎。其特色在于对复杂文档结构(如表格、公式、多栏排版)的深度解析能力,能显著提升非结构化数据的检索精度。地址:https://github.com/infiniflow/ragflow
4. Dify
一个开源的大型语言模型应用开发平台。Dify 直观的界面结合了 AI 工作流、RAG 流程、代理能力、模型管理、可观测性功能等,让您能快速从原型阶段过渡到生产阶段。地址:https://github.com/langgenius/dify
5. FastGPT
基于 LLM 构建的知识型平台,提供即开即用的数据加工和模型调用能力,允许通过流程可视化进行工作流编排。适合需要自定义业务流程的场景。地址:https://github.com/labring/FastGPT
6. Langchain-Chatchat
基于 Langchain 和 ChatGLM 等不同大模型的本地知识库问答。注重隐私保护和本地化部署,支持多种开源模型接入。地址:https://github.com/chatchat-space/Langchain-Chatchat
7. QAnything
基于 Anything 的问题和答案。网易有道出品,强调对中文语境的理解以及多模态数据的处理能力,支持 OCR 识别。地址:https://github.com/netease-youdao/QAnything
8. Quivr
使用 Langchain、GPT 3.5/4 turbo、Private、Anthropic、VertexAI、Ollama、LLMs、Groq 等与文档(PDF、CSV 等)和应用程序交互,本地和私有的替代 OpenAI GPTs 和 ChatGPT。地址:https://github.com/QuivrHQ/quivr
9. RAG-GPT
利用 LLM 和 RAG 技术,从用户自定义的知识库中学习,为广泛的查询提供上下文相关的答案,确保快速准确的信息检索。地址:https://github.com/open-kf/rag-gpt
10. Verba
由 Weaviate 驱动的检索增强生成(RAG)聊天机器人。深度集成向量数据库功能,优化了语义搜索体验。地址:https://github.com/weaviate/Verba
11. FlashRAG
一个用于高效 RAG 研究的 Python 工具包。专注于评估和加速 RAG 流程,适合研究人员进行算法对比和优化实验。地址:https://github.com/RUC-NLPIR/FlashRAG
12. LightRAG
检索器 - 代理 - 生成器式的 RAG 框架。在保持轻量级的同时引入了部分图结构思想,平衡了性能与效果。地址:https://github.com/SylphAI-Inc/LightRAG
13. kotaemon
一个开源的干净且可定制的 RAG UI。侧重于前端交互体验,提供简洁的管理界面。地址:https://github.com/Cinnamon/kotaemon
14. RAGapp
在企业中使用 Agentic RAG 的最简单方式。简化了 Agent 模式的配置,降低企业落地门槛。地址:https://github.com/ragapp/ragapp
15. TurboRAG
通过预计算的 KV 缓存加速检索增强生成,适用于分块文本。重点优化推理速度,减少延迟。地址:https://github.com/MooreThreads/TurboRAG
16. TEN
实时多模态 AI 代理框架。支持文本、图像等多种模态的输入输出,适应更复杂的交互场景。地址:https://github.com/TEN-framework/ten_framework
17. AutoRAG
RAG AutoML 工具。自动化调整 RAG 流程中的超参数和组件选择,降低人工调优成本。地址:https://github.com/Marker-Inc-Korea/AutoRAG

二、七个 GraphRAG 框架
GraphRAG 框架是微软 Research 推动的技术方向,后续出现了很多轻量化的改进版本。其核心思想是在原先传统 RAG 的基础上,增加实体、社区、chunk 之间的关联,或者原有 KG 的知识,从而提升召回和准确性,特别是针对需要推理和全局理解的任务。
1. LightRAG
简单快速的 Graphrag 检索增强生成。实现了高效的图构建与检索逻辑,适合资源受限环境。地址:https://github.com/HKUDS/LightRAG
2. GraphRAG-Ollama-UI
使用 Ollama 的 GraphRAG,带有 Gradio UI 和额外功能。提供了友好的交互界面,便于本地测试和演示。地址:https://github.com/severian42/GraphRAG-Ollama-UI
3. microsoft-GraphRAG
一个模块化的基于图的检索增强生成(RAG)系统。微软官方开源实现,定义了标准的图构建流程。地址:https://github.com/microsoft/graphrag
4. nano-GraphRAG
一个简单、易于修改的 GraphRAG 实现。代码精简,适合作为学习图检索原理的入门项目。地址:https://github.com/gusye1234/nano-graphrag
5. KAG
基于 OpenSPG 引擎的知识增强生成框架,用于构建知识增强的严格决策制定和信息检索知识服务。强调结构化知识的注入。地址:https://github.com/OpenSPG/KAG
6. Fast-GraphRAG
GraphRAG 的轻量化版本。优化了图遍历效率,提升了大规模数据下的响应速度。地址:https://github.com/circlemind-ai/fast-graphrag
7. Tiny-GraphRAG
一个小巧的 GraphRAG 实现。专注于最小化依赖和资源消耗,适合边缘计算场景。地址:https://github.com/limafang/tiny-graphrag

三、RAG 框架选型建议
在选择 RAG 框架时,需综合考虑以下因素:
- 数据规模与复杂度:对于海量非结构化数据,RAGFlow 的深度文档理解能力更具优势;对于结构化强、关系复杂的数据,GraphRAG 类框架更能发挥价值。
- 部署环境:若需本地私有化部署,Langchain-Chatchat 和 MaxKB 提供了较好的开箱即用方案;若基于云原生架构,Dify 和 FastGPT 的工作流编排更为灵活。
- 性能要求:对延迟敏感的场景,TurboRAG 的 KV 缓存优化或 LightRAG 的轻量化设计值得考虑。
- 开发成本:AutoRAG 适合希望自动化调优的团队;而 nano-GraphRAG 适合希望深入理解底层原理并二次开发的团队。
四、技术挑战与未来趋势
尽管 RAG 框架众多,但在实际落地中仍面临挑战:
- 检索精度:如何平衡关键词匹配与语义相似度,避免误检。
- 幻觉抑制:即使有检索增强,模型仍可能产生幻觉,需结合重排序(Rerank)和引用验证。
- 更新维护:知识库的动态更新与索引同步机制的实时性。
未来趋势将集中在多模态融合、Agent 自主规划能力的增强以及图检索与传统向量检索的混合架构上。通过研读上述开源项目的实现代码,开发者可以深入了解内部机制,从而构建更适合自身业务的高质量 RAG 系统。
总结
本文主要对当前的 RAG 框架进行了介绍,尤其是对 GraphRAG 框架的整理。常总结,常会有很多收获。建议开发者根据具体业务场景,结合开源社区的活跃度与维护情况,选择合适的框架进行试点与迭代。
