自从 AI 大模型崛起以来,基本上所有的场景都在尝试与 AI 进行结合,医疗,旅游,教育,尤其是笔记系统,拍脑瓜就能想到,这是与生成式大模型最容易结合的使用场景;

不过依据个人理解,当下记的笔记或是为了思考,或是为了将来进行输出/使用做准备,所以记笔记的过程还是定义为一个输入的过程,除了书摘/素材收集等场景,在这个过程中我希望是以个人思考为主,AI 为辅;反倒是输出的时候,AI 可以为主,人脑为辅。

这几年我在为自己的知识管理流程开发一套基于卡片笔记的应用(名为 cflow),加之我本身是一个算法研究工程师,对 AI 有这莫大的兴趣,下面分享一下我在这几年开发迭代过程中,觉得 AI 大模型可以对我真正起到帮助的一些使用场景。

首先个人使用的 AI 模型主要是两类:

  • 一类是大家耳熟能详的生成式 AI 大模型(给定文本/图片进行输入,返回文本或者图片)
  • 一类是 Embedding 大模型(给定文本,图片作为输入,返回一个表征输入的向量)

然后结合卡片笔记的双链设计,可以组合出以下一些使用场景;

一、裸用生成式大模型

根据必要难度理论,如上文所说,笔记在输入的时候,应该少用生成式大模型,但是可以利用它的能力,来优化润色你的输入,让笔记更加的规范化。

我经常会需要在卡片笔记里面记录一些突然出现的灵感,既然是突然出现的,就不会永远都是你端坐在电脑前慢慢思考/输入的时候。

比如很多时候就是我在散步/买菜的路上,一旦有个灵感小灯泡,我就会打开软件,用输入法的语音输入快速录入,但这就免不了会有些重复的句子,顺序混乱,带有不少语气词;这种情况下录入的笔记再让 AI 润色一番,对于后期的整理可以省下不少功夫。

或者有些想法是在开会/通勤路上产生的,这种时候既不方便语音输入,也不方便慢慢输入,我往往会根据我对 AI 能力边界的理解,写下部分足够它来组织出一张卡片笔记的“只言片语”,让它将这些快速输入的碎片组织成文,后续空闲的时候再来人工二次润色。

还有一些诉求是需要让 AI 根据输入的卡片内容,按指定格式生成mermaid脑图,绘制甘特图,或者补充翻译版本;以上这些需求本质就是预设一段 prompt,然后写了部分卡片内容后,让 AI 来进行处理,把这块的能力抽象成“自定义 prompt”,就可以让大家随意的开发自己的 AI 辅助优化工具了。

有一说一,AI 润色语音输入卡片的效果每次都会惊艳到我,你甚至感觉它就是个真人,甚至输入法输入的一些离谱的错别字也能修正过来,比如某次我语音输入的 YAML,输入法写成压某了,json 它写成 jason 了,但是 AI 居然全部给修正过来了。

二、裸用 Embedding 模型

Embedding其实就是把文本/图片映射为向量,通过向量相似度来评估两个文本/向量之间的相似度,而且并不仅仅是两段文字上精确相同的输入可以得到较高的相似度,语意上相似也可以。所以在cflow 里面有以下一些使用场景:

编辑时推荐卡片:卡片笔记系统需要尝试与历史的卡片建立连接,找到合适的卡片尾部插入当前卡片。但是随着卡片数量增加到几千几万张的时候,找到“合适卡片尾部”这个事情就变得非常的难了。

所幸借助 Embedding 模型,把当前卡片内容的 Embedding 和历史所有卡片的计算一下相似度,可以将候选池子缩小到一个非常小的范围,而且最合适的卡片往往都在 Top 里面,在 cflow里面预览一下卡片,点击一下就可以完成引用的添加。

补充一点题外话,如果找到的“最合适的卡片“不是引用链的最尾部,那么可以通过可视化的方法,绘制卡片血缘,直接找到最下游。

相关卡片:既然可以根据输入的内容查找相似的卡片,也可以在复习卡片的时候对于某张特定卡片,找到和它相似的相关卡片(启发思考,或者发现隐藏的关联),flomo 新上的相关卡片也应该是基于类似的原理。

cflow 里面有三个地方用到了该能力:

  • 每日随机推送的复习卡片支持附带显示相似卡片(上一篇文章已经介绍了此功能)
  • 随机游走复习功能里面可以显示相似卡片
  • 卡片详情页可以查看相似卡片

自然语言搜索:个人最最最喜欢的使用场景,原理和上面讲的类似,但是效果奇佳,因为当你卡片增加的时候,你是很难想得起来之前的精确用词的,这种时候,基于语意的搜索能力就非常重要了!

不过除了对自己的卡片使用这个能力,我还喜欢对自己读书笔记的划线也使用类似的能力:

三、Embedding+RAG+生成式AI

这种就是很常见的基于自己的笔记构建知识库问答的框架,让 AI 根据你的问题,综合多张卡片的内容进行回答。

同理,还可以把自己的微信读书笔记或者其他文字加入到这个知识库中,和过去学习的自己对话:

四、双链+生成式AI

比起使用Embedding等方法找相似的卡片,双链连接的卡片天然就是相似主题的卡片,所以顺着双链,从某张卡片开头,我们是可以找到一整条引用链的,这条链上的卡片应该是隶属于某个主题下的;

找到一条长度至少为 N 的引用链,让 AI 基于这些卡片生成一篇汇总的小作文推送给你用于复习;甚至可以通过设置合适的 prompt,让卡片中的链接可以跳转回原文,让你知道小作文中的某个观点是来源于哪张卡片。

这会有一种你是一个大领导,有个小秘书会自动总结你说过的话,汇总成文给你的感觉,并且 AI 写出来的字里行间还会有一些你没想到过的角度给予你惊喜。

这个功能从开发实现到现在,使用了约半年多了,每天读一篇小作文,从逻辑通畅程度,整体字数,总结高度等方便,能明显的感受到背后 AI 大模型的进化(上图算是一张比较早期的效果了)。

五、双链+Embedding:智能白板(自称)

我花了很多时间写了很多的卡片,当我要输出的时候,这些卡片就是我的素材,但是哪些卡片才是这次我要写的内容用得上的素材呢?嗯,用 Embedding 找出来!那么我写作的时候,应该从哪张卡片开始参考呢?嗯,双链会告诉你答案;

所以我实现了一个功能:写好自己要创作的文章的大纲,基于 embedding 拉出相似卡片,基于引用链路连接卡片,展示在白板里(前期双链做得好的话,卡片不会太过零散在多条链路里面),顺着引用链路一边读,一边输出,非常舒服!

六、AI 大模型辅助复习体验

当你复习笔记的时候,比起直接读以前写的卡片,如果能让你脑子动一动,往往会带来更好的复习效果。借助AI,我实现了两个小功能:

推送时挖去关键词:推送复习的时候,让 AI 挖去一些关键词,你阅读的时候就会思考以前这里应该写的是什么;

但是这个能力对 AI 模型的能力要求比较高,难点是挖出好的关键词,早期开发的时候,像大部分国产大模型,或者 gpt3.5 皆不能胜任,不过现在模型进步真的非常快,加上 GPT4 也越来越便宜了,挖词的效果已经非常让人满意了。

复习卡:cflow 中定义了一种自定义 Markdown 语法,前后用||包围起来的文字,渲染出来就是灰色的掩膜,点击后才可以显示里面的文字。

基于此,可以利用上文提到的自定义 prompt 定义一套复习卡生成器,写好你的内容,让 AI 自动转成一套复习卡,如下图所示:

七、评论机器人

cflow 里面的评论功能本质是对接了开源评论应用 artalk,一开始的使用场景是可以卡片内容补充一些不需要记录在卡片正文里的话,比如吐槽,或者随手贴一点相关链接啥的,后来增加了一个评论机器人之后,成了我用的最多的功能。甚至在评论框里面增加了一个快速@评论机器人的方法:

甚至可以在评论这个载体下,使用叠楼回复,实现类似平时大家和 AI 聊天的效果,因为可以让对话带上上下文。

经常我在记录卡片的时候,学习到一些非常专业的名词的话,就会让机器人在评论区进行更加详细的介绍和举例,这样不仅复习卡片的时候可以看到这些文字,而且也不会影响卡片的长度。

结束语

其实借助上面的一些思路,还可以实现很多好玩实用的玩法,尤其是自定义 prompt,一个极其简单的实现,可以在 AI 的加持下,实现各种实用的功能,这里不再举例赘述。

不过也有一些其它的功能,现在已经用的比较少了,比如输入一个 URL,自动爬取正文来总结,感觉总结出来的文字还不至于可以沉淀成为一张卡片,反而是在阅读软件里面帮助筛选阅读材料更好一些;或者标签推荐,本身打个标签对人工来说就没啥负担,而且 AI 打的标签,在一些场景下效果并不好。

再次,也欢迎大家和我交流笔记系统里面 AI 还有一些什么使用场景~

以上!

20
5