人工智能(AI)正在改变快餐行业,尤其是在效率与顾客满意度交汇的免下车服务领域。传统系统在服务交付中造成了显著的障碍,包括人员限制、订单准确性问题以及不同门店间不一致的顾客体验。这些挑战,加上不断上升的劳动力成本和需求波动,促使行业寻求创新的解决方案。
本文将演示如何使用某中心的Nova Sonic和AWS服务来实现一个快餐店(QSR)免下车点餐解决方案。我们将逐步介绍如何构建一个结合语音AI与交互式菜单显示的智能系统,提供技术见解和实施指南,以帮助餐厅实现其免下车运营的现代化。
对于快餐店来说,高峰时段的风险尤其高,长时间的等待和顾客与员工之间的沟通不畅会严重影响业务表现。常见的痛点包括订单准确性问题、不同班次间的服务质量差异,以及处理客户需求突然激增的能力有限。现代消费者期望获得与数字点餐系统相同的无缝、高效服务,这为语音AI技术提供了前所未有的机会,以支持24/7全天候可用性和一致的服务质量。
Amazon Nova Sonic是Amazon Nova系列中的一个基础模型(FM),专门为语音应用程序而设计。通过某机构(如Amazon Bedrock),开发人员可以使用Nova Sonic来创建能够理解口语、处理复杂的对话交互并为实时客户互动生成适当响应的应用程序。这种创新的语音到语音模型通过以下方式应对传统语音应用的挑战:
- 准确识别不同口音的流式语音,对背景噪音具有鲁棒性
- 根据用户的语气和情感调整语音响应
- 具有低用户感知延迟的双向流式语音输入/输出
- 优雅的中断处理和对话中自然的轮流发言
- 行业领先的性价比
当与AWS服务器服务集成时,Nova Sonic可提供自然、类人的语音交互,有助于改善免下车体验。该架构创建了一个经济高效的系统,通过智能自动化同时提高了服务一致性和运营效率。
解决方案概述
我们的语音AI免下车解决方案创建了一个智能点餐系统,它结合了实时语音交互与健壮的后端基础设施,提供了自然的客户体验。该系统实时处理语音,理解各种口音、说话风格,并能处理免下车环境中常见的背景噪音。将语音命令与交互式菜单显示集成,增强了用户反馈,同时通过减少语言交互简化了点餐流程。
该系统构建在AWS服务器架构之上,集成了关键组件,包括用于基于角色的访问控制身份验证的某中心Cognito、用于数字菜单板的AWS Amplify、用于访问某中心DynamoDB表的某中心API Gateway、使用某中心Nova Canvas生成菜单图片的AWS Lambda函数,以及用于图像存储和交付的某中心S3和某中心CloudFront。
下面的架构图说明了这些服务如何相互连接,以实现顾客与数字菜单板之间的自然对话,并协调从免下车入口到订单完成的整个客户旅程。
(架构图未在文本中提供,通常此处会插入图表)
让我们检查每个组件如何协同工作,为这个智能点餐系统提供动力。
先决条件
要完成本文中的解决方案,必须具备以下条件:
- 一个AWS账户
- 在同一AWS区域中,对将部署此解决方案的某中心Amazon Bedrock中Amazon Nova Sonic和Amazon Nova Canvas模型的访问权限
- 从aws-samples GitHub存储库下载的随附AWS CloudFormation模板
使用AWS CloudFormation部署解决方案资源
在支持Amazon Bedrock且支持以下模型的AWS区域中部署CloudFormation模板:Amazon Nova Sonic和Amazon Nova Canvas。
此解决方案由两个协同工作的CloudFormation模板组成,以创建一个完整的餐厅免下车点餐系统。nova-sonic-infrastructure-drivethru.yaml模板建立了基础的AWS基础设施,包括Cognito用户身份验证、用于菜单图片的带CloudFront CDN的S3存储、用于菜单项和客户数据的DynamoDB表,以及具有适当CORS配置的API Gateway端点。nova-sonic-application-drivethru.yaml模板在此基础上进行扩展,部署了一个Lambda函数,用于为系统填充一个完整的嵌入式免下车菜单,包括汉堡、鸡翅、薯条、饮料、酱汁和套餐,同时使用某中心Nova Canvas AI模型自动为每个菜单项生成专业的食物摄影图像,并将其存储在S3存储桶中,通过CloudFront交付。
在部署第一个CloudFormation模板nova-sonic-infrastructure-drivethru.yaml期间,您需要指定以下参数:
- 堆栈名称
- 环境 – 部署环境:dev、staging 或 prod(默认为 dev)
- UserEmail – 用户账户的有效电子邮件地址(必需)
重要提示:在部署之前,您必须在某中心Bedrock控制台中启用对所选Amazon Nova Sonic模型和Amazon Nova Canvas模型的访问。
AWS资源使用会产生费用。部署完成后,将部署以下资源:
- 某中心Cognito资源:
- 用户池 – CognitoUserPool
- 应用程序客户端 – AppClient
- 身份池 – CognitoIdentityPool
- 组 – AppUserGroup
- 用户 – AppUser
- AWS身份和访问管理(IAM)资源:
- IAM角色:
- AuthenticatedRole
- DefaultAuthenticatedRole
- ApiGatewayDynamoDBRole
- LambdaExecutionRole
- S3BucketCleanupRole
- IAM角色:
- 某中心DynamoDB表:
- MenuTable – 存储菜单项、价格和自定义选项
- LoyaltyTable – 存储客户忠诚度信息和积分
- CartTable – 存储活动会话的购物车数据
- OrderTable – 存储已完成和待处理的订单
- ChatTable – 存储已完成的聊天详情
- 某中心S3、CloudFront和AWS WAF资源:
- MenuImagesBucket – 用于存储菜单项图像的S3存储桶
- MenuImageCloudFrontDistribution – 用于全球内容交付的CloudFront分发
- CloudFrontOriginAccessIdentity – CloudFront和S3之间的安全访问
- CloudFrontWebACL – 为CloudFront分发提供带安全规则的WAF保护
- 某中心API Gateway资源:
- REST API – 带有Cognito授权的app-api
- API资源和方法:
/menu(GET, OPTIONS)/loyalty(GET, OPTIONS)/cart(POST, DELETE, OPTIONS)/order(POST, OPTIONS)/chat(POST, OPTIONS)
- 部署到指定环境阶段的API
- AWS Lambda函数:
- S3BucketCleanupLambda – 在堆栈删除时清理S3存储桶
- CloudFormation自定义资源:
- S3BucketCleanup – 触发S3BucketCleanupLambda
部署CloudFormation模板后,从AWS CloudFormation控制台的输出选项卡复制以下内容,以便在配置前端应用程序时使用:
- cartApiUrl
- loyaltyApiUrl
- menuApiUrl
- orderApiUrl
- chatApiUrl
- UserPoolClientId
- UserPoolId
- IdentityPoolId
以下截图显示了输出选项卡的外观。
(截图未提供)
这些输出值对于配置您的前端应用程序(通过AWS Amplify部署)以连接后端服务至关重要。API URL将用于进行REST API调用,而Cognito ID将用于用户身份验证和授权。
在部署第二个CloudFormation模板nova-sonic-application-drivethru.yaml期间,您需要指定以下参数:
- 堆栈名称
- InfrastructureStackName – 此堆栈名称需与您之前使用
nova-sonic-infrastructure-drivethru.yaml部署的堆栈名称匹配
部署完成后,将部署以下资源:
- AWS Lambda函数:
- DriveThruMenuLambda – 填充菜单数据并生成AI图像
- CloudFormation自定义资源:
- DriveThruMenuPopulation – 触发DriveThruMenuLambda
一旦两个CloudFormation模板都成功部署,您将拥有一个功能齐全的餐厅免下车点餐系统,包含AI生成的菜单图像、完整的身份验证功能以及可供Amplify前端部署使用的API端点。
部署Amplify应用程序
您需要使用在GitHub上找到的前端代码手动部署Amplify应用程序。完成以下步骤:
- 从GitHub下载前端代码
NovaSonic-FrontEnd.zip。 - 使用
.zip文件在Amplify中手动部署应用程序。 - 返回Amplify页面,使用其自动生成的域名访问应用程序。
用户身份验证
该解决方案使用某中心Cognito用户池和身份池为餐厅的数字菜单板实施安全的、基于角色的访问控制。用户池通过AppUserGroup处理身份验证和组管理,身份池提供映射到特定IAM角色(包括AuthenticatedRole)的临时AWS凭证。该系统确保只有经过验证的数字菜单板用户才能访问应用程序并与菜单API、购物车管理、订单处理和忠诚度服务进行交互,同时提供对某中心Bedrock的安全访问。这为顾客和餐厅运营结合了强大的安全性与直观的点餐体验。
服务器数据管理
该解决方案使用某中心API Gateway实现服务器API架构,创建一个REST API(app-api),以促进前端界面和后台服务之间的通信。该API包括五个资源端点(/menu、/loyalty、/cart、/chat、/order),具有基于Cognito的身份验证和直接DynamoDB集成以进行数据操作。后端使用五个DynamoDB表:用于菜单项和价格的MenuTable,用于客户资料和忠诚度积分的LoyaltyTable,用于活动购物会话的CartTable,用于捕获聊天记录的ChatTable,以及用于订单跟踪和历史的OrderTable。这种架构提供了快速、一致的规模性能,全局二级索引支持通过客户ID和订单状态进行高效查询,以实现最佳的免下车运营。
菜单和图像生成与分发
该解决方案使用某中心S3和CloudFront安全地全球分发菜单项图像。CloudFormation模板创建了一个MenuImagesBucket,通过CloudFront Origin Access Identity限制访问,确保图像通过CloudFront分发安全、快速地全球加载。AWS Lambda通过DriveThruMenuLambda函数驱动AI驱动的内容生成,该函数自动填充示例菜单数据,并使用某中心Nova Canvas生成高质量的菜单项图像。这个服务器函数在堆栈部署期间执行,为从经典汉堡到特色鸡翅的所有菜单项创建专业的食物摄影,确保整个菜单视觉呈现的一致性。该Lambda函数与DynamoDB集成以存储生成的图像URL,并使用S3进行持久存储,创建了一个完整的自动化工作流,该工作流根据需求扩展,同时通过按使用付费定价优化成本。
语音AI处理
该解决方案使用某中心Nova Sonic作为核心语音AI引擎。数字菜单板通过安全的WebSocket连接与某中心Nova Sonic直接集成,以便即时处理客户语音输入并将其转换为结构化的订单数据。CloudFormation模板配置了AuthenticatedRole的IAM权限,以访问amazon.nova-sonic-v1:0基础模型,允许经过身份验证的用户与语音AI服务进行交互。Nova Sonic处理复杂的自然语言理解和意图识别,处理客户的请求,如菜单查询、订单修改和项目定制,同时在整个点餐过程中保持对话上下文。这种直接集成最大程度地减少了延迟问题,并为客户提供了自然、对话式的点餐体验,媲美人与人之间的互动,同时在各个免下车地点保持可靠的服务。
托管数字菜单板
AWS Amplify托管并作为可扩展的前端应用程序交付数字菜单板界面。该界面通过CloudFront显示AI生成的菜单图像,并带有来自DynamoDB的实时定价,针对免下车环境进行了优化。这个基于React的应用程序在高峰时段自动扩展,利用CloudFront中的全球内容分发网络实现快速加载。它与某中心Cognito集成进行身份验证,建立到某中心Nova Sonic的WebSocket连接以进行语音处理,并使用API Gateway端点进行菜单和订单管理。这种服务器解决方案保持了高可用性,同时提供当客户通过语音命令交互时的实时视觉更新。
WebSocket连接流程
下面的序列图说明了启用浏览器到Nova Sonic直接通信的WebSocket连接设置。该架构利用了AWS SDK更新(client-bedrock-runtime v3.842.0),该更新在浏览器中引入了WebSocketHandler支持,从而避免了服务器的需求。
(序列图未提供)
这一进步允许前端应用程序建立到Nova Sonic的直接WebSocket连接,减少了延迟和复杂性,同时实现了浏览器中的实时对话AI。初始化过程包括凭证验证、Bedrock客户端建立、AI助手配置和音频输入设置(16kHz PCM)。这种直接从客户端到服务的通信代表了传统架构的转变,提供了更高效、可扩展的对话AI应用程序。
语音交互与动态菜单
下面的序列图说明了客户关于汉堡查询的处理流程,展示了自然语言请求如何被处理以提供同步的音频响应和视觉更新。
(序列图未提供)
此图显示了如何处理一个查询("你能给我看看你们有什么汉堡吗?")。Nova Sonic调用getMenuItems ({category: "burgers"})来检索菜单数据,而前端应用程序组件则获取并构建汉堡项和价格。Nova Sonic生成上下文响应,并触发showCategory ({category: "burgers"})以在用户界面中高亮显示汉堡部分。这个过程促进了音频响应和视觉菜单更新之间的实时同步,在整个对话过程中创造了无缝的客户体验。
免下车解决方案演练
在AWS Amplify中部署应用程序后,在浏览器中打开生成的URL。您将看到两个设置选项:选择“示例”和“手动设置”。选择“示例”,然后从示例列表中选择“AI免下车体验”,然后选择“加载示例”。这将自动导入免下车解决方案的系统提示、工具和工具配置。我们将在以下步骤中配置这些设置。
选择“加载示例”后,系统会提示您配置连接设置。您需要使用CloudFormation堆栈输出中的某中心Cognito和API Gateway信息。这些值是必需的,因为它们将您的数字菜单板连接到后端服务。
输入您从CloudFormation输出(nova-sonic-infrastructure-drivethru.yaml)中复制的配置值。这些值分为两部分,如下面的视频所示。在每个部分输入配置详细信息后,选择屏幕顶部的“保存”按钮。
某中心Cognito配置:
- UserPoolId
- UserPoolClientId
- IdentityPoolId
代理配置:
- Auto-Initiate Conversation – Nova Sonic最初设置为等待您开始对话。但是,您可以通过勾选“启用自动初始化”框来启用自动对话启动。可以使用一个预录的存储在本地“Hello”音频。
工具全局参数:
- menuAPIURL
- cartAPIURL
- orderAPIUR
- loyaltyAPIURL
- chatAPIURL
完成配置后,单击页面顶部的“保存并退出”按钮。此操作将重定向您到登录屏幕。要访问系统,请使用用户名appuser和密码(在CloudFormation部署期间提供的邮箱中收到的自动生成的临时密码)。
输入临时密码后,系统会要求您通过发送到邮箱的临时代码验证账户。
首次尝试登录时,您将需要创建一个新密码来替换临时密码,如下面的视频所示。
通过点击麦克风图标开始您的免下车体验。AI助手欢迎您并指导您完成点餐过程,同时动态更新数字菜单板以突出显示相关项目。该系统会智能地推荐补充项目并调整其沟通风格以增强您的点餐体验。
清理
如果您决定停止使用该解决方案,可以按照以下步骤删除它、使用AWS CloudFormation部署的相关资源以及Amplify部署:
- 删除CloudFormation堆栈:
- 在AWS CloudFormation控制台上,在导航窗格中选择“堆栈”。
- 找到您在部署
nova-sonic-application-drivethru.yaml过程中创建的堆栈(您为其分配了一个名称)。 - 选择堆栈并选择“删除”。
- 对
nova-sonic-infrastructure-drivethru.yaml重复此操作。
- 删除Amplify应用程序及其资源。 有关说明,请参阅清理资源。
结论
使用某中心Nova Sonic的语音AI驱动的免下车点餐系统为餐厅提供了一个实用的解决方案,以应对常见的运营挑战,包括人员限制、订单准确性问题和高峰时段瓶颈。构建在AWS服务上的服务器架构——用于身份验证的某中心Cognito、用于数据通信的API Gateway、用于存储的DynamoDB,以及用于托管的AWS Amplify——创建了一个可扩展的系统,可以处理不同的需求,同时保持一致的性能。该系统通过直接的API Gateway和DynamoDB集成,支持基本的餐厅运营,包括菜单管理、购物车功能、忠诚度计划和订单处理。对于希望实现免下车运营现代化的餐厅,该解决方案提供了可衡量的好处,包括减少等待时间、提高订单准确性和运营效率提升。按使用付费的定价模型和自动扩展有助于控制成本,同时支持业务增长。随着客户期望转向更高效的服务体验,实施语音AI技术为餐厅提供了竞争优势,并为未来餐饮服务行业的技术发展做好了准备。
其他资源
要了解有关某中心Nova Sonic和其他解决方案的更多信息,请参考以下资源:
- 介绍某中心Nova Sonic:用于生成式AI应用程序的类人语音对话
- 本博客中使用的前端应用程序源代码可在GitHub上找到
- 使用某中心Nova Sonic的语音AI驱动酒店客房服务
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)或者 我的个人博客 https://blog.qife122.com/
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)
公众号二维码

公众号二维码
