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:
    直接返回文本回答
相关推荐
AI砖家6 分钟前
React Native 打包体积优化指南:在保证功能正常的前提下把包压到最小
javascript·react native·react.js·打包优化
程序猿阿森23 分钟前
Python 闭包与装饰器:从入门到精通
开发语言·python·面试
余额瞒着我当琳37 分钟前
C++--vector底层,leetcode118杨辉三角实战,对于传统reserve的坑点,迭代器失效
开发语言·c++
曹牧40 分钟前
C#:字符串做20位截断
开发语言·c#
无糖可可果1 小时前
从零看懂 JWT 登录鉴权:一个 React Demo 的完整拆解
前端·javascript
BreezeJiang1 小时前
JWT 登录不是存个 token:React 鉴权真正要闭合的是一条数据流
javascript·react.js·axios
醉城夜风~1 小时前
(超详细)C++多态(Polymorphism)
开发语言·c++
四千岁1 小时前
稀疏向量BM25Retriever不支持中文怎么办?jieba来帮忙
前端·javascript·后端
这是个栗子1 小时前
【JS代码分析】前端鉴权基础:Token 的本地存储与状态重置实践
开发语言·前端·javascript
wuyk5551 小时前
7.AVL 树:第一个自平衡二叉搜索树
开发语言·stm32·单片机·算法