📢 转载信息
原文作者:Jagdish Komakula, Aditya Ambati, T.V.R.L.Phani Kumar Dadi, and Anand Krishna Varanasi
随着云基础设施日益复杂,对直观且高效的管理界面需求从未如此之高。传统的命令行界面(CLI)和 Web 控制台虽然功能强大,但可能会阻碍快速决策和运营效率。如果我们能与您的 AWS 基础设施对话并获得即时、智能的响应会怎样?
在本文中,我们将探讨如何利用 Amazon Nova Sonic 进行语音处理和 Strands Agents 进行多智能体编排,来构建一个复杂的语音驱动 AWS 操作助手。该解决方案展示了自然语言语音交互如何改变云操作,使 AWS 服务更易于访问,并提高运营效率。
我们演示的多智能体架构超越了基本的 AWS 操作,支持各种用例,包括客户服务自动化、物联网 (IoT) 设备管理、金融数据分析和企业工作流编排。这种基础模式可以适应任何需要智能任务路由和自然语言交互的领域。
架构深入解析
本节将探讨支持我们语音驱动 AWS 助手的技术架构。下图展示了 Amazon Nova Sonic 如何与 Strands Agents 集成,以创建一个无缝的多智能体系统,实时处理语音命令并执行 AWS 操作。

核心组件
多智能体架构由几个专业组件组成,它们协同工作以处理语音命令和执行 AWS 操作:
- Supervisor Agent(主管智能体):作为中央协调器,根据上下文和意图分析传入的语音查询,并将它们路由到适当的专业智能体。
- Specialized Agents(专业智能体):
- EC2 Agent:处理实例管理、状态监控和计算操作。
- SSM Agent:管理系统管理器操作、命令执行和补丁管理。
- Backup Agent:监督 AWS Backup 配置、作业监控和恢复操作。
- Voice Integration Layer(语音集成层):使用 Amazon Nova Sonic 进行双向语音处理,将语音转换为文本进行处理,并将文本转换回语音以供响应。
解决方案概述
Strands Agents Nova 语音助手通过对话式人工智能(AI)展示了一种 AWS 基础设施管理的新范式。用户无需导航复杂的 Web 控制台或记忆 CLI 命令,只需说出他们的意图即可获得即时响应。该解决方案弥合了自然人类交流与技术 AWS 操作之间的差距,使技术和非技术团队成员都能轻松进行云管理。
技术栈
该解决方案使用现代化的云原生技术来提供强大且可扩展的语音接口:
- 后端:Python 3.12+ 配合 Strands Agents 框架用于智能体编排。
- 前端:React 配合 AWS Cloudscape Design System 以实现一致的 AWS UI/UX。
- AI 模型:Amazon Bedrock 和 Claude 3 Haiku 用于自然语言理解和生成。
- 语音处理:Amazon Nova Sonic 用于高质量的语音合成和识别。
- 通信:WebSocket 服务器用于实时双向通信。
主要特性和功能
我们的语音驱动助手提供了一些高级功能,使 AWS 操作更直观、更高效。该系统能够理解自然语音查询,并将其转换为适当的 AWS API 调用。例如:
- “显示 us-east-1 中所有正在运行的 EC2 实例”
- “使用 SSM 在我的开发实例上安装 Amazon CloudWatch 代理”
- “检查昨晚备份作业的状态”
响应经过专门优化,适用于语音交付,摘要限制在 800 个字符以内,清晰地传递结构化信息,并使用听起来自然的对话措辞(避免技术术语并使用适合语音合成的完整句子)。
实施概述
开始使用语音驱动的 AWS 助手涉及三个主要步骤:
环境设置
- 配置具有 Bedrock、Nova Sonic 和目标 AWS 服务访问权限的 AWS 凭证。
- 设置 Python 3.12+ 后端环境和 React 前端。
- 确保拥有适当的 AWS 身份和访问管理 (IAM) 权限以进行多智能体操作。
启动应用程序
- 启动 Python WebSocket 服务器用于语音处理。
- 使用 AWS Cloudscape 组件启动 React 前端。
- 配置语音设置和 WebSocket 连接。
开始语音交互
- 授予浏览器对麦克风的权限以进行语音输入。
- 使用“列出我的 EC2 实例”或“检查备份状态”等示例命令进行测试。
- 通过 Amazon Nova Sonic 体验实时语音响应。
准备好构建您自己的系统了吗?完整的部署说明、代码示例和故障排除指南可在 GitHub 存储库中找到。
通过音频测试的示例提示
使用以下示例命令测试您的语音助手:
EC2 实例管理:
- “列出标签键为‘env’的我的开发 EC2 实例”
- “这些实例的状态如何?”
- “启动这些实例”
- “这些实例具有 SSM 权限吗?”
备份管理:
- “确保这些实例每天都得到备份”
SSM 管理:
- “使用 SSM 在这些实例上安装 CloudWatch 代理”
- “使用 SSM 扫描这些实例的补丁”
演示视频
下面的视频展示了语音助手在操作中的实际效果,显示了如何通过实时语音交互、智能体协调和 AWS API 响应来处理和执行针对 AWS 服务的自然语言命令。
实施示例
以下代码示例演示了实现语音驱动 AWS 助手的关键集成模式和最佳实践。这些示例展示了如何集成 Amazon Nova Sonic 进行语音处理以及如何配置主管智能体以进行智能任务路由。
AWS Strands Agents 设置
该实现使用带有专业智能体的多智能体编排器模式:
from strands import Agent
from config.conversation_config import ConversationConfig
from config.config import create_bedrock_model class SupervisorAgent(Agent):
def __init__(self, specialized_agents, config=None):
bedrock_model = create_bedrock_model(config)
conversation_manager = ConversationConfig.create_conversation_manager("supervisor")
super().__init__(
model=bedrock_model,
system_prompt=self._get_routing_instructions(),
tools=[], # No tools for pure router
conversation_manager=conversation_manager,
)
self.specialized_agents = specialized_agents
Nova Sonic 集成
该实现使用带有会话管理的 WebSocket 服务器进行实时语音处理:
class S2sSessionManager:
def __init__(self, model_id='amazon.nova-sonic-v1:0', region='us-east-1', config=None):
self.model_id = model_id
self.region = region
self.audio_input_queue = asyncio.Queue()
self.output_queue = asyncio.Queue()
self.supervisor_agent = SupervisorAgentIntegration(config)
async def processToolUse(self, toolName, toolUseContent):
if toolName == "supervisoragent":
result = await self.supervisor_agent.query(content)
if len(result) > 800:
result = result[:800] + "... (truncated for voice)"
return {"result": result}
安全最佳实践
此解决方案专为开发和测试目的而设计。在部署到生产环境之前,请实施适当的安全控制,包括:
- 身份验证和授权机制
- 网络安全控制和访问限制
- 用于审计合规性的监控和日志记录
- 成本控制和使用情况监控
注意:在配置 IAM 权限时,请始终遵循 AWS 安全最佳实践和最小权限原则。
生产环境考量
虽然此解决方案使用以开发为重点的部署方法演示了 Strands Agents 的功能,但计划进行生产部署的组织应考虑 Amazon Bedrock AgentCore Runtime 用于企业级的托管和管理。 Amazon Bedrock AgentCore 生产部署优势:
- 无服务器运行时:专为部署和扩展动态 AI 智能体而构建,无需管理基础设施。
- 会话隔离:每个用户会话都具有专用的 microVM,实现完整的会话隔离,这对于执行特权操作的智能体至关重要。
- 自动扩展:在几秒钟内扩展到数千个智能体会话,并按使用量付费。
- 企业安全:内置安全控制,与身份提供商(Amazon Cognito、Microsoft Entra ID、Okta)无缝集成。
- 可观察性:通过 Cloudwatch 集成实现内置的分布式跟踪、指标和调试功能。
- 会话持久性:高度可靠,支持长期智能体交互的会话持久性。
对于准备超越开发和测试的组织,Amazon Bedrock AgentCore Runtime 提供了在企业规模上部署语音驱动 AWS 助手所需的生产级基础。
与额外 AWS 服务的集成
可以扩展系统以支持额外的 AWS 服务:
- AWS Lambda 函数:通过语音命令执行无服务器函数。
- CloudWatch:通过自然语言查询指标和日志。
- Amazon 关系数据库服务 (RDS):数据库管理和监控操作。
结论
Strands Agents Nova 语音助手展示了将语音接口与跨域智能智能体编排相结合的强大潜力。通过利用 Amazon Nova Sonic 进行语音处理和 Strands Agents 进行多智能体协调,组织可以创建更直观、更高效的方式来与复杂的系统和工作流进行交互。
这种基础架构远远超出了云操作范围,能够为客户服务自动化、财务分析、物联网设备管理、医疗工作流程、供应链优化和无数其他企业应用提供语音驱动的解决方案。自然语言处理、智能路由和专业领域知识的结合,创建了一个多功能的平台,用于改变用户与任何复杂系统的交互方式。模块化架构确保了可扩展性和可扩展性,允许组织根据其特定领域和用例定制解决方案。随着语音接口的不断发展和 AI 功能的进步,像这样的解决方案很可能会在所有行业管理复杂环境中变得越来越重要。
入门
准备好构建您自己的语音驱动 AWS 操作助手了吗?完整的源代码和文档可在 GitHub 存储库。 请遵循此实施指南开始操作,不要犹豫,根据您的具体用例定制解决方案。
如有问题、反馈或贡献,请访问项目存储库或通过 AWS 社区论坛联系我们。
作者简介:
Jagdish Komakula 是 AWS 专业服务部门的一位充满热情的资深交付顾问。在信息技术领域拥有二十多年的经验,他帮助众多企业客户成功度过了数字化转型和云采用历程。
Aditya Ambati 是一位经验丰富的 DevOps 工程师,在 IT 领域拥有 14 年以上的经验。他在解决问题、提高客户满意度和推动整体运营改进方面享有盛誉。
Anand Krishna Varanasi 是一位经验丰富的 AWS 构建者和架构师,他的职业生涯始于 17 年前。他通过前沿的云技术迁移策略(7 Rs)和现代化引导客户。他对技术在连接现在与我们未来所有可能性方面所扮演的角色充满热情。
D.T.V.R.L Phani Kumar 是一位富有远见的 DevOps 顾问,拥有 10 多年突破性的技术领导经验,专注于变革性的自动化策略。作为杰出的工程师,他擅长将 AI/ML 创新与 DevOps 实践相结合,持续交付重新定义卓越运营和客户体验的革命性解决方案。他的战略方法和技术精湛使他成为推动技术范式转变的思想领袖。
🚀 想要体验更好更全面的AI调用?
欢迎使用青云聚合API,约为官网价格的十分之一,支持300+全球最新模型,以及全球各种生图生视频模型,无需翻墙高速稳定,文档丰富,小白也可以简单操作。
评论区