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:
    直接返回文本回答
相关推荐
沪飘大军27 分钟前
ll-llm:一个零依赖、可插拔的 OpenAI 兼容 LLM 代理
javascript
IT笔记1 小时前
【Rust】Rust Match 模式匹配详解
java·开发语言·rust
逝水无殇1 小时前
C# 运算符重载详解
开发语言·后端·c#
TPBoreas2 小时前
配置信息防泄露方案:.env 环境隔离详解(dotenv-java)
java·开发语言
山河木马2 小时前
GPU自动处理专题3-NDC怎么映射成屏幕像素坐标(视口变换)
javascript·webgl·图形学
敲代码的嘎仔2 小时前
实习日志day6--实习日志day6--title命名规范化&businessType纠正&补充缺失的@Log注解&报警与通信模块补充&产出阶段总结文档
java·开发语言·人工智能·git·python·实习·大二
江华森3 小时前
Python 实现高德地图找房(一):环境搭建与数据爬虫
开发语言·爬虫·python
杜子不疼.3 小时前
【Qt初识】信号槽(三):机制意义、断开连接与 Lambda 表达式
开发语言·数据库·qt
Appthing3 小时前
在 TanStack Start 中使用 VitePWA 的正确配置
javascript
老迟到的茉莉4 小时前
Hermes 是谁?跟 Claude Code 差在哪
开发语言·python