跳到正文
AWS Machine Learning Blog· Jed Lechner·· 5 小时前AI 评分49

AWS Quick 中技能与 Agent 的工作原理解析

How skills and agents work in AWS Quick

AI 导读

AWS Quick 是一项用自然语言完成自动化任务、数据分析、Web 应用构建和研究的 AI 服务。文章讲解了 Quick 中 Agent、技能与数据的协作方式:默认 Agent Quick 和可共享的自定义 Agent 通过 spaces、知识库、数据集、仪表板和 connectors(含云连接器与本地 MCP 服务器)接入数据与工具。

正文 · AI 翻译

如果你使用 AI 智能体,可能已经不止一次地解释过同一个任务。你也许描述过如何撰写每周状态更新、发布说明、管理项目或创建工单。这些都是可重复的任务,你可以通过智能体和技能使用 AWS Quick 将其编码化。AWS Quick 是一项由 AI 驱动的服务,用于自动化任务、分析数据、构建 Web 应用和开展研究。你可以用自然语言与它交互,Quick 使用 AI 智能体针对你连接的数据源和应用程序处理请求。

在这篇文章中,我们将介绍在 AWS Quick 中智能体、技能和数据是如何协同工作的,以及如何构建和分享适合你团队的技能。我们还将展示官方目录和自定义智能体如何帮助你使用这些技能。

理解基础概念

在本节中,我们将解释一些基础概念,帮助你理解 AWS Quick 与智能体、技能和数据之间的关系。

Hub-and-spoke diagram with the Quick agent at the center, connected to its instructions, skills, connectors, and data sources

图 1:Quick 智能体如何遵循指令、加载任务所需的技能、通过连接器执行操作,并基于你的数据来支撑其回答

智能体位于图 1 的中心。它遵循指令,加载任务所需的技能,通过连接器执行操作,并基于你的数据——空间、知识库、数据集和仪表板——来支撑其回答。

使用智能体

AWS Quick 中的智能体是一个可配置的 AI,拥有自己的指令、知识来源(空间)和连接器,用于回答问题并为你完成工作。你可以在聊天中使用智能体,也可以通过例程让它自主运行。智能体只能访问你所能访问的资源和服务,并且由你决定每个智能体被允许做什么。

Quick 是每个用户都可以使用的默认内置智能体。它没有固定的范围,因此在每次对话中,它都会使用你有权访问的任何资源,例如你的空间、知识库、仪表板、连接器和技能。你无需提前确定请求需要哪些数据或工具,因此大部分工作都可以直接从 Quick 开始。

自定义智能体是由你或团队成员为特定工作配置的智能体。例如一个人力资源(HR)入职助手,可以从 HR 团队的空间回答新员工的问题。你为它提供自己的指令,并将其限制在你的用例所需的空间、连接器和技能范围内。在测试并发布之后,你可以将它分享给 AWS Quick 账户内的其他用户和群组。有关构建此类智能体的演练,请参阅 Build AI-powered employee onboarding agents with AWS Quick。

使用数据

智能体基于你连接到 Quick 的数据来支撑其回答。空间是文档和 AWS Quick 资源的精选集合,智能体将其用作信息来源。你可以为自己、你的团队或组织中的其他群组创建空间。你可以将文件和文件夹上传到空间,也可以添加仪表板、知识库、操作连接器和数据集等资产。当你开始与 Quick 对话时,可以附加一个空间,以缩小 Quick 在该对话中使用的数据范围。当你将空间添加到智能体时,该空间就成为智能体配置的一部分,当请求需要时,智能体会从中获取信息。

知识库是来自数据源的文档或内容的有组织、已索引的集合,针对检索和问答进行了优化。Quick 从 Google Drive、Microsoft OneDrive、Confluence、Microsoft SharePoint、Amazon Simple Storage Service (Amazon S3)、网络爬虫或 Amazon Bedrock Managed Knowledge Bases 等来源同步知识库。Quick 会按照同步计划使它们保持最新。

数据集和仪表板来自 AWS Quick Sight,它是 Quick 中的商业智能功能,可通过 AWS Management Console 预置的账户使用。数据集是已准备就绪、可用于分析和仪表板的数据集合。仪表板是您与其他 Quick 用户共享的分析的发布版本。借助数据集,您可以在结构化数据(例如数据库表)之上构建语义丰富的元数据,从而能够用自然语言完成复杂的分析用例。

最后,连接器将 AWS Quick 连接到外部应用程序或原生工具,使智能体能够读取数据并代表您采取行动。云端连接器将 Quick 连接到 Microsoft Outlook、Slack、Jira、Asana 和 Salesforce 等服务,以及远程托管的 Model Context Protocol (MCP) 服务器。它们在您使用 Quick 的每台设备上都可用。本地连接器在您自己的计算机上运行,例如您自己托管的 MCP 服务器,因此其工具仅在该计算机开机并联网时可用。有关连接器类型的完整列表,请参阅 AWS Quick 用户指南中的 Connectors 和 Integration-specific guides。

这些功能协同工作,使您的数据、文档和应用程序可以通过自然语言访问,因此您可以在已连接的源中提问并采取行动。

使用技能

技能是一组可复用的指令,用于教会智能体如何执行特定任务。技能也是 Quick 中的智能体运作和完成工作的基础。与其他智能体一样,Quick 中的智能体在一个遵循推理与行动 (ReAct) 模式的执行环境(受管理的智能体循环)中运行。当您向 AWS Quick 提供提示词时,智能体会使用其可用的工具和指令来完成目标并向您提供响应。诸如 Strands Agents SDK 之类的智能体框架都围绕同样的模型驱动循环构建。

Quick 默认完成的许多工作来自系统技能。例如,您可以要求 Quick 生成 Word 文档、PowerPoint 演示文稿、Excel 电子表格或 PDF。系统技能随后可以使用代码以及该技能捆绑的脚本来创建或编辑文档。其他系统技能可以浏览网页、运行代码、执行深度研究、转录音频和视频以及生成图像。还有一些系统技能管理 Quick 本身,例如构建 AWS Quick Flows、安排例行任务、将工作交给 Kiro 等编程智能体、管理您的记忆和知识图谱,或跟踪您的待办事项。在 Quick 中,您可以开启或关闭系统技能,但不能编辑、复制、导出、发布、共享或删除它们。

Skill 之所以能完成多种类型的工作,得益于 AWS Quick 提供的能力和工具。例如,一个 skill 可以产出一份交付物,比如基于你的模板生成的每周状态更新。另一个 skill 可以自动化跨连接器的工作流,比如汇总本周的 Jira 更新并将摘要发布到 Slack。Skill 还可以运行 Python 脚本进行计算,并用 JavaScript 绘制结果图表。

什么是 skill?

Quick skill 遵循 Agent Skills 规范,该规范由 Anthropic 最初开发并作为开放标准发布。2026 年 4 月以 预览版发布、并于 2026 年 9 月正式全面可用的桌面版 AWS Quick 采用了这一规范。

Skill 是一个文件夹,其根目录包含一个 Markdown 文件 SKILL.md,以及其指令所需的任何可选脚本或其他参考文件。文件的 frontmatter(即两条 --- 行之间的属性)保存了名称、描述以及与你的 skill 相关的其他元数据。请看下面这个名为 release-notes-generator 的 skill 的精简示例。

---
name: release-notes-generator
description: "Generates human-readable release notes from merged pull requests, commits, or changelogs ... Use when asked to 'generate release notes', 'write changelog', ..."
---

描述和名称是触发 skill 的两个最重要因素。Quick 在将你的 skill 加载到智能体的提示词时采用渐进式披露(progressive disclosure)。智能体只读取每个 skill 的名称和描述,直到某个请求需要用到该 skill,才会加载其完整指令,如 智能体如何加载 skill 中所述。这意味着某些短语有助于触发该 skill,例如“为我生成 2.3 版本的发布说明”。该规范将 name 限制在 64 个字符以内,将 description 限制在 1,024 个字符以内,并建议 skill 内的指令控制在 5,000 tokens 以内。

Skill folder named release-notes-generator containing a SKILL.md file alongside optional scripts and references folders

图 2:release-notes-generator skill 文件夹,包含必需的 SKILL.md 文件以及可选的 scripts 和 references 文件夹

你可以通过聊天、通过文件(.md 或 .zip 文件),或通过根目录包含 SKILL.md 文件的文件夹来创建 skill。本文重点介绍聊天方式。首先,在聊天中向 Quick 描述你的任务。例如,你可以从这个模板开始(将 <> 括号之间的内容替换为你的需求):

Every <specify your cadence e.g. every day, on monday, or none at all>, I have to grab data from the following sources:
- <List your sources and how you want to query them>
...

And do <describe how you want to transform the data and the exact sequence of steps>. 

Once I am finished, I have to create a report <describe your report format or provide an example> and send to the following stakeholders <describe your recipients> using the following connector <describe your connector>.

Create a skill from this requirement, and help me come up with testing scenarios to test the skill. 

这就是开始构建你自己的 skill 所需的全部内容。或者,你也可以选取之前为完成某项任务而进行的多轮对话,并让 Quick 从中生成一个 skill。当你对最终结果满意后,即可发布并分享你的 skill:

  1. 选择 Customize(自定义),然后选择 Skills(Skill)。
  2. 在草稿中找到你的 skill,并打开其详细信息面板。
  3. 选择 Publish(发布)。
  4. 选择 Share(共享),然后选择要共享的个人或群组。

发布和共享是两个独立的步骤,因此仅发布不会让任何人访问到该 skill。你与其共享的人通过 Shared with me(与我共享)下的 Add to Quick(添加到 Quick)来添加该 skill,而且每当你再次发布时,他们的版本都会保持同步。有关当前步骤,请参阅 AWS Quick 用户指南中的 草稿版本与已发布版本 和 共享你的 skill。

用最佳实践改进你的 skill

通过简短描述或对话构建的 skill 对你个人来说可能运行得足够稳定,但在构建要与团队共享的生产级 skill 时,还需要考虑许多因素。Skill 就像代码一样,许多工程最佳实践可以帮助任何知识工作者构建它们。

  • “在我机器上能跑”是软件工程师中的一句常见口头禅。它描述的是这样一种软件:构建它的人能正常运行,但其他人安装或使用时就会出问题。构建技能时,你必须考虑你的环境。技能指令可以让智能体查询数据源或调用连接器和工具。软件工程师通常通过记录使用软件的前提条件来规避这一限制。例如,如果你单独分享一个技能,你可能需要创建一个 README,在技能中记录这些要求。如果你分享一个使用你技能的智能体,也要分享它连接的数据源,否则与你共享的人只能从他们本来就能访问的来源获取答案。
  • 为故障做好规划。智能体使用的连接数据源依赖第三方和第一方服务。工程师在编写代码时,需要了解软件某个部分发生故障时该怎么办。如果你将这些场景纳入技能指令,你的智能体就能根据具体指令进行调整。你不需要精通下游服务,因为智能体朝着目标工作,当某一步失败时可以重试或尝试其他方法。你确实需要列出当故障影响你的任务或业务流程时该怎么办。以下示例来自某个技能工作流,一旦失败可能会产生影响。
[Agent] Send the report to {{recipient}} over email.

如果发送邮件失败,智能体应该做什么?你可能希望添加针对该场景的处理指令。

[Agent] Send the report to {{recipient}} over email.
Validate: The report appears in your Sent folder.
If fails: Stop, and tell the user that the report wasn't sent and why, so they can send it themselves.

在没有人工参与的定时执行智能体时,处理故障场景就更加重要。

  • 测试每一次变更。软件工程师会编写多种形式的测试,例如单元测试和集成测试,来帮助他们测试软件。这些测试在每次变更时都会运行。对于技能来说,同样重要的是为各种场景生成自己的测试用例,并在进行更改时持续添加新测试。实现方式有多种,但最好在你期望下游用户使用的环境中进行测试。

构建生产级技能时还有更多方面需要考虑:

  • 为每次变更添加发布说明。
  • 将会发生变化的硬编码值(例如 /Users/me/notes 或 #my-team)从步骤中移除,并将它们声明为每个人各自提供的输入。
  • 用人类可读的日期记录技能的变更时间。
  • 记录每个参考文件的来源,这样当来源发生变化时,你也可以更新技能指令。
  • 存储一个校验和,即技能文件的指纹,用于显示某个副本与已检查版本的不同之处。
  • 在每次更改后检查结构,就像 linter 在任何人审查代码之前捕捉错误一样。
  • 以一致的方式构建技能,这样你的团队就能更快地贡献和审查变更。

对任何用户来说,需要考虑的东西都很多。这就是为什么 AWS Quick 官方目录提供了遵循这些最佳实践构建的预建资源,例如技能。

AWS Quick 官方目录

目录是一系列智能体资源的集合,您可以原样安装使用,也可以将其作为起点并根据自己的工作进行改造。目录声明其中的每个资源在发布前都经过质量和安全性等方面的测试与扫描。这些技能涵盖日常生产力,以及销售、营销、人力资源、法务、项目管理、客户成功和软件工程等团队的工作。它们还涵盖金融、医疗保健与生命科学、能源与公用事业、酒店业以及供应链与物流等行业。

目录包含 Skill Architect 技能,这是一个预构建的技能,可为您应用这些工程最佳实践,如 在 AWS Quick 中使用软件工程实践构建技能 所述。要安装它,请选择 Customize、Skills、Browse all,然后选择 Official。在搜索框中输入 skill architect,然后选择 Install。有关当前步骤,请参阅 在桌面的 AWS Quick 中安装技能。

将技能连接到您的智能体

当您创建智能体时,需要配置其名称、描述和指令,并选择它读取的空间、可以使用的连接器以及可以加载的技能。有关详细信息,请参阅 AWS Quick 用户指南中的 智能体配置。当智能体解决特定用例时,其工作效果最佳,例如回答新员工的问题或准备每周状态报告,并将其世界限定在该用例所需的空间、技能和连接器范围内。默认情况下,智能体可以使用您的所有技能,而当您添加特定技能时,智能体将仅限于使用这些技能。当您共享该智能体时,这会带来问题,因为它以使用者的访问权限运行。相同的请求可能为每个人访问不同的数据和技能,并且当它需要只有您才能访问的来源时,可能返回不完整的答案。

如果您想将它们(智能体、技能和空间)全部联系在一起,可以试用链接研讨会中的 个人智能体架构师模块。

结论

在这篇文章中,我们展示了智能体如何在 AWS Quick 中使用技能和您的数据,以及如何构建和共享适用于您团队的技能。我们还展示了官方目录和自定义智能体如何帮助您将这些技能投入使用。

要了解更多信息、查找活动或与 AWS Quick 分享您的成功经验,请访问 AWS Quick 社区。AWS Quick 社区提供学习资料、功能公告、活动以及其他用户的示例。您还可以在其问答论坛中提问。

要观看有关本文主题的录制会议,请观看 Encode Your Enterprise with Agents & Skills on AWS Quick。该会议涵盖技能的结构和加载方式、技能如何与智能体、空间和连接器协作,以及构建可供分享的技能的最佳实践。会议最后演示了官方目录和 Skill Architect 技能。

以下是由每天从事 AWS Quick 工作的专家设计的一些其他资源:


关于作者

来源: AWS Machine Learning Blog · aws.amazon.com