揭开Skill被吹嘘的神秘面纱
最近skill成为了热门话题,被广泛宣传为赋予AI新能力,是新阶段的象征,但实际情况可能并非如此。实际上,skill只是改变了文档的处理方式,从原先需要用户主动发送或请求AI读取文档,改为先发送文档摘要,让AI根据摘要和当前上下文自行决定是否读取完整内容。这种做法并没有本质上的改变,只是增加了所谓的神秘概念,使得skill被过度炒作。
skill的原理可以概括为:在工具列表中定义了一个skills工具,任何在skill文档中定义的name和描述部分,都会被转换成xml格式,并添加到tools中。当AI需要时,它会通过function call/too use来调用skills工具读取某个skill的具体内容,并将这些内容作为工具响应添加到上下文中发送给AI。值得注意的是,这些内容不会被删除,即使当前任务不需要也不会被移除,因此与使用read工具读取文档没有太大区别。
此外,如果skill文件夹中包含脚本,如aaa.py,并在skill.md中描述了该脚本的作用,AI可以通过命令行Bash工具执行这个脚本,例如python aaa.py。但这与你自己编写文档让AI阅读后调用并没有本质区别。
综上所述,skill本质上就是读取文档,只是读取顺序有所不同。之所以叫skill,主要是为了炒作和宣传。实际上,将其称为文库、图书馆或文档库可能更为合适。
关于所谓的节约token,如果文档原本需要用户主动让AI读取,则不会节约token。如果文档原本是让AI自行读取,可能会在一定程度上节约token,因为AI可以根据摘要决定读取哪个文档,减少了AI读取无用文档造成的浪费。然而,这种情况很少见,因为大部分文档是由用户希望AI读取的,所以几乎不属于这种情况。
评论已关闭