
亚马逊发布了 Strands Agents,这是一个开源 SDK,通过模型驱动的方法简化了 AI Agent 的开发过程。该框架使开发者能够通过定义提示和工具列表,用最少的代码构建 Agent。
该项目得到了一些主要技术和咨询公司的支持,亚马逊指出,“包括埃森哲、Anthropic、Langfuse、mem0.ai、Meta、普华永道、Ragas.io 和 Tavily 在内的几家公司加入了我们,提供支持和贡献。”Strands 从简单的 Agent 用例扩展到复杂场景,从本地开发扩展到生产部署,为开发者提供了从原型到生产就绪 AI Agent 的简化路径。
该框架的基础定义了 Agent 的三个核心组件:“模型、工具和提示。”这些元素在亚马逊所说的“Agent 循环”中协同工作,“Agent 使用这三个组件完成任务,通常是自主的。”在操作过程中,“Strands 使用提示和 Agent 上下文,以及对 Agent 工具的描述来调用 LLM。”系统利用当前 LLM 的能力,显示了“强大的 LLM 已经变得多么强大,以及它们如何能够本地进行推理、规划和选择工具。”

来源:Strands Agents
执行流程遵循一个结构化的模式,其中“LLM 可以选择用自然语言回应 Agent 的最终用户,规划一系列步骤,反思 Agent 之前的步骤,和/或选择一个或多个工具来使用。”Strands 通过处理工具执行过程来管理技术复杂性:“当 LLM 选择一个工具时,Strands 负责执行该工具并将结果提供回 LLM。”这个过程会迭代进行,直到“LLM 完成任务,Strands 返回 Agent 的最终结果。”
Strands Agents 定位为“轻量级且生产就绪,支持许多模型提供商和部署目标。”SDK 在部署场景中提供灵活性,支持“会话、非会话、流式和非流式”Agent 类型,以适应不同的工作负载。
关键能力包括“全面的可观察性、追踪和大规模运行 Agent 的部署选项”,以及允许开发者快速开始的内置工具。该框架支持高级实现,包括“多 Agent 和自主 Agent”,使技术如“Agent 团队和随时间自我改进的 Agent”成为可能。
亚马逊强调,Strands 将“安全和安全作为优先事项”,帮助组织负责任地运行 Agent,同时保护数据。SDK 的架构提供了一个简单、可定制的 Agent 循环,同时保持模型、提供商和部署不可知,以支持来自不同提供商的各种模型。
SDK 包括两个额外的开发包:strands-agents-tools和strands-agents-builder,都可以在 GitHub 上找到。工具包提供了扩展 Agent 能力的示例实现,而构建包包括一个专门为帮助开发者创建自己的 StrandsAgent 和工具而设计的 Agent。这些组件支持自定义实现,并帮助开发者扩展框架的功能。
Strands Agents 超越了亚马逊 Bedrock,支持多个模型提供商。开发者可以通过直接 API 集成访问 Anthropic 的 Claude 模型,而LiteLLM为 OpenAI、Mistral 和其他提供商提供了统一的接口。该框架通过Llama API支持 Meta 的 Llama 模型,并允许通过 Ollama 执行本地模型,以满足隐私或离线需求。OpenAI 模型(包括与 OpenAI 兼容的替代品)可以通过直接 API 连接访问。SDK 还允许开发者为特殊实现需求构建自定义提供商。
有兴趣使用 Strands 构建 AI Agent 的开发者可以在 GitHub 上访问开源 SDK,在那里他们可以找到文档、示例,并为围绕该项目不断增长的社区做出贡献。
原文链接:Amazon Open Sources Strands Agents SDK for Building AI Agents
评论