admin 2026-01-09 03:15:08 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文剖析OpenAI泄露的Skill设计,揭示其将LLM任务流程化、工具化的机制。通过分析文档、PDF和表格案例,总结出视觉闭环、规则显式化等经验。建议编写Skill时需明确元信息、分层方法论并固化脚本,以平衡代码确定性与提示词灵活性,构建高效的知识分发范式。 综合评分: 88 文章分类: AI安全,安全建设


cover_image

🤔 ChatGPT 也在偷偷使用 Skill?

原创

黑屋Ω号

漕河泾小黑屋

2026年1月8日 08:00 美国

来自 OpenAI 泄露 Skill 文件的启示

引言

最近,科技圈最火的概念莫过于 Skill 了。不少眼尖的用户在与 ChatGPT 互动时,窥探到了 OpenAI 似乎正在其产品中悄悄测试一种名为 Skill 的新能力。这不禁让人好奇,连浓眉大眼的 OpenAI 都在用,Skill 到底是什么?它又被用在了哪些地方?

沿着X的足迹,笔者也通过了一些技术手段,获取到了 OAI 的官方 Skills 。

Skill 是什么

简单来说,Skill 是一种将大型语言模型(LLM)执行特定任务的“方法论”和“工具集”打包起来的模块。它不仅仅是一段提示词(Prompt),更像一本为 AI 准备的“SOP 手册”,里面可能包含:

  • 元信息(Frontmatter):定义 Skill 的用途、边界和参数。
  • 方法论(SKILL.md):用 Markdown 写成的分步指南,告诉 AI“第一步做什么,第二步做什么”。
  • 脚本和工具(Scripts/):固化好的代码脚本,让 AI 能直接调用来处理特定任务,而不是每次都“freestyle”现场生成代码。
  • 参考资料(Reference/):更详细的 API 文档、数据结构或背景知识,供 AI 在需要时查阅。 接下来,就让我们一起庖丁解牛,看看 OpenAI 是如何构建这些高效的 Skill 的,以及我们能从中借鉴到什么。

OAI Skill 精要

我们拿到了三个分别名为 docspdfs 和 spreadsheets 的 Skill。它们分别对应着处理 Word 文档、PDF 文件和电子表格这三类在办公和数据分析场景中极为常见的任务。看似寻常,但其内部设计却处处透露着工程化的严谨与巧思。 下面,我们将逐一剖析这三个 Skill 的设计亮点。

1. docs Skill

docs Skill 的目标是建立一个从创建、编辑到最终审查的完整 DOCX 文件处理流程。它的核心理念是:永远不要相信代码的单次输出,必须建立“渲染-检查”的闭环

  • 核心设计:四段式工作流

  • 要点解析: 将整个任务流清晰地划分为 读取 (Reading) → 创建 (Creating) → 质量标准 (Quality) → 最终检查 (Final checks) 四个阶段,每个阶段都有明确的指令和工具链。

  • 核心设计:可视化检查闭环

  • 要点解析: 强制要求将 DOCX 文件先转换为 PDF,再逐页渲染成 PNG 图片进行视觉检查。这套 DOCX → PDF → PNG 的流程确保了“所见即所得”,避免了纯文本提取可能忽略的格式与布局问题。

  • 核心设计:质量标准前置

  • 要点解析: 将格式要求、引用规范、禁忌项等“质量期望”独立成章,而不是零散地分布在操作步骤中。这让 AI 在执行任务前就明确了交付标准。

  • 核心设计:脚本固化

  • 要点解析: 提供 render_docx.py 脚本,将文档渲染和检查的常用操作固化下来,提高了任务的稳定性和效率。

设计洞察

docs Skill 最值得称道的,是它建立了一套基于视觉反馈的、可回溯的质量保证体系。它不信任任何“一次性生成”的黑盒过程,而是强调在每个关键步骤后都要进行渲染和人工(或 AI)检查。这种看似“笨拙”的方法,恰恰是保证复杂文档格式不出错的最可靠路径。 它传达了一个重要的思想:对于那些输出结果的“正确性”包含大量视觉元素(如排版、图表、字体)的任务,纯粹的逻辑代码检查是远远不够的。

2. pdfs Skill

与 Word 文档不同,PDF 文件通常被认为是“不可变”的。pdfs Skill 的设计哲学是在这个看似固化的世界里,建立一套可靠的读取、创建和质量控制流程。

  • 核心设计:读取工具链

  • 要点解析: 同样强调 pdftoppm 渲染成 PNG 的可视化读取方式为主,同时辅以 pdfplumber 作为文本提取的备用方案,兼顾了保真度与效率。

  • 核心设计:工具选型聚焦

  • 要点解析: 在创建 PDF 时,明确将 reportlab 指定为“首选核心工具”,其他库(如 pypdfpyMuPDF)则作为可选补充。这避免了 AI 在多个功能重叠的库之间摇摆不定,提高了决策效率。

  • 核心设计:负面清单式质检

  • 要点解析: 质量标准部分,集中罗列了常见的渲染错误,如黑块、文本截断、乱码、表格错乱等,形成了一个清晰的“负面清单”,让 AI 可以像 Code Review 一样逐项排查。

  • 核心设计:强约束的交付标准

  • 要点解析: 在最终检查环节,使用“零视觉缺陷方可交付”这样的强硬措辞,将验收标准提升为不可逾越的红线。

设计洞察

pdfs Skill 的精髓在于“简化决策”“明确底线”。 通过确立唯一的首选工具,它极大地降低了 AI 在技术选型上的认知负荷。而在质量控制上,它没有描述“好的 PDF 应该是什么样”,而是清晰地定义了“哪些问题是绝对不能出现的”。这种“负面清单”的方法,比宽泛的正面描述更具可操作性和可检验性,确保了交付质量的下限。

3. spreadsheets Skill

电子表格任务的复杂度远超普通人的想象,它融合了数据处理、公式计算、格式化排版甚至数据可视化。spreadsheets Skill 是这三个 Skill 中最复杂、最精巧的一个,堪称典范。

  • 核心设计:场景前置

  • 要点解析: 在开头就明确定义了适用场景(创建、编辑、分析、可视化),先回答“什么时候用”,再展开说“怎么用”。

  • 核心设计:分层方法论

  • 要点解析: 将指导原则(Guidelines)分为工具选择、结果校验、文件路径三个层次,层层递进,结构清晰。

  • 核心设计:规则的显式化与模块化

  • 要点解析: 将公式要求 (Formula requirements)、引用规范 (Citation) 和格式化要求 (Formatting) 等核心规则从操作流程中抽离,并各自独立成章。特别是公式部分,又细分为五个子模块,如“禁用动态数组”、“错误防护”等。

  • 核心设计:场景化策略

  • 要点解析: 针对“从零创建”和“修改已有”两种不同场景,给出了差异化的格式化策略。更进一步,为金融模型、投行等特定行业追加了专用的色彩和布局规范。

  • 核心设计:大规模脚本化

  • 要点解析: 提供了海量的 Python 脚本 (examples/),覆盖了从创建、读写到设置样式、生成图表等几乎所有常见操作。这些脚本既是工具,也是可以直接学习的“活文档”。

设计洞察

spreadsheets Skill 的设计哲学是“规则的显式化”“知识的结构化”。 它没有将最佳实践隐藏在繁琐的步骤描述中,而是将它们提炼为一条条明确的、可独立查阅的规则。无论是“公式必须无魔法数字”,还是“负数要用红色括号”,都成为了 AI 必须遵守的“法律”。 更妙的是,它展示了一种“基础通用规则 + 行业特化规则”的层次化设计思想。这种结构具有极强的扩展性,未来可以轻松地叠加更多行业或场景的特定规范,而不会让整个 Skill 变得混乱。海量的脚本示例,更是将这种知识体系彻底“固化”了下来。

如何写好一个 Skill?从 OAI 的实践中我们可以学到什么

通过对上述三个 Skill 的深度剖析,我们不难发现,编写一个优秀的 Skill 就像是为 AI 设计一套精良的“作战装备”。它不仅要威力强大,还要易于理解、稳定可靠、且易于扩展。 结合 OpenAI 的实践,我们可以总结出以下几条核心原则:

1. 元信息 YAML Frontmatter:清晰定义的身份卡

尽管在这次我们拿到的 Skill 中,Frontmatter 部分是缺失的,但根据 skill-creator 的规范,一个完整的 Skill 应当包含清晰的元信息。这部分就像是 Skill 的“身份证”,告诉 AI 它的核心能力、使用场景和约束条件。 一个好的 Frontmatter 应该做到:

  • 目标明确:用一句话概括这个 Skill 是用来做什么的。例如:“一个用于创建、编辑和分析专业级财务报告电子表格的 Skill。”
  • 边界清晰:明确指出适用和不适用的场景。例如,spreadsheets Skill 就明确指出不支持 FILTERXLOOKUP 等动态数组函数。
  • 输入输出可预期:定义清楚它需要什么作为输入(如文件路径、数据参数),以及它会产出什么作为结果(如一个新的文件、一张图表)。

实践建议

把 Frontmatter 当作写 API 文档来对待。你的用户是另一个 AI,它需要通过这份“文档”快速理解你的“API”是做什么的,以及如何正确调用它。

2. 方法论 SKILL.md:从道到术的优雅降解

SKILL.md 是 Skill 的灵魂,它承载了完成任务的核心方法论。OAI 的实践向我们展示了一种非常优雅的结构设计模式:

a. 先给粗颗粒度的方法论

在深入细节之前,先用高度概括的语言描述完成任务的整体框架和核心思想。这就像是先给出一张地图的总览,让 AI 对整个旅程有一个宏观的认识。

  • 为什么重要? 这为 AI 的规划(Planning)阶段提供了关键的“锚点”。AI 可以基于这个宏观框架来组织自己的思考和行动步骤,而不是一开始就陷入细节的泥潭。
  • 好处是什么? 提高了任务执行的鲁棒性。即使在某个具体步骤上遇到困难,AI 也可以随时回溯到这个宏观框架,重新寻找路径,而不至于完全“迷路”。docs 和 pdfs Skill 中的“四段式工作流”就是绝佳的例子。

b. 复杂度分层与外部化

当任务复杂度提升时,好的设计是将不同的知识点进行分层和隔离。

  • 中等复杂度:分段叙述。将不同的主题(如公式、格式、引用)拆分成独立的段落或章节。spreadsheets Skill 对规则的模块化处理就是最好的示范。
  • 极高复杂度:引用外部化。如果某个步骤或知识点本身就极其复杂(例如,一份完整的 API 文档、详细的金融模型构建指南),就不应将其全部堆砌在 SKILL.md 中,而是应该将其存放在 reference/ 目录下,并在主文档中通过链接进行锚点引用。

实践建议

将 SKILL.md 想象成一本教科书的主目录和核心章节。它应该清晰地勾勒出知识的全貌,并引导读者(AI)在需要时去查阅更详细的附录(reference/)。这既保持了主干的清晰,又保证了细节的完备。

3. 脚本固化 Scripts/目录:将最佳实践代码化

当一个操作可以被清晰地定义、可以被反复使用、且对稳定性要求很高时,就应该毫不犹豫地将其固化为脚本。spreadsheets Skill 中的 examples/ 目录提供了大量的 Python 脚本,这带来了几个显而易见的好处:

  • 可靠性:脚本是经过测试和验证的,比模型即时生成的代码更不容易出错。
  • 效率:AI 无需从零开始编写代码,可以直接调用或借鉴,大大缩短了任务时间。
  • 最佳实践的“活文档”:这些脚本本身就是最佳实践的载体。AI 通过阅读这些代码,就能学会如何正确地使用相关工具库。

实践建议

在开发 Skill 的过程中,时刻保持对“可复用性”的敏感。当你发现自己在反复向 AI 解释同一个操作、或者反复修正同一类代码错误时,就是一个明确的信号:是时候将这个操作封装成一个脚本了。

在代码与提示词之间寻找平衡

回到我们最初的问题。总有人认为,Skill 只是一个被过度炒作(Hype)的概念,是提示词工程的又一次包装。但通过对 OpenAI 内部实践的观察,笔者认为并非如此。 Skill 代表了一种在大型语言模型时代,组织和分发“可执行知识”的全新范式。它巧妙地在提示词的灵活性与传统代码的确定性之间,找到了一个极具潜力的平衡点。 笔者认为,Skill 的真正价值体现在三个层面:

  1. 渐进式加载,有效缓解上下文过载:Skill 的设计天然支持“按需加载”。模型可以先只读取精简的元信息和方法论主干,仅在需要时才深入到具体的参考文件或脚本中。这极大地缓解了当前大模型最头疼的上下文窗口(Context Window)压力问题。
  2. 灵活性与确定性的融合:Skill 允许我们将任务中最具创造性和灵活性的部分(如整体规划、风格决策)保留为自然语言描述的提示词,同时将那些需要高精度和确定性的部分(如文件渲染、公式计算)固化为可靠的代码。这种“软硬结合”的方式,取长补短,让 AI 既能“思考”,又能“执行”。
  3. 惊人的分发优势:一个 Skill 本质上只是一个包含 .md 文件和脚本的 .zip 压缩包。这种极简的、与技术栈无关的分发方式,意味着巨大的潜力。相比于复杂的插件系统、专有的平台或笨重的框架,一个简单的压缩包 + 一套简明的配置规范,往往拥有更强的生命力和传播力。这在技术史上屡见不鲜,就像当年简单的 REST/JSON 如何在与复杂的 SOAP/XML 的竞争中最终胜出一样,更简单的东西,往往跑得更快、更远

Skill 的探索才刚刚开始,但它所揭示的关于“人如何赋予 AI 智慧”的思考,无疑为我们打开了一扇全新的大门。


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:漕河泾小黑屋 黑屋Ω号《🤔 ChatGPT 也在偷偷使用 Skill?》

网络安全文章

文章总结: 本文剖析OpenAI泄露的Skill设计,揭示其将LLM任务流程化、工具化的机制。通过分析文档、PDF和表格案例,总结出视觉闭环、规则显式化等经验。
评论:0   参与:  0