夜雨聆风学习资料网

ARTICLE · 1017236

graphify:把代码、文档、PDF 变成一张 AI 能查的知识图谱

graphify:把代码、文档、PDF 变成一张 AI 能查的知识图谱
OPEN SOURCE KNOWLEDGE GRAPH · 代码知识图谱2026.09

别再逐个翻文件了

把整个项目变成一张图

AI 查图,不翻文件

Graphify-Labs/graphify · Apache 2.0 开源 · Python 3.10+

Graphify-Labs/graphify

开源Apache 2.0

📦 3 Parts + Conclusion

👉 滑动

PART 01

一张图、一份报告

WHAT YOU GET

PART 02

每条边都有出处

CONFIDENCE

PART 03

官方示例跑一遍

OFFICIAL EXAMPLE

PART ///

写在最后

适合谁用

项目一大,问 AI“这个功能到底在哪实现的”,它就开始挨个文件搜索、连着读十几个文件,答案还容易跑偏。graphify 先把整个项目编成一张可查询的知识图谱,之后让 AI 查图,而不是翻文件。

01

PART

它解决的不是“搜索”,是“理解”

WHAT IT IS

接手一个陌生的老项目,或者隔了半年回头看自己写的东西,最想知道的往往不是某个词出现在哪个文件,而是这几个模块到底怎么串起来的。

默认情况下,AI 编程助手只能靠搜索加逐个读文件来回答这类问题。文件少还凑合,项目一大就有两个麻烦:一是贵,每次都要把原文塞进上下文;二是散,关掉窗口,它对这个项目的印象基本就清零了。

graphify 的做法是先建图:把项目里的代码、文档、PDF、图片扫一遍,抽成节点和边,存到项目下的 graphify-out/ 目录。之后你问问题,AI 查的是这张图,而不是重读一遍文件。

有一点值得单独说:它明确不做向量检索,没有 embeddings,没有向量库。给你的是一张真的图,可以沿着边一步步走。

— graphify 项目标识(来源:官方仓库 docs/graphify-card.png)

02

PART

先看结果:一张图、一份报告、一个 JSON

WHAT YOU GET

一次运行落下三个文件,各管一件事:

...

graphify-out/

├── graph.html 浏览器打开,点节点、筛选、搜索

├── GRAPH_REPORT.md 摘要:核心概念、意外连接、建议问题

└── graph.json 完整的图,之后随时查,不用再读原文件

官方 README 里的效果图,是用 FastAPI 的代码库跑出来的:每个节点是一个概念,颜色是自动识别出的社区,整张图在 graph.html 里可以点开看。

— graphify 跑 FastAPI 代码库生成的知识图谱(来源:官方仓库 docs/graph-hero.png)

日常用到的就三条命令:

...

graphify query "show the auth flow" # 用大白话问,返回一小块相关的图

graphify path "FastAPI" "ModelField" # 两个东西之间是怎么连起来的

graphify explain "APIRouter" # 把一个概念讲清楚

官方 README 给了 explain 的真实输出:

...text

$ graphify explain "APIRouter"

Node: APIRouter

Source: routing.py L2210

Community: 2

Degree: 47

留意 Source 那一行:直接给出文件和行号,而不是“大概在路由相关的地方”。

03

PART

每条边都标了是“读到的”还是“猜的”

CONFIDENCE TAGS

图会给出关系,但关系有真有假。graphify 给每条边打一个置信标签:

标签
含义
EXTRACTED
源码里直接写着的,比如一次函数调用、一个 import
INFERRED
模型推断出来的,附一个 0.0—1.0 的分数
AMBIGUOUS
拿不准,单独列进报告等人工确认

官方文档说明,INFERRED 的分数是分档给的:0.95 几乎确定,0.85 证据较强,0.75 合理但没明说,0.65 只靠命名相似,0.55 属于猜测。

官方自己的工作示例里能看出效果。仓库 worked/httpx/ 放了一份按 httpx 架构仿写的 6 文件 Python 代码库,官方公布输出是 144 个节点、330 条边、6 个社区,53% EXTRACTED、47% INFERRED、0% AMBIGUOUS。报告里还专门提醒:Client 身上挂着 12 条推断出来的关系,需要人工核一下。

✦ 这一点对写方案的人特别有用

汇报或技术评审最怕把推测讲成事实。有标签在,你能说清哪几条是从代码里读出来的,哪几条是模型猜的。

04

PART

它不只吃代码

BEYOND CODE

graphify 把处理分成三遍,代价完全不同:

代码:用 tree-sitter 解析语法树,纯本地、确定性、不调用模型,可以完全没有 API key

视频和音频:本地用 faster-whisper 转文字,也不出本机

文档、PDF、图片:这一步要走模型,会产生 token 消耗

它还能读 SQL schema 和 MCP 配置,把包管理文件里的依赖也做成节点。

另外要说明,官方 README 写 37 种 tree-sitter 语法,官网写 36 种,how-it-works 文档又写 25 种语言。口径不一,本篇不写死,以你安装的版本为准。

!便宜的用法和贵的用法不一样 🕳

只索引代码可以完全离线、零成本;一旦把文档和 PDF 交给模型做语义提取,就开始花钱。混合仓库官方给了捷径:加 `--code-only`。

05

PART

官方示例:7 个文件的小项目跑一遍

OFFICIAL EXAMPLE

想先感受一下,官方仓库的 worked/example/ 是最小的一份材料——7 个文件、两种语言的小型文档处理流水线:

...

raw/

├── parser.py 读文件、识别格式、启动流水线

├── validator.py 结构校验,调用 processor 做文本归一化

├── processor.py 关键词提取、交叉引用检测

├── storage.py 持久化,维护索引

├── api.py HTTP 入口,编排上面四个模块

├── architecture.md 设计决策和模块职责

└── notes.md 待解决的问题和取舍

操作只有一步:在这个目录里打开 AI 编程助手,输入 /graphify ./raw。

官方写明了预期结果:api.py 会成为中心节点连着另外四个模块;storage.py 是连接数最高的节点;两个 markdown 文件会连到它们讨论的代码模块,大致分成 2 个社区。

这份示例没有 PDF 和图片,全程只跑 AST 和 markdown,语义提取的 token 成本是零。跑完可以接着问“哪些地方直接调用了 storage”“parser 到 processor 的最短路径是什么”,图存在 graphify-out/ 里,跨会话保留。仓库每个 worked/ 目录都同时放了原始输入和真实输出,可以自己跑一遍对照。

06

PART

费用和限制

PRICING & LIMITS

最容易被说错的一点:graphify 其实是两个东西。

开源引擎:Apache 2.0,免费,装在你自己机器上,不用注册账号。代码解析全程本地,官方明确说不发遥测、不上报。

托管产品:官网 graphify.com 和 app.graphify.com,是搭在开源引擎之上的常驻层。官网说明它有 Free 计划(不用绑卡),上面还有 Pro 和 Teams,按席位收费、需要绑卡,目前是 v1 公开发布前的早期访问。

只用开源这套可以一分钱不花,但有几个边界要提前知道:

想让 AI 读懂文档和 PDF,得有一路模型。在 IDE 里跑用当前会话的模型;headless 跑要自己配 key,官方支持 Gemini、Claude、OpenAI、DeepSeek、Kimi、Ollama、Bedrock、Azure,其中 Ollama 纯本地。

图要跟着代码走。装一次 git hook,commit 和切分支会自动重建;但 git pull 之后要手动跑一次 graphify update .,这是唯一要自己记得的一步。

图太大(官方提到超过 5000 个节点)HTML 会打不开,加 --no-viz 直接查 JSON。

07

PART

上手:两条命令

GET STARTED

环境要求不高:Python 3.10 或以上,推荐用 uv 或 pipx 装,它们会把包放进独立环境。

...bash

# 第一步:安装命令行

uv tool install graphifyy

# 第二步:把 skill 注册进你的 AI 助手

graphify install

然后在项目目录里打开 AI 助手,输入一行 /graphify . 就结束了。

两个容易踩的坑,官方专门标了出来:

!包名是 graphifyy,多一个 y 🕳

PyPI 上的包叫 `graphifyy`(双 y),命令行才叫 `graphify`。用 uvx 要写成 `uvx --from graphifyy graphify install`。纯 `pip install` 能不用就不用——skill 运行时按 `graphify-out/.graphify_python` 找 Python,路径对不上会报 `ModuleNotFoundError`。

✦ Windows 用户

PowerShell 里斜杠是路径分隔符,要用 graphify .,不要写成 /graphify .。

以上命令与预期结果均按官方 README 与官方示例整理,未在本机实际执行,以官方文档为准。

///

LAST

适合谁用

WHO IT'S FOR

判断标准其实很简单:你会不会反复问 AI“这个项目是怎么组织的”。

适合的情况:接手陌生项目、要快速摸清大型仓库的分层;多语言多模块,靠人肉捋依赖不现实;希望 AI 顺带理解文档和设计稿,而不只是代码;代码不能出本机的场景。

不太适合的也说清:单文件小脚本,建图的开销比收益大——官方自己的 6 文件基准里 token 收益接近 1 倍;以及你只想要语义搜索,并不关心调用关系。

官方入口:GitHub 仓库 Graphify-Labs/graphify,官网 graphify.com。仓库 worked/ 下的示例可以直接跑,先拿最小那份试手感,比看文档快。

拥有数万开源项目工具的小程序上线了大家可以找到自己感兴趣的工具软件平台小程序还在持续不断更新测评中。

既然看到这里了,如果觉得有用,随手点个赞、在看、转发三连吧。

点赞
在看
转发

THANKS FOR READING

相关学习资料