lisp 和 org 对比
lisp 的特点
- lisp 是一种列表编程语言
- 它用括号表示一个函数操作
- 它的第一个元素是函数名称,后面的都是参数
- lisp 中可以定义函数,函数可以被调用
org 的特点
- org 是一种大纲式的语言
- 它的父节点表示一个块的内容
- 它的父节点表示当前内容的描述,后面都是具体内容
- org 笔记也应该定义模板或者被引用的块,用链接引用,然后描述就是重命名
举例子说明如何做好笔记间的关系
用读书笔记作为例子
读书笔记的模板
因为自己经常会写读书笔记,所以定义一个自己经常用的读书笔记的模板,内容可能如下
*** 读书笔记工作流/模板
这个父节点后面会直接用书籍名称,比如:xxxx读书笔记。
**** 书籍信息
***** 作者
***** 生产日期
***** 出版社
**** 章节内容
***** [[*章节总结模板][第一章]]
***** [[*章节总结模板][第二章]]
***** [[*章节总结模板][第三章]]
*** 章节总结模板
这个父节点可以用章节的名称
**** 知识点
**** 作者观点
**** 评价
关于工作流的想法
org 其实本身就已经具备了列表编程语言的特性了,所以其实可以把 org 笔记用来替代工作流软件
工作流的特点
不关心具体函数的实现,只关心输入输出
工作流的节点
工作流的节点和 org 的节点差不多
- org 的父节点对应工作流的节点名称,也就是 lisp 中的调用的函数
- org 的子节点对应工作流的输出参数,也就是 lisp 中的剩余的参数
在 AI 工作流中的应用
可以在 org 文档中管理 AI 工作流,比如 comfy UI
节点定义
org 中的节点就可以正好对应工作流的节点,只需要把父节点链接到对应的实现函数上就行
节点解析
org 中的节点会根据索引和引用的的链接被解析成 lisp 函数,然后调用对应的 lisp 函数执行就可以了。 比如 org 中的节点叫作 调用模型 ,解析到的对应的 lisp 函数可能就是 (call_llm) 。 然后每个子节点会按顺序传入到 lisp 函数中。
函数链接
org 的节点的链接直接链接到定义的 lisp 函数。
工作流连接
工作流也是一个 org 节点,最大的节点表示最终的输出,里面会有子节点,表示当前节点的输出。 当然,它的子节点也会有它的输入节点。