Claude Code 令人惊叹的知识图谱技术栈

CChase AI
컴퓨터/소프트웨어AI/미래기술

Transcript

00:00:00这可能是我们见过的赋予 CloudCode 第二大脑的最佳技术栈。
00:00:04每个人都在为使用 Obsidian 或 Graphify 来帮助提升 CloudCode 的记忆能力而疯狂。
00:00:10但如果不是非要在两个工具中二选一,而是把它们结合起来会怎样呢?
00:00:15如果我们利用 Graphify 将任何存储库,无论是代码库还是一系列
00:00:20文档,转化为知识图谱,然后将其整合进 Obsidian
00:00:26好让 CloudCode 能随时查询呢?
00:00:28嗯,这正是今天要向大家演示的内容。
00:00:32那么让我们开始吧。
00:00:33首先我们需要回答的问题是:为什么?
00:00:35为什么我们要关心将右侧的 Graphify 和左侧的 Obsidian 结合起来?
00:00:41答案是,通过结合这两个工具,CloudCode 能够更好地回答
00:00:46在我们的知识库背景下关于大型存储库的问题。
00:00:51我指的是什么呢?
00:00:53嗯,记住 Graphify 的功能。
00:00:56Graphify 允许我们将 CloudCode 指向任何存储库、任何代码库,并创建一个知识
00:01:01图谱。
00:01:02这个知识图谱充当了 CloudCode 的地图,向它展示代码库内部
00:01:08或文档中正在发生什么、不同的概念、它们之间的关系以及
00:01:12缘由。
00:01:13这张地图交给 CloudCode 后,使它能够更快速、高效地回答
00:01:16关于代码库的问题。
00:01:17然而,Graphify 的一个缺点是它处于真空中。
00:01:22它仅仅是那个代码库。
00:01:23仅仅是那组文档。
00:01:24它与我们可能在知识库中查看的更宏大的项目完全无关。
00:01:29你知道,在我们的知识库内部。
00:01:31因为 Obsidian 知识库可能覆盖面非常广。
00:01:35可能会有这样的场景:你用 Graphify 查看了一些存储库或一系列
00:01:39文档,你想知道它如何融入更宏大的计划
00:01:43之中。
00:01:44这就是 Obsidian 的用武之地。
00:01:45我们可以把在 Graphify 中找到的一切放入我们的知识库。
00:01:50或者,如果你单纯喜欢 Obsidian,并希望整个 Graphify 结构成为
00:01:56一个独立的 Obsidian 知识库,你也可以这样做。
00:02:00所以带入 Obsidian 有两个原因。
00:02:02一个是,嘿,我用 Graphify 搞定了这一切。
00:02:05我想让它成为某个项目更宏大背景的一部分。
00:02:08嘿,我们几乎可以直接把它放进去。
00:02:10或者你只是觉得,我热爱所有与 Obsidian 相关的东西。
00:02:13我想待在 Obsidian 的基础设施内。
00:02:14我想要那些插件。
00:02:15我喜欢 UI,等等。
00:02:17这也很好办。
00:02:18这就是你为什么要关心的原因。
00:02:19在进入具体操作之前,先感谢一下今天的赞助商——我自己。
00:02:24我刚刚发布了 Cloud Code 大师课,这是从零
00:02:28成为 AI 开发者的第一途径,特别是如果你没有技术背景的话。
00:02:31我每周都会更新,里面有大量与 Obsidian 相关的
00:02:36内容,包括如何构建你自己的 Cloud OS 指挥中心,我们今天可能会
00:02:39触及到这一点。
00:02:41如果你想入手,置顶评论里有链接。
00:02:44你可以在 Chase AI+ 里面找到它。
00:02:46要让 Graphify 加 Obsidian 技术栈工作,你显然需要 Graphify 和 Obsidian。
00:02:52本视频不会是一个从零开始教你如何使用这两个工具的教程。
00:02:56
00:02:56已经有涵盖所有内容的内容了,我会把链接放在上面,或者你可以看一下
00:03:00我的个人资料,如果这对你来说全是全新的话。
00:03:04所以我们首先需要的是 Graphify。
00:03:07我们需要某种文档或某种我们最终想要拉入 Obsidian 的代码库。
00:03:12再次说明。
00:03:13这里有两个选项。
00:03:15第一,我们查看一个真正的代码库;第二,你只是在查看不是代码的东西,
00:03:20文档、PDF、图像、视频等等,只要是某种信息集合,
00:03:28某个 Graphify 将要查看的目录,它会提取所有的含义和
00:03:32连接,我们将把它变成一个知识库。
00:03:34今天我们要做的就是这个。
00:03:35我们将看看这个非代码库的知识库场景。
00:03:40演示中,我们将拉取 Cloud Code 文档。
00:03:43我们要下载 Cloud Code 文档。
00:03:45我们要将 Graphify 指向这些文档。
00:03:48它会创建一个知识图谱,然后我们要把所有这些推送到 Obsidian。
00:03:52演示内容就是这些。
00:03:53现在,Graphify 最棒的地方在于它已经内置了这一点。
00:03:57所以我们在 Obsidian 端不需要做任何特殊的事情。
00:04:00我们只需要做一两件事,我会演示给你们看。
00:04:02但绝大部分工作是通过 Graphify 命令完成的,因为
00:04:08有一个实际的 Graphify 标志说,嘿,为我们刚才找到的一切创建一个知识库。
00:04:14你可以在这里看到它。
00:04:16Graphify dash dash Obsidian 为我们生成一个 Obsidian 知识库。
00:04:19所以这样做非常容易,因为记住,一旦我们安装了 Graphify,这就包括了
00:04:23Graphify 的技能。
00:04:24所以我们直接使用自然语言。
00:04:25所以我只需要跳进 Cloud Code 然后说,下载官方 Cloud Code 文档,
00:04:30将 Graphify 指向它,然后使用 Graphify Obsidian 命令将其变成一个知识库。
00:04:36就是这样。
00:04:37你可以看到它实际上是什么样子的。
00:04:39所以它继续获取了文档。
00:04:41一共 171 页。
00:04:44它把它们全部下载到一个独立的文件夹,然后开始对它运行 Graphify 知识
00:04:50图谱序列。
00:04:51现在,从文档创建的知识图谱是这个,但让我们更深入地了解
00:04:55它实际上是如何创建这些节点的。
00:04:58这些节点是从哪儿来的?
00:04:59每个节点都是它下载的页面之一吗?
00:05:02不一定。
00:05:03所以 Graphify 从官方 Cloud Code 文档中抓取的文档数量是
00:05:09145 个文档。
00:05:11现在,并非每个文档都对应一个节点。
00:05:14Graphify 做的是查看所有这些文档,并从这些文档中提取概念。
00:05:20文档。
00:05:20事实上,它拉取了 591 个节点,并且有 685 个连接。
00:05:26记住,这些节点中的每一个都不是一个文档。
00:05:31它不是下载的网页。
00:05:32它是来自页面上的一个概念,然后将它们连接起来。
00:05:35我们可以在这里看到。
00:05:36所以如果我查看上下文窗口,什么与它相关联?
00:05:39嗯,我们看到像路径范围规则、子代理独立上下文窗口、
00:05:45后工具使用钩子和扩展的 100 万 token 上下文之类的东西。
00:05:49所以上下文窗口是这里的大节点,你可以看到所有这些相关概念。
00:05:54所以 145 个文档,591 个概念,685 个连接和 67 个社区。
00:06:00记住,什么是社区?
00:06:01社区只是这些概念的分组。
00:06:04所以像上下文这样的东西可能就是一个社区。
00:06:07你可以在这边看到它们。
00:06:08像检查点、云和 web、LLM 网关技能等东西。
00:06:12如果你记得我们之前的 Graphify 视频,这就是我们通过 Graphify 赚钱的地方。
00:06:16从事物中提取概念并进行映射的想法。
00:06:19因为现在 Cloud Code,如果我给它这个知识图谱,这张地图,
00:06:22它就能非常容易地得出关于文档的答案。
00:06:27如果我问它一个关于子代理的问题,嗯,它非常容易就能搞清楚
00:06:31什么是与子代理相关的。
00:06:32像代理团队等东西。
00:06:34因为它不只是在抓取它。
00:06:35它不只是在控制 F 它。
00:06:37它有地图。
00:06:37它理解其中的联系。
00:06:38它理解为什么。
00:06:40但现在,尽管这在 Graphify 方面很棒,但它是在真空中。
00:06:44好的,这与我的 Obsidian 知识库完全无关。
00:06:47我的 Obsidian 知识库里有很多与 Cloud Code 相关的东西。
00:06:50我有 Cloud Code 项目、Cloud Code 内容,大量与 Cloud Code 相关的东西,
00:06:54其中 Cloud Code 文档信息将是一笔宝贵的资产。
00:06:57所以现在的问题是,我如何把所有这些拉到这里,拉到我在 Obsidian 内部的
00:07:02这个所谓的知识图谱中?
00:07:03虽然,记住,记住,当我们看着 Obsidian 时,这并不完全等同于一个真正的知识图谱。
00:07:09它只是一堆相互关联的 Markdown 文件。
00:07:10它只是一堆相互连接的 Markdown 文件。
00:07:12现在,Graphify 知识图谱和 Obsidian 之间的这种转换对我们来说很容易,
00:07:16因为正如我所说,Graphify 会自动执行此操作。
00:07:19当我们将那个 Obsidian 标志调用时,Graphify 所做的是它会转到每一个节点,
00:07:26例如子代理,它会为子代理创建一个 Markdown 文件。
00:07:31它会创建自动反向链接,你知道,那些让我们能够在 Obsidian 中拥有
00:07:35与所有连接到它的节点之间的连接的事物。
00:07:41所以它将创建 591 个 Markdown 文件,并在这些 Markdown
00:07:50文件之间建立 685 个适当的链接,并立即将其插入 Obsidian。
00:07:54这很多。
00:07:55这很多 Markdown 文件即将被直接注入到我们当前的
00:08:01Obsidian 知识库和我们当前的 Obsidian 结构中。
00:08:03现在,一方面,这是件好事,因为那里可能有很多有价值的信息。
00:08:06存在。
00:08:06但另一方面,随意将 600 个文档注入到我们构建的这个东西中可能
00:08:12不完全是我们想要的。
00:08:14这可能有点太多了。
00:08:16那么我们处理所有这些即将注入的新数据有什么选择呢?
00:08:21因为如果你像我一样创建了整个 Cloud OS Obsidian 指挥中心,
00:08:26你对随意往系统里扔东西会持谨慎态度。
00:08:29你想把控什么东西进出。
00:08:31我并不担心,而且我的终极目标不是拥有一个看起来很酷的 Obsidian 知识图谱。
00:08:35这只是一个连贯系统的一部分。
00:08:38嗯,为了减轻或更好地控制这些进入我们
00:08:42知识库的 Markdown 文件流,我们真的有四个选择。
00:08:45第一个选择是,如果你只是想把信息
00:08:50加入到 Obsidian 生态系统中,并不在意它是否在所谓的“主库”中,
00:08:54知识库中,那就是让它为所有这些信息创建一个独立的知识库。
00:08:59这意味着,嘿,我有这个知识图谱,我只是要让它成为自己的知识库。
00:09:04它仍将处于真空中,但它是 Obsidian 内部的一个真空。
00:09:07对有些人来说,这很棒。
00:09:08那就是他们想要的。
00:09:09实际上,这也是 Graphify 的默认设置。
00:09:12当你要求它创建 Obsidian 知识库时,它最初只会把它放在它自己的
00:09:15目录中。
00:09:16它有点像把它隔离了。
00:09:17你的第二个选择是进行某种隔离转储。
00:09:21我是什么意思?
00:09:21嗯,我们可以看看这里我的 Obsidian 内部。
00:09:24我在左边有很多文件夹。
00:09:26我们可以做的是,我们将这些新的 Cloud Code 文档系列 Markdown 文件,
00:09:32全部 600 个,给它们一个知识库中特定的子文件夹,并直接命名为
00:09:38类似 Cloud Code 文档。
00:09:40这允许我们,如果,嘿,我们得到了这股文档洪流,我们实际上不喜欢它如何适合
00:09:45宏大的方案。
00:09:46我们需要做的也是删除一个子文件夹,一切就都解决了。
00:09:50所以我们把它带入情境,但我们有一个简单的出路。
00:09:53第三个选择是,我们只是收获我们想要的任何信息。
00:09:57所以我们要做的就是让 Cloud Code 查看 Graphify 创建的那个独立目录下的所有那些
00:10:03Markdown 文件,然后我们让 Cloud Code 通读并说,好的,把这个
00:10:07带进来,忽略那个,带进来,忽略那个,等等,等等。
00:10:11所以你不需要全部 600 个。
00:10:13也许你只是想要 100 个与子代理相关的文件,或者类似的东西。
00:10:17所以你有点只是零敲碎打。
00:10:18选项四是最复杂的,那就是重新分配。
00:10:22所以,这是一种具体情况具体分析的基础。
00:10:24记住,我们谈到了给所有这些 Cloud Code 文档它们自己特定的子文件夹,
00:10:29如果我们不喜欢它,我们就可以随意删除。
00:10:32嗯,我们还有选择,让 Cloud Code 再次查看 Graphify 创建的
00:10:36所有 Markdown 文件,然后将它们重新分配到它认为最有意义的任何子文件夹中。
00:10:42意思。
00:10:43所以它让它在你的大型知识库结构中真正连贯起来。
00:10:47只是要明白,那更难撤销。
00:10:50所以你有选择。
00:10:51在将 Graphify 知识图谱整合进你现有的 Obsidian 工作流程时,
00:10:57并非非黑即白、一成不变。
00:10:59我的建议,也是我今天将演示的方法,是首先让它创建一个
00:11:03独立的库,因为它会自动完成这一步,非常简单。
00:11:07然后我们只需将其作为子文件夹导入。
00:11:10这样如果需要删除,也会很方便。
00:11:12我们可以看看它构建了什么。
00:11:13它包含了 Graphify 的内容,我们之前一直在看 graph.html 和 graph.json。
00:11:18但在这边,它创建了一个独立的库。
00:11:23所以在我的 Chase 文件夹下的 vaults 中,有一个 cc-docs,这是一个独立的 Obsidian
00:11:28库。
00:11:29现在,Obsidian 仍然需要识别它。
00:11:31所以即使它创建了一个独立的 Obsidian 库,我们还必须跳转
00:11:35到 Obsidian 中并将其指向这个目录。
00:11:38所以你需要做的是打开 Obsidian,来到左下角
00:11:41点击管理库,然后打开文件夹作为库。
00:11:45你只需要输入你的文件目录。
00:11:48对我来说,那是 vaults 然后是 cc-docs。
00:11:51也就是它创建的任何文件夹,然后选择该文件夹。
00:11:54现在我们有了一个基于该知识图谱的 Obsidian 库。
00:11:58现在,我们还没有完成,是的,它能够获取知识图谱。
00:12:02它能够获取所有这些节点,并将它们本质上转化为 Markdown 文件。
00:12:07但问题是,这些 Markdown 文件就像你在这里看到的那样。
00:12:12它们非常简陋。
00:12:15基本上只是特定概念的标题,比如代理威胁模型、提示词注入,
00:12:20然后是与之相关的连接。
00:12:22例如,它在哪里?
00:12:23图中的边是什么?
00:12:24这些本身对我们来说并没有多大作用。
00:12:27如果我们让 Cloud Code 查看代理的命令内容会怎样?
00:12:31如果它只是这样,对吧?
00:12:33所以我们现在需要做的是,引入所有这些内容所基于的源文档。
00:12:37这样,当我们把这张知识图谱传给 Cloud Code 时,
00:12:39在它的 Obsidian 视图中,它就不会只是在读取随机节点。
00:12:42当它读取某个特定节点(如数据保留)时,
00:12:45它就会像在 Obsidian 中一样,
00:12:49将其链接到相应的源文档。
00:12:51所以如果我说,嘿,跟我谈谈自动模式,
00:12:55它不仅仅会被带到这个 Markdown 文件。
00:12:59它会看到这个 Markdown 文件。
00:13:02它会看到与它相关的一切。
00:13:03它会看到它可以从中提取所有信息的源文档。
00:13:05再说一次,这就像地图上的路标,指引 Cloud Code 方向
00:13:08去获取信息。
00:13:12所以,我给它的命令是拉入源文档,
00:13:13并将每个节点连接到其在 ccdocs 文件夹中的原点。
00:13:15所以现在当我点击任何这些 Markdown 文件时,
00:13:19我都有一个清晰的源文档链接。
00:13:22所以如果我点击这个,它会带我到现在的原始文档,
00:13:25也就是现在 Obsidian 内部的那个。
00:13:28所以如果我问 Cloud Code 一些关于,比如绑定技能的问题,
00:13:30它会来到捆绑技能文档,该文档链接到技能文档。
00:13:33所以再次说明,这就是地图应用的工作方式。
00:13:38我们就是这样能够将这种知识图谱
00:13:41转化为一个在 Obsidian 中运行的 Markdown 镜像。
00:13:44现在我们已经在这个独立的 Obsidian 库中创建了它,
00:13:49下一步就是将这个库移到我们的大库中,对吧?
00:13:53也就是我们的主库。
00:13:58就像我说的,我们有那四个选项。
00:13:59我们可以分步完成。
00:14:01我们可以随心所欲地做。
00:14:02但在本视频中,我会向你展示它是多么简单。
00:14:03直接移过来就行。
00:14:04所以我写道,现在把这个 ccdocs 库结构
00:14:06移动到我们主库内的一个子文件夹中。
00:14:08我能在不到一分钟的时间内完成。
00:14:11所以现在在我们的主库里,应该有一个 graph imports 子文件夹,
00:14:13然后下面是 clod code docs 子文件夹。
00:14:17我们有 658 个概念存根。
00:14:20这些是与 Graphify 知识图谱中的节点相关的 Markdown 文件。
00:14:22所有这些都链接到 146 个完整源文档中的一个。
00:14:25然后跳进主库,如果我去 graph imports,clod code docs,对吧?
00:14:27而所有这些都链接到 146 个完整源文档中的其中一个。
00:14:33所以,跳进主库(main vault),如果我进入 graph imports,然后是 clod code docs,对吧?
00:14:39这是完整的文档,以此类推。
00:14:41你应该已经能看出 Obsidian 图结构看起来有什么不同了。
00:14:44你可以在右边看到所有这些。
00:14:48这就是我们刚才插入的关于 clod code 文档的一切。
00:14:52这只是一个视觉上的呈现,展示了它是如何插入到
00:14:54我们所做的所有 clod 工作的更大背景中的。
00:14:58正如我们开头所说的,这就是卖点。
00:15:04事实是我们现在拥有了所有这些 clod code 文档。
00:15:06再说一次,为你想要的任何东西,为你觉得合理的东西插入它。
00:15:08它现在处于更大的 Obsidian 库生态系统中,而不是只是一个孤立的区域,
00:15:12再说一次,你可以将其插入到任何你想要的地方,或者任何对你有意义的地方。
00:15:15这样它现在就融入了更大的 Obsidian 知识库生态系统,而不是仅仅作为一个孤立存在的东西,对吧?
00:15:24因为有很多用例。
00:15:25仅仅把它孤立起来,
00:15:29我认为特别是在代码库等方面,可能还是停留在 Graphify 就行了。
00:15:31但我认为有一大批人确实热爱 Obsidian 以及
00:15:32clod code 是如何在其发挥作用并建立像指挥中心这样的东西的。
00:15:36所以,我今天展示给你的那个选项,它只是你工具箱里的一个工具。
00:15:37但我觉得有很大一部分人真的很喜欢 Obsidian,
00:15:42以及 Claude Code 如何与其结合并打造出像指挥中心一样的东西。
00:15:45幸运的是,我认为在执行这类事情时,它并不太困难,正如我演示的那样。
00:15:49所以,这就是我在这段视频中要留给你的地方。
00:15:49这就是你如何能够获取在 Graphify 中生成的内容,
00:15:51无论是我们今天所做的某种非结构化文档还是代码库,并将其引入
00:15:52Obsidian,无论是通过孤立的过程,还是你将其引入某种更大的背景中。
00:15:58我认为这两个工具都很棒,Obsidian 和 Graphify。
00:16:00所以,你越习惯于一起使用这类东西,你解锁的东西就越多。
00:16:02这就是你如何能够将你在 Graphify 中生成的内容
00:16:07——无论是像我们今天所做的那种非结构化文档,还是代码库——导入到
00:16:11如果你想深入了解我的 Cloud Code 大师班,它链接在描述中。
00:16:16除此之外,我们下次再见。
00:16:17我觉得这两个工具都很棒,Obsidian 和 Graphify。
00:16:20所以,你越习惯于尝试将这些工具结合使用,
00:16:24你能解锁的功能就越多。
00:16:25一如既往,欢迎告诉我你的想法。
00:16:28记得去看看 Chase AI+。
00:16:30如果你想学习我的 Claude Code 大师班,链接就在视频描述中。
00:16:34除此之外,我们回头见。

Key Takeaway

通过将 Graphify 的知识图谱转化为 Obsidian 的关联 Markdown 文件,用户能够将非结构化文档或代码库系统性地整合进个人知识管理中心,从而提升 AI 代理的查询效率与上下文理解能力。

Highlights

  • Graphify 能够将代码库或文档转化为包含概念节点与连接的知识图谱,为 Claude Code 提供结构化地图。

  • 演示中,145 个官方文档被处理为 591 个概念节点和 685 个连接,并形成 67 个知识社区。

  • 利用 Graphify 的 --obsidian 指令可自动将知识图谱导出为相互关联的 Markdown 文件。

  • 将外部文档导入 Obsidian 知识库时,可选择通过独立库、子文件夹、零散提取或自动重新分配四种方式控制数据流。

  • 通过在 Obsidian 中为每个概念节点建立指向原始文档的链接,可实现查询时的精准溯源。

Timeline

技术栈结合的必要性与目标

  • 结合 Graphify 与 Obsidian 能解决 AI 在处理大型存储库时的背景真空问题。
  • 知识图谱充当了 AI 代理的地图,能够展示概念之间的联系与逻辑缘由。
  • 将代码或文档转化为 Obsidian 库,方便用户在更宏大的知识体系下进行管理与插件化操作。

Graphify 虽然擅长从特定存储库提取含义,但缺乏与用户更广泛知识储备的联动。通过将提取出的结构化知识导入 Obsidian,用户不仅能保留原始文档的上下文,还能利用 Obsidian 的 UI 和插件生态进行深度处理。

从文档生成知识图谱与转换操作

  • Graphify 会从原始数据中提取概念而非仅仅对应文件,实现知识的浓缩。
  • 通过 --obsidian 标志,Graphify 可自动将生成的节点转化为具备反向链接的 Markdown 文件。
  • 转换过程包括提取核心概念节点、建立节点连接以及生成相应的 Markdown 存根。

以官方 Cloud Code 文档为例,系统下载了 171 页内容并提炼为 145 个文档,最终生成了 591 个核心概念节点。这些节点通过 685 个连接形成网络,解决了 AI 仅靠简单搜索无法理解复杂逻辑联系的问题。

管理导入数据的四种策略

  • 用户可选择建立独立的隔离知识库以保持主库整洁。
  • 通过分配特定的子文件夹进行“隔离转储”,能在必要时通过删除文件夹快速撤销操作。
  • 对于复杂需求,可采取零散提取有用信息或让 AI 辅助重新分配文件位置的进阶管理方案。

考虑到大型知识库的维护压力,导入 600+ 个文件需要谨慎对待。直接导入会导致主库结构紊乱,因此通过子文件夹命名或创建独立库进行中转,是平衡系统整合度与可控性的有效手段。

建立知识溯源与主库整合

  • 仅有节点存根是不够的,必须将每个节点与原始文档进行双向链接。
  • 将处理好的独立库移动到主库的特定子文件夹,可实现知识体系的闭环。
  • 整合后的结构不仅提供了可视化图谱,还确保了 AI 在查询时能够精准定位至源文档。

生成的 Markdown 存根若缺乏源文档指向,将失去实用价值。通过后续的脚本连接处理,用户可以实现从 Obsidian 概念节点直接跳转到具体文档内容,完成从外部信息抓取到本地知识内化的全链路流程。

Community Posts

No posts yet. Be the first to write about this video!

Write about this video