你的 Skills 够专业吗?
概要
如果目标是复现专业者使用经验的方式,我到底应该复现什么?从“条件化知识”看,Skill 不只该记录怎么做,还要记录什么情况下才成立。
来自我设计 Agent Skills 时的个人思考。
我最开始做 Agent Skills 时,有一个很简单的想法。
神经网络的思想源头之一,本来就来自对人类神经系统的抽象。
当然,Agent 不等于 LLM,LLM 也不等于大脑。
但这给了我一个启示:
如果我要让 Agent 复用经验,那人是怎么复用经验的?
人是怎么用经验的?
假设我以前处理过一个问题。
下一次遇到相同的情况,我通常不会从头分析。
看到几个关键特征,很快就会觉得:
这个我见过。
然后过去的经验自然开始起作用。
但真正麻烦的是:
如果我认错了呢?
这次只是“看起来很像”。
某个真正重要的条件,其实已经变了。
这时候,经验不但没帮忙,反而可能让我更快、更自信地做错。
所以我开始觉得,专业和“做过很多次”并不是一回事。
至少在我理解里,专业还包括:
知道过去的经验什么时候适用。
这也是我希望 Agent Skills 最终接近的东西。
不是证明我的 Skills 有多专业,而是先弄清楚:
如果目标是复现专业者使用经验的方式,我到底应该复现什么?
原来这个问题有人研究过
后来我看到一个很贴近这个想法的概念:
条件化知识(conditionalized knowledge)。
简单来说,它不是只记住:
“遇到 X,就做 Y。”
而是把知识和它的适用条件一起理解:
什么情况下 X 才真的是 X?
什么时候 Y 有用?
什么条件变了以后,就不应该继续套用?
National Academies 在总结专家与新手研究时,把它描述为:专家的知识会和“它在什么情境下有用”联系起来,因此能够更快取出当前任务真正相关的那部分知识;没有被这样条件化的知识,即使已经知道,也可能无法在需要的时候被正确调用。
条件化知识的原始解释:How People Learn — How Experts Differ from Novices
这跟我当时对 Skills 的思考非常接近。
如果一个 Skill 只记录“怎么做”,它其实只保存了经验的一部分。
另一部分是:
什么情况下,这段经验才成立?
专家看到的,甚至不是同一个问题
国际象棋高手是一个很直观的例子。
高手看到真实棋局时,会很快认出有意义的局面模式。
真正帮他们加速的,不只是“会更多棋谱”,而是更快看出:
这是什么情况。
这让我重新理解了 Skills。
Skill 不只是“怎么做”
最简单的经验复用是:
情况 A → Skill A
但现实里的问题很少这么干净。
更接近我想要的其实是:
现在是什么情况?
哪些过去的经验相关?
这次和以前有什么不同?
哪些经验可以用,哪些要修改,哪些应该放弃?
所以一个 Skill 写得再完整,也只是其中一部分。
如果 Agent 只是:
看起来像 A
→ 找到 A
→ 执行 A
那 Skills 越多,不一定越接近专业。
因为它也可能越来越擅长找到一个看起来正确的旧答案。
真正困难的反而是:
这次真的是 A 吗?
所以,我说的“专业”是什么?
不是永远判断正确。
也不是有最多 Skills。
至少对我来说,我希望复现的专业性更接近:
识别情境,调用经验,同时保留怀疑经验的能力。
过去的经验可以让我更快。
但当关键条件发生变化时,我也希望系统能意识到:
这一次,可能不能直接照过去做。
所以标题里的“你的 Skills 够专业吗?”其实也包括我的。
我并不知道自己的系统已经有多专业。
它更像是我的一个目标:
不是让 Agent 记住越来越多做法,而是让它越来越会判断,过去的做法什么时候值得相信。