← Back to blog

我写了一个叫 Distill (蒸馏) 的 skill,用它归纳知识

AIClaude Code工具
Table of contents

我写了一个叫 Distill (蒸馏) 的 skill,用它归纳知识

我的收藏夹早就成了一座坟场,现在需要用好他们输出知识给我。

B 站收藏了三十多个”必看”的财经分析,YouTube 的稍后再看排到第二页,桌面上躺着几本下了一半的 PDF。每一个当时都觉得有用,点下收藏的那一刻仿佛知识已经进了脑子。结果是:它们再也没被打开过。收藏这个动作太廉价了,廉价到可以替代真正的阅读。

Distill 就是为了解决这件事写的。一句话说清楚它干嘛:把一个视频、一期播客、一本 PDF、一篇长文,变成一篇我愿意从头读到尾的中文文章,然后扔进 Obsidian。

摘要不是答案

最开始我也试过直接让模型”总结一下”。出来的东西你大概见过——

  1. 作者认为美股半导体板块存在高位风险
  2. 关键观察点是 SPY 的某个价位
  3. 建议注意仓位管理

这种东西的问题不在于错,而在于没用。它把一段有来龙去脉、有判断、有犹豫的内容,压成了几条互不相干的骨头。读完我既不知道作者为什么这么想,也不知道哪些是他拍胸脯的结论、哪些只是顺口一提。更糟的是,它读起来像说明书,没有人会想读第二遍。

我要的不是摘要清单,是一篇编辑过的文章:有开头把我带进问题,有小标题顺着思路走,作者的观点自然地嵌在叙述里,而不是每段都用”作者认为”开头。说白了,就是把一个人花二十分钟讲的东西,还原成我五分钟能读懂、而且读得下去的样子。

我给它定的三条死规矩

写这套流程的时候,我发现真正难的不是”让模型写得长一点”,而是约束它别乱来。所以有三条规矩是写死的:

忠于来源,不替作者圆场。 模型有个坏习惯,遇到逻辑缺口会自动补一个看似合理的论据。但那是模型的论据,不是作者的。Distill 里明确要求:作者没说的,不许替他说;推测就标成推测,别伪装成事实。每篇文章结尾都有一段叫「可信与存疑」,专门交代哪些能回原片核对、哪些只是作者一家之言、哪些是因为字幕或 OCR 质量打了折扣。

事实和立场要分得清。 一个 UP 主在讲半导体风险的时候,他可能在做风险提示,也可能手里正好空着仓。这种商业动机、带货成分、数据口径,文章里得点出来,而不是当成中立结论照单全收。

输出必须落到 Obsidian,不许糊弄。 这条听起来很小,但我吃过亏。模型经常图省事把文件写到当前目录、临时文件夹,或者自己造一个 distill-output/ 了事——然后你永远找不到它。现在的规则是:找不到 vault 就停下来问我,绝不拿个临时目录凑数。一个来源对应一篇文章,带 frontmatter,方便以后在 Obsidian 里检索。

视频是最麻烦的,所以做了三层兜底

文本类的输入(粘贴的文字稿、Markdown、能复制文字的 PDF)其实好办,直接读就行。真正折腾的是视频和播客,因为你得先把”声音”变成”文字”。这里我做了三级取文,能省事就省事:

  1. 有字幕,直接抓。yt-dlp 把现成字幕扒下来,优先中文、其次英文。这是最快也最准的路。
  2. 没字幕,本地转写。 拿到音频,丢给本地的 faster-whisper 跑。默认用 small 模型,短视频足够了;碰到投资、医疗、技术这种专有名词密集、数字要命的内容,再考虑升级模型,并且对不确定的价格、百分比、日期人工核一遍。
  3. YouTube 反爬锁死,按需上 PO-token。 这是最后的兜底,平时不启动,真被卡住了才拉起 bgutil 那套。

还有些细节是踩坑踩出来的。比如视频结尾常有重复的”精彩片段”或者口播带货,机械收录就会污染正文,所以写作时要专门识别掉。再比如高阶转写模型下载半天没动静时,不能让整个任务卡死——回退到 small 的稿子,然后在文末老老实实写明”这段受转写质量限制”。能用就比完美重要。

它不解决什么

写工具最容易犯的错是假装它无所不能,所以我也想说清楚边界:

  • 扫描版 PDF 它没辙。 pdf2text.py 只啃可复制的文本层,图片型的得先自己 OCR。提取不出正文,它会让你补材料,而不是看着文件名瞎编。
  • 它不写你署名的东西。 推文、演讲稿、商业文案——这些是”你的观点”,Distill 干的是”忠实转述别人的内容”,两码事。它也被明确禁止套用我的个人文风去把文章伪装成原创。
  • 一篇只处理一个来源。 想做多来源综述?先各自蒸馏,再另外综合,别指望它一锅烩。

一个小执念

整套东西我刻意做成了运行时无关的。它不绑 Claude Code,也不绑 Codex 或者任何一个 agent。核心其实就是一份SKILL。

我不太喜欢那种把你锁死在某个平台里的工具。今天好用的 agent,明天可能就被更好的取代,但我攒下来的阅读习惯和那一 vault 文章,应该是我自己的。站在巨人的肩膀上,吸收知识,也就是他山知识,可以攻玉。


代码在 github.com/chensimian/Distill。如果你也有一个堆满”以后再看”的收藏夹,也许用得上。