AI语音解决方案正在通过实现客户与AI代理之间的自然对话来改变呼叫中心,缩短等待时间,大幅降低运营成本,同时不牺牲客户期望的类人交互体验。随着某中心Nova Sonic在某中心Bedrock的发布,现在可以构建通过语音自然交流的复杂对话AI代理,无需单独的语音识别和文本转语音组件。某中心Nova Sonic是某中心Bedrock中的语音到语音模型,支持实时、类人的语音对话。
虽然许多早期的某中心Nova Sonic实现侧重于本地开发,但本解决方案提供了完整的云端部署架构,可作为构建实际概念验证应用的基础。该资源可通过某中心云开发工具包(某中心CDK)部署,并为使用预配置基础设施组件构建更多某中心Nova用例提供基础,同时允许自定义架构以满足特定业务需求。
本文展示如何为名为AnyTelco的虚构公司创建AI驱动的呼叫中心代理。该代理名为Telly,可以处理客户关于套餐和服务的查询,同时使用通过模型上下文协议(MCP)框架实现的自定义工具访问实时客户数据。
解决方案概述
下图提供了可部署解决方案的概览:
解决方案由以下层组成:
前端层 - 系统前端层构建时考虑了可扩展性和性能:
- 某中心CloudFront分发充当Web应用的内容分发网络
- 某中心简单存储服务(某中心S3)托管静态资产
- UI处理音频流和用户交互
通信层 - 通信层促进无缝的实时交互:
- 网络负载均衡器管理WebSocket连接。WebSocket在用户浏览器和服务器之间实现双向交互式通信会话,这对实时音频流应用至关重要
- 某中心Cognito提供用户认证和JSON Web令牌(JWT)验证。某中心Cognito为Web和移动应用提供用户认证、授权和用户管理,无需构建和维护自己的身份系统
处理层 - 处理层构成系统的计算骨干:
- 某中心弹性容器服务(某中心ECS)运行容器化后端服务
- 某中心Fargate提供无服务器计算后端。编排由某中心ECS引擎提供
- Python后端处理音频流并管理某中心Nova Sonic交互
智能层 - 智能层使用AI和数据技术为核心功能提供动力:
- 某中心Bedrock中的某中心Nova Sonic模型处理语音处理
- 某中心DynamoDB存储客户信息
- 某中心Bedrock知识库将基础模型(FMs)与组织的数据源连接,允许AI应用引用特定于业务的准确、最新信息
以下序列图突出了用户发起对话时的流程。用户只需登录一次,但认证步骤3和4在用户每次开始新会话时都会发生。步骤6-12中的对话循环在整个对话交互过程中重复。步骤a-c仅在某中心Nova Sonic代理决定使用工具时发生。在没有工具使用的场景中,流程直接从步骤9转到步骤10。
先决条件
开始之前,请验证您具备以下条件:
- Python 3.12
- Node.js v20
- npm v10.8
- 某中心账户
- 设置好的某中心CDK(有关先决条件和安装说明,请参阅某中心CDK入门)
- 在某中心Bedrock中启用了某中心Nova Sonic(更多信息,请参阅添加或删除对某中心Bedrock基础模型的访问)
- Chrome或Safari浏览器环境(撰写本文时不支持Firefox)
- 可用的麦克风和扬声器
部署解决方案
您可以在GitHub存储库中找到解决方案和完整的部署说明。该解决方案使用某中心CDK自动化基础设施部署。使用以下代码终端命令在您的某中心命令行界面(某中心CLI)环境中开始:
|
|
部署创建两个某中心CloudFormation堆栈:
- 用于虚拟私有云(VPC)和网络组件的网络堆栈
- 用于应用资源的堆栈
第二个堆栈的输出为您提供CloudFront分发链接,该链接将带您到登录页面。
您可以使用以下某中心CLI命令创建某中心Cognito管理员用户:
|
|
前述命令使用以下参数:
- YOUR_USER_POOL_ID:您的某中心Cognito用户池ID
- USERNAME:所需的用户名
- USER_EMAIL:用户的电子邮件地址
- TEMPORARY_PASSWORD:用户的临时密码
- YOUR_AWS_REGION:您的某中心区域(例如,us-east-1)
使用来自CloudFront分发链接的临时密码登录,系统将要求您设置新密码。 您可以选择"开始会话"与您的助手开始对话。为您的用例尝试不同的提示和工具。
自定义应用
此解决方案的一个关键特性是其灵活性——您可以根据特定用例定制AI代理的能力。示例实现通过自定义工具和知识集成展示了这种可扩展性:
客户信息查找 - 使用电话号码作为键从DynamoDB检索客户档案数据 知识库搜索 - 查询某中心Bedrock知识库以获取公司信息、套餐详情和定价
这些特性展示了如何通过外部数据源和领域特定知识增强某中心Nova Sonic的功能。该架构设计用于在几个关键领域进行无缝自定义。
修改系统提示 解决方案包括一个UI,您可以在其中通过修改其系统提示来调整AI代理的行为。这使得能够快速迭代代理的个性、知识库和对话风格,而无需重新部署整个应用。
添加新工具 您还可以通过使用MCP框架实现其他工具来扩展AI代理的能力。该过程涉及:
- 实现工具逻辑,通常作为新的Python模块
- 使用@mcp_server.tool自定义装饰器向MCP服务器注册工具,并在/backend/tools/mcp_tool_registry.py中定义工具规范,包括其名称、描述和输入模式
例如,以下代码说明了如何添加知识库查找工具:
|
|
装饰器处理向MCP服务器的注册,函数体包含您的工具的实现逻辑。
扩展知识库 解决方案使用某中心Bedrock知识库为AI代理提供公司特定信息。您可以使用以下内容更新此知识库:
- 常见问题及其答案
- 产品目录和规格
- 公司政策和程序
清理
您可以使用以下命令删除堆栈:
|
|
结论
AI代理正在改变组织处理客户服务的方式,解决方案能够同时处理多个对话、提供全天候的一致服务、即时扩展同时保持质量并降低运营成本。本解决方案通过为某中心Nova Sonic在某中心上的应用提供可部署基础,使这些好处变得可访问。该解决方案展示了AI代理如何有效处理客户查询、访问实时数据并提供个性化服务——同时保持客户期望的自然对话流程。
通过将某中心Nova Sonic模型与强大的云架构、安全认证和灵活的工具集成相结合,组织可以快速从概念转向概念验证。此解决方案不仅帮助构建语音AI应用,还帮助公司在各个行业推动更好的客户满意度和生产力。
要了解更多,请参阅以下资源:
- 介绍某中心Nova Sonic:生成式AI应用的类人语音对话
- 使用某中心Nova Sonic语音到语音模型
- 某中心Nova Sonic研讨会