传统文档大多数时间只是【代码】或【数据】其中的一种. 而skill能实现代码与数据同构的特性.
比如写一个处理发票的skill, 大部分人只会写:
"帮我按照下面的格式提取发票日期, 金额"
万一遇到个skill中没有的格式就炸了. 这其实就是把skill写成了文档.
而理解了skill的同构性就能玩元编程:
"分析这张发票的排版拓扑和命名惯例, 不要直接输出 JSON 结果, 动态生成一个专用的skill(Micro-Skill)并运行它来提取配置, 包括: 哪些字段可以通过正则表达式确定性提取(编译为传统代码). 哪些歧义字段需要 LLM 提取, 并生成一份不超过 50 字的超精简 Prompt. 生成严格验证该格式的 Pydantic 校验类(简单harness, 类似含税金额 == 不含税金额 + 税额). "
这样这个skill只要模型够聪明就不用管了.
再次发问:所谓的 #skill 和一个认真写清楚的 #markdown文档 有啥区别呀?