拓冰建站拓冰建站
首页 / 资讯中心 / 正文

graphify 入门与实践:把代码、文档与 PDF 变成可查询的本地知识图谱

graphify 入门与实践把代码、文档与 PDF 变成可查询的本地知识图谱【免费下载链接】graphifyTurn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.项目地址: https://gitcode.com/GitHub_Trending/graph/graphifygraphify 是一个面向 AI 编程助手Claude Code、Codex、Cursor、Gemini CLI 等的/graphify技能输入一条命令它本地解析你的代码、文档、PDF 与媒体文件构建一张可查询的知识图谱并输出可交互 HTML、审计报告与持久化 JSON。读完本篇你将掌握 graphify 的安装与平台注册方式、三阶段处理管线的原理、全部常用命令与参数以及无向量库、基于图拓扑聚类这一核心设计在源码中的落地证据。一、它解决什么问题写/graphify于任意 AI 编程助手中它会读取文件、构建知识图谱并还给你原本不知道的架构结构。graphify 完全多模态可以输入代码、PDF、markdown、截图、图表、白板照片或其他语言的照片、视频与音频——它会从一切内容中提取概念与关系并链接进同一张图。一个典型场景研究者如 Andrej Karpathy习惯维护一个/raw文件夹堆满论文、推文、截图与笔记。graphify 正是对这类问题的回答——据仓库基准测试在混合语料上每次查询所需 token 数比直接读原始文件减少 71.5 倍详见下文源码与基准部分跨会话持续可用且明确区分读到的事实与推断的结论。核心设计一句话概括不是向量索引而是一张真实的图。没有 embeddings、没有向量库你查询问题、追踪两个概念间的最短路径、或解释单个概念走的都是图遍历docs/how-it-works.md。二、安装与平台注册前置要求Python 3.10以及下列 AI 编程助手之一Claude Code、Codex、OpenCode、Cursor、Gemini CLI、GitHub Copilot CLI、VS Code Copilot Chat、Aider、OpenClaw、Factory Droid、Trae、Kiro、Hermes 或 Google Antigravity。# 推荐 — Mac 与 Linux 均可用无需配置 PATH uv tool install graphifyy graphify install # 或用 pipx pipx install graphifyy graphify install # 或普通 pip pip install graphifyy graphify install官方包名注意PyPI 上的包名是graphifyy双 y即pip install graphifyyPyPI 上其他叫graphify*的包均与本项目无关。pyproject.toml 中name graphifyy命令行入口通过[project.scripts]注册为graphify graphify.__main__:main——这就是为什么包名和命令名不一致。安装完成后运行graphify install把技能文件注册进助手。不同平台的安装命令平台安装命令Claude Code (Linux/Mac)graphify installClaude Code (Windows)graphify install自动探测或graphify install --platform windowsCodexgraphify install --platform codexOpenCodegraphify install --platform opencodeGitHub Copilot CLIgraphify install --platform copilotVS Code Copilot Chatgraphify vscode installAidergraphify install --platform aiderOpenClawgraphify install --platform clawFactory Droidgraphify install --platform droidTraegraphify install --platform traeGemini CLIgraphify install --platform geminiHermesgraphify install --platform hermesKiro IDE/CLIgraphify kiro installCursorgraphify cursor installGoogle Antigravitygraphify antigravity install打开助手后输入/graphify .注意Codex 的技能前缀是$而非/即输入$graphify .。三、三阶段处理管线AST、Whisper 与语义提取graphify 的处理分三个阶段docs/how-it-works.md 给出了完整说明阶段一AST 确定性提取免费无 API 调用tree-sitter 本地解析代码文件抽取类、函数、导入、调用图、docstrings 与设计理由注释# NOTE:、# WHY:、# HACK:等——全程无 LLM。代码文件不送入语义提取器如果语料只有代码第三阶段被完全跳过。pyproject.toml 的依赖列表印证了这一点——默认安装即带上约 25 个 tree-sitter 语法包python、javascript、typescript、go、rust、java、c、cpp、ruby、c-sharp、kotlin、scala、php、swift、lua、zig、powershell、elixir、objc、julia、verilog、fortran、bash、json 等对应文档宣称的 25 种语言支持。阶段二视频/音频本地转写无 API 调用视频与音频用 faster-whisper 在本地转写转写提示词会用当前图中度最高的上帝节点做领域播种使转写内容聚焦你的项目转写结果有缓存重跑会跳过已处理文件。阶段三文档/论文/图片语义提取Claude 子代理并行消耗 token多个 Claude 子代理并行处理 markdown、PDF、图片与转写文本各自输出一段 JSON 片段节点、边、分组关系最终合并进一张图。聚类不依赖 embeddings——这是与 GraphRAG 类方案的关键区别。Leiden 算法按边密度发现社区而 Claude 抽取的语义相似边semantically_similar_to标记为 INFERRED本来就存在于图中直接参与社区形状的形成。图结构本身就是相似性信号无需独立的 embedding 步骤或向量数据库。从源码结构看这一声明在 graphify/cluster.py 中完整落地cluster()优先调用graspologic_native.leiden模块文档字符串写明Uses Leiden (graspologic) if available, falls back to Louvain (networkx)graspologic 不可用时如 Python ≥ 3.13pyproject.toml 中leidenextra 限制了python_version 3.13自动退化为 NetworkX 的 Louvain 社区检测并附带过大社区的拆分与凝聚度评分。并行提取同样有源码佐证graphify/extract.py 使用concurrent.futures.ProcessPoolExecutor对未缓存文件做真正的多进程并行 AST 提取绕开 GIL工作线程数受GRAPHIFY_MAX_WORKERS环境变量与--max-workers标志控制并对 Windows 下ProcessPoolExecutor的 61 进程上限做了保护docs/how-it-works.md 给出的实测是 84 个代码文件上并行比顺序快约 1.66 倍。SHA256 缓存每个被提取的文件都按内容哈希指纹化重跑完全跳过未变化文件缓存位于graphify-out/cache/。graphify/cache.py 中可见hashlib.sha256(...).hexdigest()指纹的实现graphify/hooks.py 还会在 post-commit 钩子环境中导出GRAPHIFY_MAX_WORKERS1使提交触发的后台重建保持安静、低资源。四、输出graphify-out/ 里有什么运行完成后你会得到技能输出中附带的目录结构如下graphify-out/ ├── graph.html 交互式图谱 — 任意浏览器打开点击节点、搜索、筛选 ├── GRAPH_REPORT.md 上帝节点、意外连接、建议问题 ├── graph.json 持久化图谱 — 数周之后查询无需重读文件 └── cache/ SHA256 缓存 — 重跑只处理发生变化的文件graph.json采用 NetworkX 的 node-link 格式每个节点含id、label、file_typecode/document/paper/image/rationale、source_file每条边含source、target、relation动词短语如calls、imports、semantically_similar_to、confidence与source_file。三节点以上的分组关系超边存放在G.graph[hyperedges]。排除不想要的目录在项目根放一个.graphifyignore语法与.gitignore相同# .graphifyignore vendor/ node_modules/ dist/ *.generated.py五、常用命令全览/graphify # 当前目录 /graphify ./raw # 指定目录 /graphify ./raw --update # 只重新提取发生变化的文件 /graphify ./raw --directed # 有向图 /graphify ./raw --no-viz # 只出报告 JSON不出 HTML /graphify ./raw --obsidian # 生成 Obsidian vault /graphify add https://arxiv.org/abs/1706.03762 # 拉取一篇论文 /graphify add video-url # 下载音频、转写并加入 /graphify query 什么把 Attention 和优化器联系起来 /graphify path DigestAuth Response /graphify explain SwinTransformer graphify hook install # 安装 Git hooks graphify update ./src # 重新提取代码文件不经 LLM graphify watch ./src # 图谱随文件变化自动更新查询类命令的真实输出示例graphify 跑在 FastAPI 代码库上$ graphify explain APIRouter Node: APIRouter Source: routing.py L2210 Community: 2 Degree: 47 Connections (47): -- RequestValidationError [uses] [INFERRED] -- Dependant [uses] [INFERRED] -- .get() [method] [EXTRACTED] -- __init__.py [imports] [EXTRACTED] ... $ graphify path FastAPI ModelField Shortest path (3 hops): FastAPI --uses-- DefaultPlaceholder --references-- get_request_handler() --references-- ModelField六、你会得到什么报告要素逐项拆解上帝节点God nodes——连接度最高的概念一切结构都流经它们意外连接——按综合得分排序跨代码—论文的边获得更高权重每条结果附自然语言理由建议问题——4 到 5 个只有这张图才适合回答的问题为什么——docstrings、行内注释# NOTE:、# IMPORTANT:、# HACK:、# WHY:与设计理由被抽成独立的rationale_for节点并链接到相关代码置信度评分——每条 INFERRED 边都带confidence_score0.0–1.0token 基准——每次运行后自动打印。混合语料上相对原始文件减少71.5 倍token/查询小语料6 个文件约 1 倍——图谱价值随语料规模上升docs/how-it-works.md 给出完整表格仓库worked/目录下保留了原始输入与真实输出可供复现验证自动同步--watch——代码变化时图谱自动更新Git hooksgraphify hook install——安装 post-commit 与 post-checkout 钩子提交与切分支后自动重建纯 AST无 API 开销。置信度标签是 graphify 的可信度基石每条关系三选一标签含义EXTRACTED直接在源码中找到函数调用、导入置信度恒为 1.0INFERRED合理推断附confidence_scoreAMBIGUOUS不确定在报告中标记供人工复核INFERRED 使用离散评分标准0.95近乎确定显式跨文件引用、唯一合理目标、0.85强证据命名与上下文吻合、0.75合理有上下文但非显式、0.65弱仅命名相似、0.55推测。这个离散集合在源码中同样可验证graphify/export.py 将合法 INFERRED 分数显式约束为{0.55, 0.65, 0.75, 0.85, 0.95}。七、隐私边界与技术栈代码文件tree-sitter 本地处理任何内容不离开你的机器纯代码语料甚至不需要 API key文档/PDF/图片会发送到你的 AI 助手所用的模型 API 做语义提取走/graphify技能时使用 IDE 会话的模型视频/音频faster-whisper 本地转写不外传无遥测、无使用追踪、无分析。技术栈NetworkX Leidengraspologic tree-sitter vis.js语义提取走 Claude、GPT-4 或你平台的模型视频转写走 faster-whisper yt-dlp可选。整体架构为技能编排 Python 库技能驱动detect() → extract() → build() → cluster() → analyze → report → export流水线每个阶段独立成模块、以普通 dict 与 NetworkX 图通信、无共享状态ARCHITECTURE.md。八、小结与延伸阅读graphify 的可验证主张可以收敛为三点代码提取是确定性、本地、免费的约 25 种 tree-sitter 语法聚类走图拓扑而非向量graspologic Leiden含 Louvain 回退每条边都带可审计的置信度标签。仓库中可直接深入的材料docs/how-it-works.md —— 三阶段管线、社区检测、置信度评分与 token 基准ARCHITECTURE.md —— 模块职责表、如何新增语言提取器pyproject.toml —— 包名、25 个 tree-sitter 依赖与全部可选 extraspdf/video/mcp/leiden 等worked/httpx/ 等目录 —— 真实语料的输入文件与GRAPH_REPORT.md、graph.json输出可复现验证。【免费下载链接】graphifyTurn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.项目地址: https://gitcode.com/GitHub_Trending/graph/graphify创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门