Appearance
KG、RAG 与 Agent
KG 与向量检索
向量检索擅长找语义相似文本,知识图谱擅长表达实体关系和规则。企业知识问答中,两者经常组合:向量库找相关文档片段,知识图谱找实体路径、依赖关系和结构化约束。
| 能力 | 向量检索 | 知识图谱 |
|---|---|---|
| 擅长 | 相似文本、非结构化文档 | 实体关系、路径、规则 |
| 输出 | 文本片段 | 子图、三元组、关系路径 |
| 风险 | 语义相似但事实不对 | 图谱构建成本高 |
GraphRAG
GraphRAG 将文本检索和图结构结合起来。它可以先抽取实体和关系,再围绕问题检索相关子图和文档证据。适合关系密集型问题,例如“某设备故障和哪些工艺参数相关”,“某法规条款适用于哪些业务流程”。
解决的问题
普通 RAG 经常遇到两个问题:检索到的片段互相矛盾,或者模型无法理解实体之间的业务关系。KG-RAG 通过实体消歧、关系路径和规则约束补强检索结果,让回答更容易解释和复核。
应用场景
- 设备故障原因分析:从设备、工况、传感器、维修记录中找关系链。
- 法规政策问答:从条款、主体、义务、例外中构造解释路径。
- 材料实验知识库:关联材料、工艺、缺陷、实验和结论。
- 金融风控:分析账户、交易、法人、地址和风险传播路径。
KG 与 Agent
Agent 可以把知识图谱当作计划约束、权限检查和证据来源。比如实验分析 Agent 在运行 DIC 前,先查试样、材料、加载制度、历史实验和标准规范的关系,再决定分析参数和报告模板。
python
# KG + RAG 的伪代码:文本证据和图关系一起进入上下文
docs = vector_store.search("材料A裂纹扩展异常原因")
subgraph = graph.query("材料A", relation_depth=2)
context = {
"documents": docs,
"relations": subgraph,
"question": "材料A裂纹扩展是否异常?"
}
answer = llm.generate(context)Python 库
networkx 适合原型图分析,rdflib 适合 RDF 三元组,neo4j/py2neo 适合连接图数据库,llama-index 和 langchain 可用于 RAG 数据层。
