内容概要
在本次演讲中,来自 Anthropic 的 Barry Zhang 和 Mahesh Murag 介绍了 Agent Skills(智能体技能),这是一种将关注点从构建复杂的独立智能体转移到创建可组合的、基于文件的技能的新范式。他们探讨了当前智能体的局限性、向“运行时环境 + 技能”架构的转变,以及日益增长的基础和企业特定技能生态系统。演讲最后展望了一个集体进化知识库的愿景,通过共享和分发技能来全面增强智能体的能力。
目录
-
简介
-
从智能体到技能
-
代码作为通用接口
-
什么是技能?
-
日益增长的技能生态系统
-
复杂性与编排
-
通用智能体架构
-
共享、分发与未来愿景
-
结语
简介
Barry Zhang: 早上好,再次感谢邀请。上次我们来这里时,还在试图搞清楚到底什么是智能体 (Agent)。如今,我们许多人每天都在使用智能体,但仍然能感觉到它们存在不足。依然有缺口存在,对吧?智能体拥有智力和能力,但在我们需要开展实际工作时,它们并不总是具备相应的专业知识。
我是 Barry,这是 Mahesh。我们创建了 Agent Skills。在这次演讲中,我们将向大家展示为什么我们停止构建智能体,转而开始构建技能。
从智能体到技能
自我们上次演讲以来,发生了很多变化。MCP (Model Context Protocol) 已经成为智能体连接的标准。我们的第一个编码智能体 Claude Code 向全世界发布了,而且我们的 Claude Agent SDK 现在提供了一个开箱即用的生产级智能体。我们拥有了一个更成熟的生态系统,并且正朝着一个新的智能体范式迈进。
这个范式就是模型与运行时环境 (Runtime Environment) 之间更紧密的耦合。简单来说,我们认为代码就是我们所需要的一切。我们过去认为不同领域的智能体看起来会截然不同。每一个都需要自己的工具和脚手架,这意味着我们要为每个用例、每个领域做一个单独的智能体。虽然针对每个领域的定制化仍然很重要,但底层的智能体实际上比我们想象的要更加通用。
我们意识到,代码不仅仅是一种应用场景,更是通往数字世界的通用接口。
代码作为通用接口
在构建了 Claude Code 之后,我们意识到 Claude Code 实际上是一个通用型智能体。想象一下生成财务报告的场景:模型可以调用 API 来拉取数据并进行研究,可以在文件系统中组织数据,可以用 Python 分析数据,然后通过代码将洞察合成旧的文件格式。核心的脚手架突然变得非常轻量,只需要 Bash 和文件系统即可,这非常棒且极具可扩展性。
但我们很快遇到了一个不同的问题,那就是领域专业知识。你想让谁来帮你报税?是智商 300 的数学天才 Mahesh,还是经验丰富的税务专家 Barry?对吧?我每次都会选 Barry。我不想让 Mahesh 从第一性原理去推导 2025 年的税法。我需要的是领域专家提供一致的执行力。
今天的智能体很像 Mahesh——它们才华横溢,但缺乏专业知识。当你真正投入精力并给予适当指导时,它们能做出惊人的事情,但它们往往在一开始就缺少重要的背景信息。它们不能很好地吸收你的专业知识,也不会随着时间推移而学习。这就是我们创建 Agent Skills 的原因。
什么是技能?
技能是打包了可组合过程性知识 (Procedural Knowledge) 的文件集合。换句话说,它们就是文件夹。这种简单性是刻意的。我们希望任何拥有电脑的人或智能体都能创建和使用它们。这些技能还可以与你现有的工具配合使用:你可以在 Git 中进行版本控制,可以将它们扔进 Google Drive,也可以打包分享给团队。
几十年来,我们一直使用文件作为一种原语,而且用得很好,为什么要改变呢?正因如此,技能中可以包含大量的脚本作为工具。传统的工具存在很明显的问题:有些工具的说明写得很差且模棱两可,当模型遇到困难时,它无法修改工具本身。所以它只能陷入冷启动问题的困境,而且这些工具总是占据着上下文窗口 (Context Window)。
代码解决了一些问题。它是自文档化的,可修改的,并且可以在真正被需要和使用之前一直停留在文件系统中。这是一个技能内部脚本的例子:我们发现 Claude 反复编写相同的 Python 脚本来调整幻灯片样式,所以我们就让 Claude 把这个脚本保存在技能中,作为留给未来自己的工具。现在我们只需运行该脚本即可,这让一切变得更加一致、更加高效。
至此,技能可以包含大量信息,而我们希望保护上下文窗口,以便能够容纳数百个技能并使它们真正可组合。这就是为什么技能是在运行时渐进式披露的。只有元数据会展示给模型,仅用于表明它拥有该技能。当智能体需要使用某个技能时,它可以读取包含核心指令和目录结构的 skill.md。其他所有内容都只是为了便于访问而组织的。
所以这就是技能的全部:它们是包含脚本作为工具的有组织的文件夹。
日益增长的技能生态系统
Mahesh Murag: 自从我们五周前发布以来,这种非常简单的设计已经转化为了一个快速增长的生态系统,包含数千种技能。我们看到这些技能主要分为几类:基础技能、由生态系统合作伙伴构建的第三方技能,以及在企业和团队内部构建的技能。
首先,基础技能赋予智能体以前不具备的新的通用能力或特定领域能力。我们在发布时自己构建了文档技能,赋予 Claude 创建和编辑专业质量 Office 文档的能力。我们也常常很高兴看到像 Cadence 这样的人构建科学研究技能,赋予 Claude 诸如 EHR 数据分析和使用常见 Python 生物信息学库等新能力,使其表现得比以前更好。
我们也看到生态系统中的合作伙伴构建技能,帮助 Claude 更好地使用他们自己的软件和产品。Browserbase 就是一个很好的例子。他们为自己的开源浏览器自动化工具 Stagehand 构建了一个技能。现在,配备了这个技能和 Stagehand 的 Claude 可以更有效地浏览网页和使用浏览器来完成工作。Notion 发布了一系列技能,帮助 Claude 更好地理解你的 Notion 工作区,并对整个工作区进行深入研究。
我认为我看到最令人兴奋和最具吸引力的地方是在大型企业内部。这些是为组织构建的公司和团队特定技能。我们要谈论的是财富 100 强企业,他们正在使用技能来教智能体学习组织的最佳实践,以及他们使用那些定制内部软件的独特方式。
我们也在与大型开发者生产力团队进行交流。这些团队服务于组织内的数千甚至数万名开发者,他们利用技能来部署像 Claude Code 这样的智能体,并教它们关于代码风格的最佳实践以及希望开发者在内部工作的其他方式。所以,所有这些不同类型的技能都是由组织内部或世界上的不同人创建和消费的,但它们的共同点是:任何人都可以创建它们,并且它们赋予了智能体以前没有的新能力。
复杂性与编排
随着这个生态系统的发展,我们开始观察到一些有趣的趋势。首先,技能开始变得更加复杂。目前最基础的技能仍然可以是一个带有提示词和基本指令的 skill.md Markdown 文件。但我们开始看到一些技能打包了软件可执行文件、二进制文件、文件、代码脚本、资产等等。今天构建的许多技能可能只需要几分钟或几小时就能完成并放入智能体中。但我们认为,就像我们今天使用的许多软件一样,这些技能可能日益需要数周或数月的时间来构建和维护。
我们还看到,这个技能生态系统正在补充今年建立起来的现有 MCP 服务器生态系统。开发者正在使用和构建技能来编排多个 MCP 工具的工作流,将它们缝合在一起,以利用外部数据和连接性做更复杂的事情。在这些案例中,MCP 提供与外部世界的连接,而技能提供专业知识。
最后,就我个人而言最令人兴奋的是,我们看到非技术人员也在构建技能。这些人来自财务、招聘、会计、法务等职能部门。我认为这是对我们要早期想法的初步验证:技能可以帮助不做编码工作的人扩展这些通用智能体,使这些智能体在人们的日常工作中变得更容易获取。
通用智能体架构
把这些结合起来,让我们谈谈它们如何融入这个正在形成的通用智能体架构。首先,我们认为这个架构正在向几点收敛。首先是一个智能体循环 (Agent Loop),它帮助管理模型的内部上下文,并管理输入输出的 Token。这与一个为智能体提供文件系统以及读写代码能力的运行时环境相结合。
正如我们许多人今年所做的那样,这个智能体可以连接到 MCP 服务器。这些是来自外部世界的工具和数据,使智能体更相关、更有效。现在,我们可以给同一个智能体一个包含数百或数千个技能的库,它可以决定只在运行时、在决定处理特定任务时才将这些技能拉入上下文。
今天,赋予智能体在新领域的新能力可能只涉及为它配备合适的 MCP 服务器集和合适的技能库。这种“智能体 + MCP 服务器 + 技能集”的新兴模式已经在帮助 Anthropic 将 Claude 部署到新的垂直领域。就在我们五周前发布技能之后,我们立即在金融服务和生命科学领域推出了新产品。每一个产品都配备了一套 MCP 服务器和一套技能,立即使 Claude 对这些领域的专业人士更加有效。
我们还开始思考关于技能未来如何演变的其他开放性问题和重点领域。随着它们开始变得更加复杂,我们需要通过像对待软件一样对待技能来真正支持开发者、企业和其他技能构建者。这意味着探索测试和评估,开发更好的工具以确保智能体在正确的时间为正确的任务加载和触发技能,以及开发工具来帮助衡量配备技能的智能体的输出质量,以确保其符合预期。
我们也想专注于版本控制。随着技能的演变和由此产生的智能体行为的演变,我们希望这能被清晰地追踪,并拥有清晰的时间谱系。最后,我们还想探索可以显式依赖和引用其他技能、MCP 服务器以及智能体环境中依赖项和包的技能。我们认为这将使智能体在不同的运行时环境中更加可预测,多个技能的可组合性将帮助像 Claude 这样的智能体引发出更复杂、更相关的行为。总的来说,这一系列举措应该有望使技能更容易构建,也更容易集成到智能体产品中,即使是 Claude 以外的产品。
共享、分发与未来愿景
最后,我们认为技能价值的很大一部分将来自共享和分发。Barry 和我思考了很多关于大规模部署这些智能体的公司的未来,最令我们兴奋的愿景是一个由组织内部人员和智能体共同策划的、集体的、不断进化的能力知识库。
我们认为技能是迈向这一愿景的一大步。它们为你的智能体做有用的事情提供了过程性知识,当你与智能体互动并给予反馈和更多机构知识时,它开始变得更好。你团队和组织内的所有智能体也会随之变得更好。当有人加入你的团队并第一次开始使用 Claude 时,它已经知道你的团队关心什么,知道你的日常工作,知道如何针对你正在做的工作发挥最大效效。
随着这种增长和生态系统的进一步发展,这种复合价值将不仅仅局限于你的组织内部,还会扩展到更广泛的社区。就像世界上其他人构建了一个 MCP 服务器能让你的智能体更有用一样,社区中其他人构建的技能也将帮助你自己的智能体变得更强大、更可靠、更有用。
当 Claude 开始创建这些技能时,这种进化知识库的愿景变得更加强大。我们专门将技能设计为持续学习的具体步骤。当你第一次开始使用 Claude 时,这种标准化格式提供了一个非常重要的保证:Claude 写下的任何东西都可以被未来的自己高效地使用。这使得学习实际上是可转移的。当你建立起上下文时,技能使“记忆”的概念变得更加有形。
它们不捕捉所有东西,不捕捉每种类型的信息,只捕捉 Claude 可以在特定任务上使用的过程性知识。当你与 Claude 一起工作了一段时间后,技能的灵活性就显得更加重要。Claude 可以即时获得新能力,根据需要进化它们,然后丢弃那些过时的能力。这就是我们一直所知的:上下文学习 (In-context Learning) 的力量使得这种方式对于每天都在变化的信息来说具有很高的成本效益。我们的目标是,与你工作第 30 天的 Claude 要比第 1 天的 Claude 强得多。Claude 今天就可以使用我们的 Skill Creator(技能创建器)技能为你创建技能,我们将继续朝这个方向推进。
结语
最后,我们要将智能体技术栈与我们在计算领域已经看到的情况进行比较。做一个粗略的类比,模型就像处理器——两者都需要巨大的投资并包含巨大的潜力,但单靠它们自己用处有限。然后我们开始构建操作系统。操作系统通过编排处理器周围的进程、资源和数据,使处理器更有价值。
在 AI 领域,我们相信智能体运行时正开始扮演这一角色。我们都在试图构建最干净、最高效、最可扩展的抽象层,以便让正确的 Token 进出模型。但是,一旦我们有了平台,真正的价值来自应用程序。只有少数几家公司构建处理器和操作系统,但像我们这样数以百万计的开发者构建了编码了领域专业知识和独特观点的软件。
我们希望技能可以帮助我们为大家打开这一层。这是我们发挥创造力,为自己、为彼此、为世界解决具体问题的地方,而且仅仅通过把东西放进文件夹就能实现。所以技能只是一个起点。
总结一下,我们认为目前正在向这种通用智能体的通用架构收敛。我们创造了技能,作为一种发布和分享新能力的新范式。所以我们认为,是时候停止重复构建智能体,转而开始构建技能了。如果你对此感到兴奋,欢迎加入我们,从今天开始构建一些技能。谢谢大家。
