在企业知识图谱的构建中,图数据库只是拼图的一角。本文深度拆解真实项目架构,揭秘 MongoDB、Milvus、Elasticsearch、NebulaGraph 如何各司其职,形成「知识库+RAG+别名图谱」的混合系统。你将看到业务规则与语义检索的切割艺术,以及图谱落地的六个灵魂拷问。

做企业知识图谱,最容易出现一个误会:只要用了NebulaGraph/Neo4j,就以为系统已经是“知识图谱”了。
但真正拆开看,我参与的“知识图谱”更像一个阶段性架构。
它不是把所有知识都直接存进图数据库,而是让不同数据库各自承担一段能力。
一句话说:MongoDB 管原文和治理过程,Milvus 管语义召回,Elasticsearch 管关键词检索,NebulaGraph 管产销品标准实体和别名关系,Redis 管缓存。
所以当前系统最准确的定位,不是“完整业务规则知识图谱”,而是“知识库/RAG + 产销品别名图谱”。
如果只问“知识存在了哪里”,答案会很乱。
因为 MongoDB、Milvus、Elasticsearch、NebulaGraph 都和知识有关,但它们解决的问题完全不同。
当前这套架构的本质是:图数据库负责“认准对象”,RAG 负责“找原文内容”,大模型负责“组织答案”。

完整业务图谱里,理论上可以有很多点和边。
产品关联活动,活动适用于客群,活动生效于地域,活动有办理渠道,活动受退订规则和互斥规则约束,FAQ 依据某条规则,新政策替代旧政策。
但从当前项目情况看,NebulaGraph 主要承担的是另一件更基础的事:产销品和别名归一。
这件事看起来不大,但对问答命中率很关键。
用户很少按标准产品名提问。图谱先把“摄像头”归一成“天翼云眼”,再去召回相关文档,命中率会明显更稳。
这也是最容易误解的地方。
系统能回答“怎么办理”“有什么限制”“能不能退订”,不代表这些规则已经都以点和边的形式存在 NebulaGraph 里。
更可能的链路是:规则还在 MongoDB 的文档切片或抽取字段里,通过 Milvus 和 Elasticsearch 被召回,再由大模型总结成答案。
所以,NebulaGraph 现在主要不是存“办理条件、限制规则”,而是存“标准产销品和别名关系”。
这样做有现实好处:上线快、工程复杂度低、保留原文上下文,也能降低错误关系直接入图污染全局的风险。
但它也有边界:规则不能稳定计算,冲突发现能力有限,版本治理主要依赖字段控制,图谱展示也会比较薄。
业务标签很重要,但它不是图谱关系。
比如“营销类 → 产销品 → 宽带 → 活动方案”,这是一棵分类树,不是真正的业务知识图谱。
标签是给知识定位;实体是知识里的对象;关系是对象之间的业务连接。
标签可以帮助系统选择抽取模板、辅助实体分类,也可以作为过滤条件。
但如果直接把标签层级当成图谱主关系,最后建出来的不是业务图谱,而是一棵更复杂的目录树。
不是所有文档内容都需要入 NebulaGraph。
优先级应该很清楚:高频、高风险、可结构化、可复用。

不要只问“你们用了 NebulaGraph 吗”。这个问题太浅。
真正要问的是:
如果这些问题都能答清楚,这个系统才算真正进入图谱落地阶段。否则,它可能只是一个 RAG 系统旁边接了一个图数据库。
当前项目不是没有知识图谱,而是图谱层目前比较聚焦。
NebulaGraph 负责产销品实体和别名归一,RAG 负责从文档中召回办理条件、限制规则、FAQ、客服口径,MongoDB 负责保存原文、字段、标签、证据和审核状态。
这个阶段是合理的,但也要看清它的边界。
本文由 @是AD 原创发布于人人都是产品经理。未经作者许可,禁止转载
题图来自 unsplash,基于CC0协议
更新时间:2026-07-07
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight All Rights Reserved.
Powered By 61893.com 闽ICP备11008920号
闽公网安备35020302034903号