大家好我是小李哥,本名叫李少奕,我目前在北美金融行业的一家AI初创公司担任云计算负责人,负责设计和实施AI SaaS服务的云架构以及AI安全解决方案。我们也非常幸运被亚马逊云科技(AWS)选为了北美地区的Top20家(全球80家)最佳AI初创Startups公司,入选了亚马逊云科技全球生成式AI创业孵化器,被亚马逊云科技官网、领英和多家媒体官方报道。
海外媒体报道:
我们的初创公司所在的行业是餐饮软件与互联网行业, 主要为餐馆和ISV提供对话式生成式AI客服工具,帮助餐厅处理客户的点餐、订座请求,以及帮助客户回答有关餐厅的相关问题。特别感谢亚马逊云科技初创Startups投资团队给我们的大力支持,在去年的亚马逊全球AI初创公司峰会里,我们还和亚马逊全球CEO Andy Jassy进行现场交流,得到了他对我们项目非常多的建议和指导。
今天小李哥将会重点介绍我们入选北美Top20最佳初创公司所使用的云端AI架构技术方案,希望帮助到更多的AI创业者和社区开发者。欢迎大家与我交流技术和AI行业经验,共同学习、成长!由于我们是一家隐形创业公司,我们会以亚马逊云科技类似场景的技术解决方案为案例进行介绍,欢迎大家关注我,不要错过未来更多的海外前沿AI解决方案和行业动态。
亚马逊云科技全球AI创业孵化器是什么?
亚马逊云科技全球AI创业孵化器是亚马逊和英伟达、Meta、Mistral AI合作,为全球优秀的AI初创公司提供的为期10周的创业加速项目,帮助他们将创新技术投入市场,提供创业导师、提供全球渠道和风投资源、业务拓展支持、技术指导、资金等支持,最终帮助这些AI初创团队深度赋能、技术创新,在商业上取得成功。像Hugging Face、爱奇艺、airbnb、Stripe、Perplexity、WIZ都是亚马逊云科技全球AI初创公司项目的成员。
AI餐饮客服解决方案介绍
我们的解决方案采用了AI聊天服务 - Amazon Lex、AI模型托管服务 - Amazon Bedrock和AI知识库 - Amazon Bedrock Knowledge Bases。Amazon Lex是一款全托管AI服务,提供语音对话的AI服务支持。Amazon Bedrock提供全托管的来自全球领先AI公司和Amazon自家的(Amazon Nova)多种AI基础模型 (FM)。用户可以根据自己的应用场景,选择适合其业务的基础模型,且只需通过API即可非常便捷的调用模型,无需维护庞大的云基础设施。Amazon Bedrock Knowledge Bases是一款使用RAG将大语言模型 (LLM) 连接到数据源的全托管服务。该方案是一个完全无服务器的架构,向量库采用Amazon OpenSearch Serverless,可运行PB级工作负载,且无需自己管理底层基础设施。
我们的解决方案每天能够处理数十万通电话,能在2.5秒内回答客户提出的问题。它还支持自动测试、对话分析、监控和可观察性以及大语言模型 (LLM) 幻觉预防和检测等功能。下图展示了我们解决方案的架构。
对话示例
当用户打电话接入Amazon Connect呼叫中心时,我们集成了Amazon Bedrock上的AI大模型的聊天工具Amazon Lex与客户询问菜单的对话的示例如下:
客户:有儿童菜单吗?
座席:田纳西州鸽子谷 Example Corp Family Getaways 度假村提供适合家庭的餐饮选择,包括专门的儿童菜单,有披萨、鸡块、通心粉和奶酪等美食。
架构图详细解释
我们的产品方案主要流程如下:
1. 用户的电话接入Amazon Connect呼叫中心,利用语音识别服务ASR,将用户的对话转为文字。
2. 文字内容通过与Amazon Connect呼叫中心集成的对话机器人Amazon Lex进行交互,将文字内容发送到Amazon Bedrock Agent智能代理。
3. 对于用户问题,智能代理会首先查询RAG知识库中的向量库,将相应的文字答案返回。
4. 对于用户的点餐和订座请求,AI智能代理会通过函数工具调用餐厅的POS系统。
5. Lambda函数会将Amazon Bedrock AI大语言模型返回的文字返回对话机器人Amazon Lex。
6. 对话机器人Amazon Lex将文字内容返回到Amazon Connect呼叫中心,利用文字转语音服务TTS,将最终的语音内容播放给用户。
云端解决方案主要的技术组件
以下是部署和测试我们用的解决方案的主要组件:
1. 一个用来创建Amazon Bedrock知识库的IaC基础设施搭建脚本。该Amazon Bedrock知识库存储AI代理回答用户问题所需要的和餐厅有关的指示内容。
2. 一个用来创建Amazon Lex对话机器人和AWS Lambda应用函数的IaC基础设施搭建脚本,用于实现核心检索增强生成 (RAG) 问答功能。
3. 一个用来部署数据管道以展示对话分析数据面板的IaC基础设施搭建脚本(可选)。
4. 一个用来实现异步大语言模型幻觉检测功能的IaC基础设施搭建脚本(可选)。
大家可以通过亚马逊云科技官方的Github代码库获取
方案实操介绍
前提条件
大家需要有一个亚马逊云科技海外区账户、拥有相关服务权限的AWS IAM角色和用户、以及创建和管理该该方案所需云资源和组件的权限。该解决方案使用Amazon Bedrock上的大语言模型从知识库中查找问题的答案。在实验实操之前,请在Amazon Bedrock上开启以下的Amazon Bedrock上的AI模型:
- Amazon Titan Embeddings G1 – Text
- Cohere Embed English v3和Cohere Embed Multilingual v3
- Anthropic Claude 3 Haiku和Anthropic Claude 3 Sonnet
如果要与Amazon Connect呼叫中心集成,请确保大家的账户中已创建可用的Amazon Connect通话中心。如果没有,请先创建Amazon Connect通话中心。
部署Amazon Bedrock知识库
我们可以使用Github中的IaC基础设施搭建脚本模板来创建Amazon Bedroc 知识库实例,并使用 Amazon S3存储桶作为数据源。大家按照以下步骤建立知识库:
1. 登录亚马逊云科技海外区账户,点击以下Launch Stack(启动堆栈)按钮,去部署IaC基础设施搭建脚本 - AWS CloudFormation模板:
2. 输入堆栈名称,例如contact-center-kb。
3. 输入已有的S3存储桶名称,例如contact-center-kb- (你的账号名称)。该存储桶将存储本解决方案内的知识文档内容。如果没有S3存储桶,需要创建一个。
4. 选择嵌入模型,例如amazon.titan-embed-text-v2:0。
5. 选择知识库Fixed-sized chunking(固定大小分块)作为向量分块策略。
6. 如果使用Amazon Titan向量嵌入AI模型,每个块条目的最大令牌数设置为600。(如果使用 Cohere嵌入模型,可以设置为512)。这个token数量表示大约一整页的文本。
7. 设置向量分割重叠百分比为10%。
8. 将Index Details(索引详情)的四个配置(索引名称、向量字段名称、元数据字段名称和文本字段名称)保留为默认值。
9. 单击下一步。
10. 在配置堆栈选项页面中,单击下一步。
11. 在最后确认并创建页面上,添加IAM权限,然后单击Submit提交完成创建。
整个IaC基础设施创建大约需要10分钟。
上传商户相关的知识文档并测试知识库
我们的解决方案部署中,会包括一个名为restaurant-bot的对话机器人。该机器人基于大语言模型,回答有关餐厅的先关的问题。你需要将该餐馆的信息文档上传到到知识库栈关联的S3存储桶中。你可以在IaC基础设施脚本的的Outputs输出里找到IaC基础设施脚本AWS CloudFormation使用的S3存储桶信息。
1. 我们使用AWS CLI或亚马逊云科技控制台,上传来自GitHub代码库content目录下的如下文件夹:
corporate
family-getaways
luxury-suites
party-times
seaside-resorts
waypoint-inns
我们可以选择上传PDF版本或Word文档版本(推荐 Word 版本)。上传完成后,S3存储桶中将列出六个文件夹,每个文件夹包含一个Word或PDF文档。
2. 在Amazon Bedrock控制台上的导航栏中,选择Knowledge bases知识库。
3. 选择新创建的知识库,并打开该知识库。
此时在界面中大家将收到一条消息:“One or more data sources have not been synced.”(一个或多个数据源尚未同步)。
4. 选择我们需要同步的数据源,然后选择Sync同步。同步过程只需一两分钟。
5. 同步数据源后,我们会在Amazon Bedrock控制台上对模型Agent代理提出一系列关于餐馆的问题,测试问答效果。请大家确认已在Amazon Bedrock Model access(模型访问)页面上,启用了大家所需要的模型(Claude 3.5 Haiku)。
最后我们在Amazon Bedrock的Agent代理只能给选择Claude 3 Haiku模型,然后开始提问。我们可可以选择在上文中介绍的问题进行提问。
总结
我们的方案基于生成式AI驱动的客服中心语音电话解决方案,提供了一种可扩展、低成本的云端解决方案,利用 Amazon Bedrock、Amazon Bedrock Knowledge Bases、OpenSearch Serverless 和Amazon Lex等亚马逊云科技服务实现与用户自动问答对话。
该解决方案代码以开源形式提供,大家都可以利用该源代码构建自己的解决方案。目前源代码全部上传到GitHub仓库中,大家可以检查Change Log了解最新更改,阅读README获取最新版用户文档。最后也一定要关注小李哥,不要错过未来更多的国际前沿生成式AI技术和行业动态,欢迎大家技术交流。