宝玉
Q:Agent 用 Skills 的时候,是不是要先调一次大模型选 Skill,再调一次大模型执行工具,总共调了两次? A:不是的。Skills 的元信息(每个 Skill 的 name 和 de...
AI 摘要
dotey 指出 Agent 使用 Skills 时并非两次调用大模型,而是通过系统提示词一次完成,并利用 Prompt Caching 节省 token。
推荐理由常规快讯,保留列表
原文
A:不是的。Skills 的元信息(每个 Skill 的 name 和 description)在对话一开始就作为系统提示词(System Prompt)的一部分,统一加载进了上下文窗口。所以大模型在处理你的第一条消息时,已经知道了所有可用 Skills 的描述,不需要单独调用一次大模型来做选择。
实际流程是:大模型在一次调用中,一边读你的问题,一边对照上下文里的 Skill 描述,判断该用哪个 Skill,然后读取对应的 SKILL.md 获取详细指令,接着决定是否调用工具——这些都可以在同一轮对话中连贯完成,并不是"选 Skill 一次、用工具又一次"的两段式调用。
你可能会担心:每次对话都把所有 Skill 描述塞进上下文,是不是很浪费 token?这就是 Prompt Caching 发挥作用的地方。系统提示词(包括所有 Skill 描述)在多轮对话中会被缓存,后续每一轮不需要重新处理这些内容,既省了时间也省了成本。
60/100
讨论
暂无评论。