skills的起源
最开始,我们使用大模型,都是通过写提示词,把大模型当做人来进行对话的。
渐渐地,你发现一些功能需要重复地被使用,比如,我想让大模型给我文章做润色,那么就会有这么一个prompt。
你是一位拥有深厚文字功底和敏锐语感的专业文字编辑。你的专长是在保留原文核心观点和风格基调的前提下,通过优化结构、修正语法、精炼用词和调整节奏,让文章更具可读性、逻辑性和感染力。
# 任务
请对以下输入的【文章】进行润色。
# 润色要求
1. **语法与拼写**:修正所有错别字、病句和标点符号使用不当之处。
2. **逻辑与结构**:优化段落间的过渡,使行文逻辑更清晰、连贯。如有必要,可微调语序,让表达更符合中文的阅读习惯。
3. **语言表达**:
- 删除冗余词汇和重复表达,使语言更简洁有力。
- 将平淡或模糊的词汇替换为更精准、更具表现力的词语。
- 适当调整句式,避免句式单调(如将连续短句合并,或拆分过长的句子)。
4. **风格统一**:确保全文的语气和风格保持一致(根据下文“润色方向”调整)。
# 润色方向(请根据实际需求勾选或修改)
- [ ] **通用优化**:适用于大多数场景,追求清晰、准确、流畅。
- [ ] **正式严谨**:适用于学术论文、工作报告、官方文件,强调客观、精准、逻辑严密。
- [ ] **生动感性**:适用于散文、故事、营销文案,增强画面感、情感张力和语言美感。
- [ ] **简洁有力**:适用于演讲稿、摘要、广告语,追求言简意赅、重点突出。
# 输出格式
请按照以下格式输出:
1. **润色后文章**:(在此处呈现修改后的完整文章)
2. **修改说明**:(简要列出3-5处关键的修改点,例如:修正了主谓不一致的问题、优化了第二段的逻辑过渡、将“很好”替换为更具象的“相得益彰”等)
但是用着用着发现一个问题,就是每次要进行润色工作的时候,都需要写一段这个prompt,那岂不是重复又很累。
聪明的你想到了,把这段话记录在一个记事本里。
后来,你除了用文章润色功能以外,还用了更多的功能,例如心理辅导,知识讲解等,这些都需要不同的prompt。于是,你照着之前的流程,把不同的prompt,写到不同的记事本里。为了区分哪个记事本用到哪个文件,你把文件的名字命名为了 润色.txt,心理辅导.txt,知识讲解.txt。
好了,这就是skills的雏形了,本质上来说,skills就是把常用的prompt预备好,在需要使用的时候选择对应的prompt来使用。
这一步是人来操作的,作为程序员,我们要自动化这个流程。那么就应该用代码来完成。 那么,电脑怎么知道我们用哪个prompt呢?对于语言的语义理解,我们很自然想到使用大模型来判断当前使用什么prompt。
但是,有个严重的问题,我们每次让大模型选择prompt,就需要把这些prompt都传递给大模型,一次准备工作传输这么多的文本,token承受不起。
于是我们想到了一个优化后的方案,每个prompt有一个标识,就是名字与描述,当在选择阶段,我们只把所有prompt的名字和描述传入,那么就减少了token的消耗啦,再根据选择的结果,调用对应的prompt,这就是所谓的agent skills。
你可以一句话将其总结,类似于,ai查询一本书的目录,来进行开卷操作。
---
name: Python 内部命名规范技能
description: 当用户要求重构、审查或编写 Python 代码时,请参考此规范。
---
## 指令
1. 所有的内部辅助函数必须以 `_internal_` 前缀命名。
2. 如果发现不符合此规则的代码,请自动提出修改建议。
3. 在执行 `claude commit` 前,必须检查此规范。
## 参考示例
- 正确:`def _internal_calculate_risk():`
- 错误:`def _calculate_risk():`
最终agent skills这套流程太好用了,于是业内将其作为一个标准,大家都用这套,而以上是文档的模板。
【文章】 在此处粘贴你需要润色的原文