乐于分享
好东西不私藏

传统RAG答不准跨文档问题?试试Graph RAG,效果颠覆想象

传统RAG答不准跨文档问题?试试Graph RAG,效果颠覆想象

5月29日我们介绍了 Vanna AI——让AI直连数据库,10分钟跑起来,还讲了代码级权限管控。

数据库查数据搞定了,但公司那么多文档——产品手册、SOP、合同、客服话术——能不能也让AI读懂,还能控制谁能问什么?

今天就介绍一个完整的落地方案:FastGPT + Graph RAG + 集合权限管控

三篇文章的关系

维度

第一篇:DB-GPT

第二篇:Vanna   AI

今天第三篇:FastGPT

解决什么问题

AI直连数据库查数据

轻量级AI直连数据库

AI读懂企业文档并问答

部署方式

Docker + 服务器

pip install,本地跑

Docker Compose一键部署

核心技术

Text2SQL + RLS权限

Text2SQL + 代码级权限

Graph RAG + 集合权限

适合场景

企业级正式部署

快速验证、小团队

知识库问答、文档管理

权限管控

数据库层RLS

Python代码级过滤

集合权限(内置)

一句话总结:第一篇:AI查数据库(企业级);第二篇:AI查数据库(轻量级);今天第三篇:AI读懂文档(知识库+权限)

为什么说今天的内容和前两篇不一样?

前两篇的核心是:把数据库里的结构化数据变成自然语言回答。

但企业里80%的知识是非结构化的——产品手册、SOP、合同、客服话术、会议纪要……这些存在文档里,数据库查不到。

传统RAG的痛点(前两篇没讲,但今天要解决):

问:“A产品的供应商是谁?之前出过什么质量事故?怎么处理的?

传统RAG:只能找到“A产品的供应商是XX公司,但找不到质量事故处理方案“——因为不知道文档之间的关联关系。

Graph RAG能解决这个——它不只做语义搜索,还构建知识图谱,让AI理解产品供应商质量事故处理方案之间的关系。

今天的内容结构

• FastGPT快速部署(Docker Compose一键,10分钟)

• 构建知识图谱(让AI理解文档之间的关联)

• 集合权限管控(谁能问哪些文档——延续前两篇的权限主题)

• Graph RAG vs 传统RAG效果对比

• 和前两篇方案的组合建议

第一部分:FastGPT快速部署(10分钟)

为什么选FastGPT,而不是自己搭LangChain?

对比维度

自己搭LangChain

FastGPT

部署时间

1~3天

10分钟

界面

需要自己写

开箱即用

权限管控

需要自己实现

内置集合权限

Graph RAG

需要自己实现

内置(V4.14+)

维护成本

低(Docker一键更新)

结论:今天的目标是落地,不是研究RAG原理FastGPT2026年最成熟的开源知识库平台。

前置条件

• 一台电脑/服务器(最低配置:24GB,推荐48GB

• 已安装Docker Desktop(Windows/Mac)或Docker Compose(Linux)

• 约10分钟时间

💡 可以用个人电脑测试,确认效果后再迁移到服务器。

Step 1:获取配置文件(2分钟)

FastGPT提供一键部署脚本,自动生成docker-compose.yml和config.json

在终端执行:

bash <(curl -fsSL   https://doc.fastgpt.cn/deploy/install.sh)

脚本会问你几个问题:1. 部署环境(本地测试/生产环境);2. 向量数据库(选PgVector,轻量);3. IP地址(本地填localhost)。

Step 2:修改环境变量(可选,3分钟)

打开docker-compose.yml,找到fastgpt服务的环境变量:

fastgpt:

environment:

– DEFAULT_ROOT_PSW=你的密码# 默认是1234,建议改掉

–   OPENAI_BASE_URL=https://api.deepseek.com/v1

– CHAT_API_KEY=你的DeepSeek API Key

⚠️ 安全提醒:生产环境一定要改默认密码!或者用强密码。

Step 3:启动FastGPT(5分钟)

在docker-compose.yml所在目录执行:

docker compose up -d

等待约3~5分钟,看到以下容器都显示Up说明启动成功:

docker ps

# 应该看到这些容器:

# fastgpt(主服务,端口3000)

# mongo(数据库)

# pg(向量数据库)

# ai-proxy(模型聚合服务)

Step 4:访问并初始化(现在就能用)

打开浏览器,访问: http://localhost:3000

默认登录信息:用户名 root,密码 1234(或你改的密码)。

首次登录会引导你配置:1. 语言模型(填DeepSeek的API Key);2. 索引模型(用同一个API Key即可)。

第二部分:构建知识图谱(Graph RAG核心)

传统RAG vs Graph RAG

对比

传统RAG

Graph   RAG

检索方式

语义相似度

语义相似度 + 知识图谱关联

跨文档问答

效果差

效果好

多跳推理

不支持

支持(A→B→C)

举例说明:

问题:“A产品的供应商是谁?之前出过什么质量事故?怎么处理的?

传统RAG:只能找到“A产品的供应商是XX公司“——另外两份文档找不到。

Graph RAG:构建知识图谱后,AI知道:产品A → 供应商XX公司 → 质量事故记录 → 处理方案。三份文档关联起来,一次性回答完整。

Step 1:准备测试文档(现在就能做)

FastGPT主界面,点击知识库” → “新建,上传这些文档(如果没有,可以用虚拟数据):

• 产品手册.pdf(包含:产品A/B/C的规格、供应商、价格)

• 质量事故报告.pdf(包含:产品A2025Q3的供应商XX来料不合格记录)

• 处理方案.pdf(包含:针对供应商XX的不合格品处理流程和改进措施)

💡 测试目标:问产品A的供应商是谁?出过什么质量问题?怎么处理的?“——AI能不能跨3份文档完整回答。

Step 2:开启Graph RAG(核心步骤)

FastGPT V4.14+ 内置Graph RAG,但默认关闭,需要手动开启。

修改config.json,添加Graph RAG配置:

{

“systemEnv”: {

“enableGraphRAG”: true,

“graphRAGModel”:   “deepseek-chat”,

“graphRAGTopK”: 5

}

}

修改后重启FastGPT:

docker compose down   && docker compose up -d

进入知识库设置页面,打开“Graph RAG”开关,保存设置。

Step 3:让FastGPT自动构建知识图谱(无需手动操作)

关键点:FastGPT会自动从文档中提取实体和关系,不需要你手动构建图谱

上传文档后,FastGPT会:1. 提取实体(产品A、供应商XX、质量事故、处理方案);2. 提取关系(产品A → 供应商XX,供应商XX → 质量事故);3. 存储到图数据库。

查看图谱构建进度:进入知识库 → “图谱管理V4.14+新增功能),可以看到已识别的实体和关系。

Step 4:测试Graph RAG效果(核心验证)

FastGPT应用模块,创建一个简易应用,关联刚才的知识库。

测试问题:

问题1(单跳):产品A的供应商是谁?

→ 传统RAGGraph RAG都能回答

问题2(多跳):产品A的供应商出过什么质量事故?

→ 传统RAG可能找不到,Graph RAG可以

问题3(复杂多跳):产品A的供应商的质量事故是怎么处理的?

→ 传统RAG基本回答不了,Graph RAG可以

问题

传统RAG

Graph   RAG

问题1(单跳)

✅ 准确

✅ 准确

问题2(多跳)

❌ 找不到

✅ 准确

问题3(复杂多跳)

❌ 回答不完整

✅ 完整回答

第三部分:集合权限管控(延续前两篇的核心主题)

为什么权限管控重要?

场景1:客服只能问产品手册,不能问合同条款

• 客服问:产品A的保修条款是什么?“——可以

• 客服问:公司和供应商XX的采购合同金额是多少?“——不应该能查到

场景2HR只能问SOP,不能问工资条

• HR问:入职流程是什么?“——可以

• HR问:张三的工资是多少?“——不应该能查到

场景3:销售只能问自己客户的历史记录

• 销售问:客户A的购买历史?“——可以(如果是他的客户)

• 销售问:客户B的购买历史?“——如果不归他管,不应该能查到

FastGPT的集合权限(内置,开箱即用)

前两篇讲了:第一篇:数据库层RLS(需要配置PostgreSQL/SQL Server);第二篇:Python代码级权限过滤(需要写代码)。

今天第三篇:FastGPT内置集合权限,界面配置,不需要写代码。

实操:配置集合权限(5分钟)

Step 1:创建集合(对应不同的权限组)

进入权限管理” → “集合管理,创建以下几个集合:

集合名称

包含的文档

允许访问的角色

产品知识库

产品手册、规格书

所有人(客服/销售/HR

质量记录库

质量事故报告、检验报告

质量部、管理层

合同管理库

采购合同、供应商协议

采购部、管理层

人事制度库

SOP、入职流程、考勤制度

HR、管理层

薪酬管理库

工资条、奖金方案

仅限HR总监和管理层

Step 2:给用户/部门分配集合权限

进入权限管理” → “用户管理,编辑用户/部门,分配可访问的集合。

示例配置:

用户/部门

可访问的集合

客服团队

产品知识库

质量部

产品知识库、质量记录库

采购部

产品知识库、合同管理库

HR团队

产品知识库、人事制度库、薪酬管理库(仅HR总监)

管理层

所有集合

Step 3:测试权限是否生效

测试方法:1. 客服账号登录;2.问:产品A的供应商是谁?” → 应该能回答(产品知识库有权限);3. 问:公司和供应商XX的合同金额是多少?” → 应该拒绝回答(合同管理库无权限)。

如果权限配置正确,FastGPT会返回:抱歉,您没有权限查询相关内容。

第四部分:和前两篇方案的组合建议

三篇方案的定位:

方案

解决的核心问题

适合的场景

第一篇:DB-GPT

AI直连数据库查数据

老板/分析师查经营数据

第二篇:Vanna AI

轻量级AI直连数据库

小团队快速验证

今天第三篇:FastGPT

AI读懂文档并问答

客服/HR/全员知识库

成本对比(三篇方案对比)

项目

第一篇:DB-GPT

第二篇:Vanna   AI

今天第三篇:FastGPT

服务器

30元/月

0元(本地)

0元/月

大模型API

10~50元/月

10~50元/月

10~50元/月

总计

40~80元/月

10~50元/月

10~50元/月

你能立刻行动的第一步

1. 明天:用Docker Compose部署FastGPT(10分钟),确认能跑起来

2. 明天:上传3份测试文档,开启Graph RAG,测试多跳问答效果

3. 本周:配置集合权限,创建2~3个测试账号,验证权限隔离

4. 本周:如果效果OK,导入公司真实文档,邀请客服/HR试用