实验手册
一、前言
Strands Agent 是由亚马逊开源的一款 AI Agent 开发工具包(SDK),旨在通过模型驱动和极简的开发方式,帮助开发者用少量代码快速构建、运行和部署 AI Agent。

核心理念与工作方式
Strands Agent 的核心是“模型驱动”架构,与需要开发者定义复杂工作流程的传统框架不同,Strands 充分利用现代大语言模型(LLM)自身的规划、推理和工具调用能力。开发者只需专注于三件事:
- 模型(
Model):选择一个大语言模型作为Agent的大脑。 - 工具(
Tools):为Agent提供一系列可以使用的工具,如API调用、代码执行或信息检索。 - 提示(
Prompt):用自然语言描述Agent需要完成的任务目标和行为准则。

在这种模式下,Agent会运行一个“Agent循环”(agentic loop),不断与模型和工具交互,直到任务完成。模型会根据任务动态地规划步骤、决定调用哪个工具,而 Strands 框架则负责执行工具并将结果返回给模型,从而省去了复杂的编排逻辑,将开发周期从数月缩短到几天或几周。
二、环境准备与验证
点击 “开始实验” 按钮,即可扫码进入实验环境。测试账号有效期仅为一天,过期后系统将自动回收清理,请不要上传您的重要数据。
同时,点击 “立即注册” 按钮即可免费注册属于你的亚马逊云科技海外区账号,开启个性化的系统构建之旅,进一步探索更广泛、更深入的云服务领域并保留实验中构建的系统应用,尽情享受云上构建的无限可能!
如果您在自己的亚马逊云科技账户上进行实验,请务必在实验完成后根据清理资源板块部分的说明删除和关闭所有实验资源,以避免产生不必要的费用。

扫码登陆

填写邮箱
如果您之前没有填写过邮箱,则需要填写一下邮箱,并勾选隐私协议,点击前往实验,及可进入实验室。

地区确认
注意: Amazon 地区请选择弗吉尼亚北部(us-east-1),请检查确认所在地区是否为 us-east-1。

三、Strands Agent 基础入门
3.1、Strands Agent 简介
Strands Agent 是由 Amazon 开源的轻量级 Python SDK,是简单易用、代码优先的 AI Agent构建框架。它让开发者仅用几行代码,就能构建从简单对话助手到复杂自主工作流的完整 AI Agent系统。
与传统 AI 框架不同,Strands Agent 聚焦简化开发流程,开发者安装 SDK 并创建简单 Python 文件即可快速上手。其核心设计秉持 “轻量且灵活” 原则,提供简洁又高度可定制的Agent循环系统。
作为生产级解决方案,Strands Agent 内置完备可观测性、追踪功能与多元部署选项,保障Agent在大规模生产环境稳定运行。模型支持上,兼容 Amazon Bedrock、Claude 等多厂商主流 AI 模型,开发者可依需求与成本灵活选型。
框架还构建了强大内置工具生态,涵盖文件操作、系统执行、API 交互、数学运算等能力,支持多Agent协作与自主工作流。同时,全面适配对话/非对话、流式/非流式等各类交互模式,且始终将安全与数据保护置于首位。
目前项目处于公开预览阶段,依托活跃开源社区,为 AI Agent开发开辟了全新可能。
3.2、Strands Agent 框架安装及配置
- 首先,在
Amazon控制台主页,输入Cloudformation,右键在新标签页中打开。在打开的CloudFormation中,点击已创建的堆栈,选择“资源”中的NotebookInstance并右键访问物理ID链接。 -

-

-

- 在弹出的页面中,点击“打开 JupyterLab”,即可进入程序
Notebook代码环境。 -

- 点击左侧栏中的
01_introduction双击鼠标右键以打开Notebook,然后在Select Kernel中选择conda_python3。 -

-

- 接下来,您需要点击“运行程序”按钮,具体如图中红色箭头所示,以安装框架及其相关依赖项。
-

- 等待依赖安装完成,结果参考如下图所示。
-

- 4. 在依赖项安装完成后,您需要配置亚马逊云科技的访问凭证。请继续运行程序进行设置,具体步骤如下所示,则表示配置完成:
-

-

- 在完成亚马逊云科技凭证设置后,您可以创建您的第一个
Agent商。点击“运行程序”按钮,具体结果如下图所示: -

-

- 接下来请继续运行代码,以查看并分析
Agent的响应内容。 -

-

- 自定义
Agent:StrandsAgent的一个强大功能是支持通过系统提示(System Prompt)来自定义Agent的行为。系统提示用于定义Agent的角色、个性、行为准则以及执行任务时需要遵守的约束条件。在这里我们定义了三个Agent,分别为:technical expert、beginners、storyteller。依次执行Notebook的代码,现在让我们问每个Agent同样的问题,并比较他们的回答: -

-

-

- 执行结果参考如下:
-

- 多向对话:
Strands的链式Agent具备跨多个对话回合持续维护上下文的能力,使其在复杂任务中表现得更具连贯性和智能性。这种多轮对话能力对于需要连续推理、任务拆解或状态跟踪的场景尤为重要。请继续依次执行代码: -

- 执行结果参考如下:
-

- 在创建
Agent时,您可以配置几个参数来定制它们的行为。具体结果及操作如下: -

-

- 在某些场景中,您可能希望向
Agent提供除用户即时查询之外的额外上下文信息,以提升其响应的准确性与相关性。这些上下文可以包括历史数据、外部文档摘要、用户偏好设置,甚至是运行时生成的变量。依次参考以下操作执行代码: -

- 执行结果参考如下:
-

-
Strands Agent最强大的功能之一,就是它们具备调用工具(Tools)执行任务的能力。工具是Agent可访问的函数接口,通常用于:通过调用这些工具,
Agent不仅能够提供语言上的响应,还能够真正“动手”完成工作,实现从“对话智能”到“执行智能”的跨越。参考以下操作进行实现:- 执行特定操作(如计算、转换、文件处理等)
- 检索结构化或实时信息(如数据库查询、
API请求)

&spm=1001.2101.3001.5002&articleId=149843498&d=1&t=3&u=c2796b38cb9a47e985a5de5b32a418df)
555

被折叠的 条评论
为什么被折叠?



