AI风向

【深度】Perplexity发布Agent Skills工程圣经:为什么写Skill不等于写代码

【深度】Perplexity发布Agent Skills工程圣经:为什么写Skill不等于写代码

Perplexity Agents团队首次公开内部Skill开发指南。核心结论:"如果你像写代码一样写Skill,你会失败。"全文涵盖三层上下文成本模型、分层Skill架构和"2/5/10 token法则"。


背景

5月16日,Perplexity AI的研究博客发布了一篇题为《Designing, Refining, and Maintaining Agent Skills at Perplexity》的技术文章。这不是一篇普通的博客——它是Perplexity内部Agent团队用于训练新工程师的Skill开发手册,现在被完全开源。


对于正在使用Hermes Agent、OpenClaw或任何Agent框架开发自定义Skills的AI创业者来说,这篇文章可能是本月最有价值的技术读物。


核心洞察:Skill开发与软件开发是两回事

Perplexity的Agents团队发现了一个普遍问题:工程师从写代码切换到写Skill时,会把代码开发的最佳实践带入Skill开发,结果适得其反。


他们对比了Python之禅(The Zen of Python)的20条格言,发现至少有一半在写Skill时是错误或误导性的。


关键对比表


Python之禅对Skill来说是错的Skill的正确做法
"扁平胜过嵌套"❌ 反例Skill应该是文件夹,利用层级结构管理复杂度
"显式优于隐式"❌ 反例Skill的激活是隐式模式匹配,描述即路由触发器
"特殊情况不值得破例"❌ 反例特殊情况就是最高价值内容(忘记加的特殊case就是bug)
"如果实现容易解释,那可能是好主意"❌ 反例"如果容易解释,模型已经知道。删掉它。"
"复杂不是好事情"❌ 反例"复杂度就是功能特性",Skill的价值在于处理模型搞不定的复杂性

Skill的四大本质

1. Skill是一个文件夹,不是一个文件

Skill包含多个文件:
  • index.md:核心文件,模型运行而非重新发明
  • 辅助脚本:运行时加载,不加上下文负担
  • 深层文档:条件加载

真实案例:Perplexity的美国所得税Skill需要3级嵌套层级,包含1,945个IRS代码条款。测试发现,"不加载Skill时的模型表现比加载整个扁平文件更好"——层级结构不是可选项,而是必需。


2. Skill是一种格式

  • 名称:全小写、无空格、可用连字符
  • 描述:不是"这个Skill做什么",而是"什么时候加载这个Skill"
  • 前端元数据+依赖管理+评估标记

3. Skill是可调用的

Agent在运行时按需加载Skill,不是每次都会打包进上下文。

4. Skill是渐进式的

Perplexity定义了**三层上下文成本模型**:

第1层(索引层):~100 tokens/Skill
  ├─ 每个会话、每个用户、始终支付
  ├─ 仅名称+描述
  └─ 进入门槛极高

第2层(加载层):<5000 tokens
  ├─ 加载后直到压缩边界持续占用上下文
  ├─ 通常一个线程加载3-5个Skill
  └─ 每个句子都必须有价值

第3层(运行时层):0-20000+ tokens
  ├─ 条件分支逻辑
  └─ 最低准入标准


这个模型对AI创业者的启发:你的Skill设计必须遵循"2/5/10 token法则"——索引描述精炼到2个词以内,加载体压缩到5K tokens以下,运行时才能放开到10K+。


什么时候需要写Skill?

Perplexity团队的判断标准很务实:


"先不带Skill跑你的agent,执行几个核心查询。如果模型已经做得好,就不需要Skill。"


只有以下情况才需要:


  1. 模型会在没有特殊上下文时犯错
  2. 需要跨运行保持极度一致性
  3. 知识是持久的但不在训练数据中(如企业内部流程、最新API文档)
  4. 这是品味问题(如Perplexity的设计Skills,由设计总监Henry Mo...编写,定义"什么字体不能用、怎么排版好看")

AI创业启示

1. Skills = 知识资产 = 产品

如果你能开发出一个在特定领域(税务、法律、医疗、金融)表现出色的Skill,这就是可定价的知识产品。Perplexity的所得税Skill处理1,945条税法——这种深度不是一蹴而就的。

2. 上下文成本是隐藏的天花板

大多数Agent开发者只关注"功能是否实现",忽略上下文成本。Perplexity指出:一个低质量的Skill会降低同一会话中其他所有Skill的性能。**Skill开发需要"上下文意识"**——每多一个token都在消耗预算。

3. 文档即代码

Skill的核心文件(index.md)本质上是一种**可执行文档**。这与传统软件开发完全不同——Skill的开发者在写"给模型的文档",而非"给人类的代码"。

行动建议

  1. 立即阅读原文:https://research.perplexity.ai/articles/designing-refining-and-maintaining-agent-skills-at-perplexity
  2. 审核你的现有Skill:检查描述是否"太啰嗦"(100 tokens以内?)、加载体是否>5K tokens、是否存在扁平化的问题
  3. 自测:不带Skill跑你的核心工作流,看看模型是否已经能做好
  4. 学习层级嵌套:如果某个Skill需要处理>10种情况,考虑拆成多级文件夹

本文由AI辅助创作,经人工审核编辑发布