🦞 Agent Knowledge Graph —— 给 Agent 装上"知识大脑"

"世界上有一种 Agent,它读过你的代码,翻过你的文档,看过你的设计图。但它不能把这些连起来——直到有天,Knowledge Graph 来了,它突然明白了:原来这段代码是那个文档里提到的功能。"

什么是 Agent Knowledge Graph?

Agent Knowledge Graph(Agent 知识图谱) 是一种将非结构化内容(代码、文档、设计稿、SQL 模式、视频等)转化为结构化语义网络的技术。它让 Agent 能够:

最火的实现是 Graphify(safishamsi/graphify)—— 一个专为 AI Coding Agent(Claude Code、Codex、Cursor、OpenClaw 等)设计的技能,支持将任意文件夹转化为可查询的知识图谱。

为什么需要 Knowledge Graph?

传统的 RAG(检索增强生成)系统是这样工作的:

用户问:"这个 API 的错误码 403 是什么意思?"

传统 RAG:
1. 把问题向量化
2. 在向量库里找最相似的文本块
3. 把文本块塞给 LLM 回答

问题:如果答案需要"跳"几次才能找到——比如先看 API 文档,再看认证模块代码,最后看配置——
传统 RAG 就跪了,因为它只看"相似度",不看"关系"。

Knowledge Graph 的优势

维度传统 RAGKnowledge Graph
查询方式向量相似度图遍历 + 语义关系
多跳推理❌ 不支持✅ 支持(A→B→C)
关系理解❌ 弱✅ 强(显式关系)
跨领域查询❌ 困难✅ 容易(统一图结构)
可解释性⚠️ 黑盒✅ 白盒(路径可追溯)

OpenClaw 实战:使用 Graphify Skill

安装 Graphify Skill

# 通过 ClawHub 安装
openclaw skills install graphify

# 或通过 GitHub
openclaw skills install github safishamsi/graphify

构建知识图谱

# 将项目文件夹转化为知识图谱
# Graphify 支持:代码、SQL schemas、Shell 脚本、文档、论文、图片、视频

# 方案 1:通过 Skill 调用
openclaw agent run --task "
使用 graphify 技能,将以下文件夹构建知识图谱:
- 代码目录:/home/user/myproject/src
- 文档目录:/home/user/myproject/docs
- 数据库模式:/home/user/myproject/schema.sql
保存图谱到:/home/user/myproject/knowledge-graph.json
"

# 方案 2:直接使用 Graphify CLI(如果已安装)
npx graphify build \
  --input /home/user/myproject \
  --output /home/user/myproject/kg.json \
  --include "**/*.py,**/*.md,**/*.sql" \
  --exclude "**/node_modules/**,**/__pycache__/**"

查询知识图谱

# Agent 对话中查询
你:"我们项目的用户认证模块依赖哪些组件?"

Agent(通过 Graphify 查询):
> 正在查询知识图谱...
> 
> 查询结果(路径):
> 
> UserAuth (模块)
>   ├── depends_on → JWTHandler (类)
>   │     └── uses → jsonwebtoken (库)
>   ├── depends_on → PasswordHasher (类)
>   │     └── uses → bcrypt (库)
>   ├── depends_on → SessionManager (类)
>   │     └── uses → Redis (存储)
>   └── configured_by → auth.config.js (配置)
>         └── references → DATABASE_URL (环境变量)

你:"那如果 Redis 挂了,会影响哪些功能?"

Agent:
> 从图谱分析,Redis 故障会影响:
> 1. SessionManager —— 用户会话无法保持(所有用户需重新登录)
> 2. CacheManager —— 缓存失效,性能下降约 60%
> 3. RateLimiter —— 限流器失效,可能遭受暴力破解

Knowledge Graph 的核心原理

Graphify 等工具通过以下步骤构建知识图谱:

  1. 内容解析:识别文件类型(代码/文档/SQL/图片),提取结构化信息
  2. 实体识别:从内容中提取实体(函数、类、表、字段、概念等)
  3. 关系抽取:识别实体之间的关系(调用、继承、引用、配置等)
  4. 图谱构建:将实体和关系存入图数据库(如 Neo4j)或图文件(JSON)
  5. 查询引擎:提供图遍历、路径查找、子图提取等查询能力
// 知识图谱的数据结构
interface KnowledgeGraph {
  nodes: Node[]
  edges: Edge[]
}

interface Node {
  id: string
  type: 'file' | 'function' | 'class' | 'table' | 'field' | 'concept'
  label: string
  properties: Record<string, any>
  sourceFile?: string
}

interface Edge {
  from: string
  to: string
  type: 'calls' | 'inherits' | 'references' | 'configures' | 'depends_on'
  properties?: Record<string, any>
}

在妙趣AI 中的应用

妙趣AI 可以利用 Knowledge Graph 增强以下功能:

妙趣小结

传统 RAG 像是"翻书找答案"——一本书一本书地翻,找到就停。Knowledge Graph 像是"按图索骥"——手里有一张藏宝图,知道 X 标记在河流东边、山脚下、老槐树旁。

对于需要深度理解代码关系、文档关联、系统架构的 Agent 来说,Knowledge Graph 不是"增强",而是"必需品"。

📅 更新于 2026-05-18 · 妙趣AI · 🦞