Agent Skill设计模式

目录

一、Skill:

Agent Skill就是一种真不对同场景的说明文档,将系统提示词中"if(场景一){此处省略1w词}else if(场景二){此处省略1w词}"的庞大内容转移到文档场景一.skill、场景二.skill,现在系统提示词变为"if(场景一){输出read(场景一.skill)}else if(场景二){输出read(场景二.skill)}",此时Host就能根据LLM返回词调用对应skill文档输入到LLM,通过目录显著减少了系统提示词长度。

Skill文档具有规范的格式(可能是大家都觉得这种格式下模型推理效果更好),包括文件名、该技能的描述、具体规则。

二、Reference&Script

在某个Skill场景中,也可以通过目录的方式减少Skill的长度,例如在会议场景Skill中,如果涉及到财务,那么就需要财务手册的内容,如果涉及规章,那么就需要规章手册的内容,通过在Skill中抽出多个Reference并规定模型按需调用,进一步减少了Skill文件的长度。

Script和Reference类似,Script中是一段可执行代码,区别是Reference封装的是文本、Script封装的是可执行代码。例如skill文件中可能会这样约束:

复制代码
你是一个技能调度器。
你有两个能力:

1. 读取参考资料
   当你需要查知识、文档、Reference 时,
   请严格返回:
   read_reference(query="你的问题")

2. 执行代码脚本
   当你需要计算、处理数据、运行代码时,
   请严格返回:
   run_script(code="print(1+1)")

你只输出函数调用,不要回答问题。

然后模型输出对应的函数名,由Host根据模型输出读取Reference文档输入给模型或执行Script脚本:

复制代码
if 模型返回 == "read_reference()":
    执行【读取文档】逻辑

elif 模型返回 == "run_script()":
    执行【运行代码】逻辑

else:
    直接返回文本回答
相关推荐
FRing039 分钟前
vue2干货总结8(路由模块封装、router-link、声明式导航、路由重定向、编程式导航)
开发语言·前端·vue.js·vue2
旖旎夜光11 分钟前
【C++ 基础入门】C++ 多态(上):虚函数、重写、override/final 与抽象类
开发语言·c++·笔记·学习
starzy199032 分钟前
深入理解Scala嵌套函数:作用域封装之道
开发语言·scala
Sakura_j_h_41 分钟前
从零写一个 MCP stdio Server:用 Python 校验博客文章格式
开发语言·python·自动化·ai工具·mcp·json-rpc
vipxieliang2 小时前
JavaScript 迭代器与生成器:控制异步与惰性求值
前端·javascript
Hilaku2 小时前
Event Loop 这篇你看完就不用再看别的了!
前端·javascript·程序员
白杨尚青2 小时前
C++进阶篇(五):红黑树——四条规则、三种插入情况与旋转变色
开发语言·数据结构·c++·stl·红黑树·平衡二叉树
.道阻且长.2 小时前
Linux基本开发工具:gdb和cgdb的使用
linux·运维·服务器·开发语言
starzy19903 小时前
深入理解Scala匿名函数:函数式编程基石
开发语言·scala
晓得迷路了3 小时前
栗子前端技术周刊第 153 期 - Vitest 5.1、Remix v3.2、Node.js 27 Alpha...
前端·javascript·vite