利用 Amazon Connect、Amazon Lex 和 Amazon Bedrock Knowledge Bases 部署客服中心语音聊天生成式 AI 座席

Olawale Olaleye
难度
200 - 中级
时间
30 分钟
前提条件

海外区域: 注册 / 登录 亚马逊云科技

上次更新时间
2024 年 9 月 24 日

DoorDash 致力于帮助消费者找到他们最喜欢的本地餐厅,已在全球 30 多个国家和地区开展业务。近些年,来自他们承包商 (Dasher) 的送餐员的通话量急剧增长,因此 DoorDash 客服中心在处理这么大的通话量上面临着巨大挑战。截至 2023 年底,公司拥有超过 3700 万活跃消费者和 200 万月度活跃 Dasher 送餐员,他们认识到有必要为 Dasher 送餐员提供更高效的自助服务体验,以减轻公司客服中心在线座席的负担。

为了应对这一挑战,DoorDash 的客服中心团队希望利用生成式 AI 的强大功能,快速、大规模地部署解决方案,同时要求能保持他们在问题解决和客户满意度方面的高标准。Dasher 送餐员通常在路上打电话寻求支持,而不是发短信,他们需要快速可靠的帮助,且响应延迟越低越好。这种低延迟要求成为 DoorDash 寻求有效的语音自助服务解决方案的关键因素。

DoorDash 与 AWS 生成式人工智能创新中心合作,在短短 2 个月内部署了一个解决方案,为 Dasher 提供了一个低延迟的自助语音服务系统,用来回答常见问题,减少了对在线座席支持的需求。

该解决方案采用了 Amazon LexAmazon Bedrock 和 Amazon Bedrock Knowledge Bases。Amazon Lex 是一款全托管 AI 服务,提供语音对话的 AI 服务支持。Amazon Bedrock 提供全托管的来自领先 AI 公司和 Amazon 的多种基础模型 (FM)。用户可以根据自己的应用场景,选择适合其业务的基础模型,且只需通过 API 即可调用模型。Amazon Bedrock Knowledge Bases 是一款可以将大语言模型 (LLM) 连接到数据源的全托管服务。该解决方案是一个完全无服务器的架构,采用 Amazon OpenSearch Serverless,可运行 PB 级工作负载,且无需自己管理底层基础设施。

该解决方案每天能够处理数十万通电话,能在 2.5 秒内回答 Dasher 送餐员提出的问题。它还支持自动测试、对话分析、监控和可观察性以及大语言模型 (LLM) 幻觉预防和检测等功能。

在本文中,我们将展示如何使用 AWS 服务部署客服中心生成式 AI 座席。

解决方案概述

本文使用了一个名为 Example Corp Hospitality Group 的虚构连锁酒店作为示例。以下是客户与大语言模型驱动的自动座席之间的互动示例:

客户:嗨,我们想找一个适合家庭度假的好地方。

座席:Example Corp Family Getaways 提供适合家庭入住的酒店和度假村,靠近主题公园、国家公园和历史古迹等热门景点。度假村提供宽敞的住宿环境、适合各个年龄段的活动和多样化的餐饮选择,会让你的家人留下难忘的回忆。

客户:在哪个地方?

座席:Example Corp Family Getaways 在多个热门度假胜地提供适合家庭入住的度假村,包括佛罗里达州奥兰多、加利福尼亚州阿纳海姆、弗吉尼亚州威廉斯堡、田纳西州鸽子谷、德克萨斯圣安东尼奥、亚利桑那州斯科茨代尔、密苏里州布兰森、威斯康星州戴尔、和宾夕法尼亚州赫尔希。

客户:鸽子谷听起来不错。

座席:我们的鸽子谷度假村为家庭旅行提供体验户外活动的机会,同时客人还能享受多莱坞和附近其他景点。客人可以在室内水上乐园、迷你高尔夫球场尽情玩耍,晚上可以围着篝火烤肉。

客户:有儿童菜单吗?

座席:田纳西州鸽子谷 Example Corp Family Getaways 度假村提供适合家庭的餐饮选择,包括专门的儿童菜单,有披萨、鸡块、通心粉和奶酪等美食。

你可以在自己的 AWS 账户下部署该解决方案,并测试该示例解决方案。下图展示了该解决方案的架构。

以下是需要部署和测试的解决方案的主要组件:

  1. 一个用来创建 Amazon Bedrock 知识库的 AWS CloudFormation 堆栈。该 Amazon Bedrock 知识库存储智能体回答问题所依据的知识内容。
  2. 一个用来创建 Amazon Lex 机器人和 AWS Lambda 完成函数的 AWS CloudFormation 堆栈,用于实现核心检索增强生成 (RAG) 问答功能。
  3. 一个用来部署数据管道以实现对话分析面板的可选 AWS CloudFormation 堆栈。
  4. 一个用来实现异步 LLM 幻觉检测功能的可选 AWS CloudFormation 堆栈。
  5. Amazon SageMaker 托管的可选 Jupyter 笔记本,提供自动测试能力,将生成的答案与真实答案相比较,并提供通过/失败分数和解释。

这些组件配置都在我们的 GitHub 存储库中以开源形式提供。

前提条件

已有 AWS 账户、AWS Identity and Access Management (IAM) 角色和用户、以及创建和管理该应用所需资源和组件的权限。如果你还没有 AWS 账户,请参阅如何创建和激活新的 Amazon Web Services 账户?创建一个账户。

该解决方案使用 Amazon Bedrock 上的大语言模型从知识库中查找问题的答案。在继续操作之前,请至少申请访问以下 Amazon Bedrock 模型(如果之前未申请过):

  • 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 QuickSight,请确保你的 AWS 账户下已启用 Amazon QuickSight。 

截至撰写本文时,该解决方案已在以下 AWS 区域推出:亚太地区(新加坡、悉尼、东京)、加拿大(中部)、欧洲(法兰克福、伦敦)、美国东部(弗吉尼亚州北部)和美国西部(俄勒冈州)。

部署 Amazon Bedrock 知识库

你可以使用 AWS 提供的 AWS CloudFormation 堆栈模板来创建 Amazon Bedrock 知识库实例,并使用 Amazon Simple Storage Service (Amazon S3) 存储桶作为数据源完成以下步骤建立知识库:

  1. 登录你的 AWS 账户,点击以下 Launch Stack(启动堆栈)按钮,去部署 AWS CloudFormation 模板:

 2. 输入堆栈名称,例如 contact-center-kb

 3. 输入已有的 S3 存储桶名称,例如 contact-center-kb- (你的账号)。该存储桶将存储该示例解决方案的知识内容。如果没有 S3 存储桶,请创建一个。

 4. 请勿指定 S3 前缀。

 5. 选择嵌入模型,例如 amazon.titan-embed-text-v2:0。

 6. 选择 Fixed-sized chunking(固定大小分块)作为分块策略。

 7. 如果使用 Amazon Titan 嵌入模型,每个块条目的最大令牌数设置为 600。(如果使用 Cohere 嵌入模型,请设置为 512)。这表示大约一整页的文本。

 8. 设置重叠百分比为 10%。

 9. 将 Index Details(索引详情)的四个条目(索引名称、向量字段名称、元数据字段名称和文本字段名称)保留为默认值。

 10. 单击 Next(下一步)。

 11. 在 Configure stack options(配置堆栈选项)页面上,单击 Next(下一步)。

 12. 在 Review and create(确认并创建)页面上,确认 IAM 功能信息,然后单击 Submit(提交)。

堆栈部署大约需要 10 分钟。

上传示例知识内容并测试知识库

该示例解决方案中包括一个名为 hotel-bot 的机器人。该机器人基于大语言模型创建,可以回答有关虚构连锁酒店 Example Corp Hospitality Group 的问题。你需要将该连锁酒店的信息内容加载到知识库栈关联的 S3 存储桶中。你可以在堆栈的 Outputs(输出)选项卡上找到 AWS CloudFormation 使用的 S3 存储桶信息。

  1. 使用 AWS Command Line Interface (AWS CLI) 或 AWS 管理控制台上传来自 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(同步)。

同步过程只需一两分钟。

同步数据源后,你可以在 Amazon Bedrock 控制台上对模型提出一些问题,测试问答。请确认已在 Amazon Bedrock Model access(模型访问)页面上,启用了你的企业组织批准的所有模型。

在 Amazon Bedrock 上选择一个 LLM 模型,比如 Anthropic Claude 3 Haiku,然后开始提问。你可能需要仔细阅读上传的示例文档,以便了解如何提问。

部署幻觉检测堆栈(可选)

如果要使用可选的异步幻觉检测功能,请部署此堆栈。如果不想使用幻觉检测功能,请跳转到下一步。你可以将此 AWS CloudFormation 堆栈用于任何需要异步幻觉检测的 RAG 解决方案。

  1. 点击 Launch Stack(启动堆栈):

 2. 输入堆栈名称,例如 contact-center-hallucination-detection

 3. 选择一个执行幻觉检测的大语言模型。截至撰写本文时,共有 7 个推荐的大语言模型支持幻觉检测。此示例解决方案中,选择了默认模型 (Claude V3 Sonnet)。

 4. 也可以创建一个 Amazon Key Management Service (AWS KMS) 客户管理密钥 (CMK),用于为 Lamba 函数加密 ​Amazon Simple Queue Service (Amazon SQS) 队列和 Amazon CloudWatch Logs 日志组(生产环境中建议使用这种方法)。

此堆栈中包括了两种类型的 Amazon CloudWatch 告警:

  • ERROR alarms(错误告警):执行幻觉检测工作的 Lambda 函数出现代码问题。
  • WARNING alarms(报警告警):Lambda 函数实际检测到幻觉时发出的告警。

这两种告警类型都是可选的,但建议都选择。

 5. 选择 yes 启用告警,选择 no 禁用告警。

 6. 启用告警时,你可以指定用于接收相关告警邮件通知的电子邮件地址或通讯组列表。

 7. 单击 Next(下一步)。

 8. 在 Configure stack options(配置堆栈选项)页面上,单击 Next(下一步)。

 9. 在 Review and create(确认并创建)页面上,确认 IAM 功能信息,然后单击 Submit(提交)。

堆栈部署大约需要一两分钟。

堆栈部署完成后,你可以在 AWS CloudFormation 堆栈的 Resources(资源)选项卡上查看创建的资源。特别要查看 Lambda 函数代码。

如果设置了接收告警通知的电子邮件地址,你应该会收到要求确认订阅的电子邮件请求。确认会收到相关告警电子邮件通知。

部署 RAG 解决方案堆栈

如果要与 Amazon Connect 集成,请确保你的账户中有可用的 Amazon Connect 实例。如果没有,请先创建一个 Amazon Connect 实例。然后完成以下步骤,部署 Amazon Lex 机器人和 Lambda 完成函数:

  1. 点击 Launch Stack(启动堆栈):

 2. 输入堆栈名称,例如 contact-center-rag-solution

 3. 输入 Amazon Lex 机器人名称,例如 hotel-bot

 4. 指定要保留为上下文的对话轮数。可针对不同的使用场景和数据集进行设置优化。对于 hotel-bot 示例机器人,使用的是默认值 4。

 5. 还可以指定现有的 CloudWatch Logs 日志组 ARN,用于记录 Amazon Lex 的对话日志。如果部署对话分析堆栈,则需要记录 Amazon Lex 机器人的日志。如果没有现有日志组,请创建日志组

 6. 此外,你可以为 Amazon Lex 机器人的处理函数 (handler function) 设置 Lambda 预置并发数值。如果设置为非零数字,将阻止 Lambda 冷启动。在生产环境和内部测试中,建议设置为非零数字。对于开发环境,建议设置为 0 或 1。

 7. 你还可以选择创建 KMS CMK,用于为 Lambda 函数加密 CloudWatch Logs 日志组(建议在生产环境中使用这种方法)。

 8. 如果要与 Amazon Connect 集成,请提供 Amazon Connect 实例的 ARN,以及堆栈创建的联系流的名称。

 9. 输入新建知识库堆栈中的知识库 ID。可在知识库堆栈的 Outputs(输出)选项卡上查看知识库 ID。

 10. 输入知识库堆栈使用的 S3 存储桶名称(也可以在 Outputs(输出)选项卡上查看)。

 11. 如果创建了幻觉检测堆栈,请输入 SQS 队列名称。可在幻觉检测堆栈的 Outputs(输出)选项卡上查看。

 12. 如果为幻觉检测堆栈设置了 KMS 密钥,请输入 KMS 密钥 ARN。

 13. 单击 Next(下一步)。

 14. 在 Configure stack options(配置堆栈选项)页面上,单击 Next(下一步)。

 15. 在 Review and create(确认并创建)页面上,确认 IAM 功能信息,然后单击 Submit(提交)。

堆栈部署需要几分钟才能完成。

要使用 RAG 解决方案,请导航到 Amazon Lex 控制台,然后打开 hotel-bot 机器人。该机器人语言模块支持英语。在导航栏中,选择 Intents(意图),查看此示例机器人支持的意图。支持以下意图类型:

  • 与连锁酒店及其各种酒店品牌相关问题的意图:包括​ AccommodationsAmenitiesCorporateOverviewLocationsParking 等等。这些意图由 Amazon Lex 转接到 RAG 解决方案。从技术上讲,这样的意图可以忽略,由 FallbackIntent 处理这种性质的请求。但是,包含这些意图(及其示例表达)可以为 Amazon Lex 提供解决方案域相关的“语言”信息,使其更好地优化语音转文本引擎,提高语音转录的准确性。此外,包含这些意图对于对话分析也很有用。
  • SwitchBrand:有了该意图,可以处理用户在对话过程中说 “What about at your other hotels?”(你们的其他酒店怎么样?)之类的话,推进对话流。
  • Booking:该意图用于将来电转接到在线座席队列。
  • SpeakToAgent:该意图用于处理来电者特别要求人工座席的情况。
  • Welcome、Goodbye 和 Help:这些对话支持意图用于开始和结束对话,或询问机器人可以做什么。
  • FallbackIntent:这是标准意图,用于问题或请求与其他意图不匹配的情况。在本示例解决方案中,此类请求也将转接到 RAG 解决方案,由大语言模型根据知识库中的内容做出回答。
  • SelectKnowledgeBase 和 SelectLLM:这些意图用于根据用户指示,RAG 解决方案使用不同的知识库实例(如果有多个实例可用)或不同的大语言模型。这些意图专为测试目的而设计,用于在非生产环境中进行测试。你可以使用 Amazon Bedrock 上提供的任何大语言模型测试 RAG 解决方案。如果需要,还可以在对话中途切换到不同的知识库或大语言模型。
  • ToggleLLMGuardrails 和 ToggleLLMContext:这些意图允许用户关闭或打开基于 prompt 的大语言模型防护机制,和禁用或启用从知识库检索信息功能。这些意图专为测试目的而设计,用于在非生产环境中进行测试。如果需要,可以在对话中途关闭或打开这些设置。

你可以在 Amazon Lex 控制台上,选择 Test(测试)来测试使用该解决方案。

尝试一些示例对话,例如:

  • 提问 “We’re looking for a nice place for a family vacation”(我们想找一个适合家庭度假的好地方),机器人回答 “Example Corp Family Getaways offers family-friendly accommodations…”(Example Corp Family Getaways 提供适合家庭入住的...)
  • 提问 “Where are they located?”(在哪个地方?),机器人回答 “Example Corp Family Getaways has locations in…”(Example Corp Family Getaways 在多个...)
  • 提问 “Tell me more about the one in Pigeon Forge”(介绍一下鸽子谷那个吧),机器人回答 “The Example Corp Family Getaways resort in Pigeon Forge, Tennessee is…”(田纳西州鸽子谷 Example Corp Family Getaways 度假村...)

你可以查看你之前上传的示例文档,了解如何提问。

如果你部署了幻觉检测堆栈,可以查看对测试答案的评估。在幻觉检测堆栈详细信息页面的 Resources(资源)选项卡上,选择 HallucinationDetectionFunctionLogGroup 条目。这将打开 Lambda 幻觉检测功能的 CloudWatch Logs 日志组。你可以检查日志语句,观察幻觉检测过程的执行情况,如以下截图所示。

如果与 Amazon Connect 集成,你指定的 Amazon Connect 实例中将出现一个新的联系流,如以下截图所示。

要测试语音功能,只需一个电话号码,将其与此联系流关联,然后拨打电话即可!

部署对话分析堆栈(可选)

此堆栈使用 Amazon QuickSight 来进行分析,因此在部署堆栈之前,请确保已在你的 AWS 账户下启用了 Amazon QuickSight

  1. 选择 Launch Stack(启动堆栈):

 2. 输入堆栈名称,例如 contact-center-analytics

 3. 设置 Amazon Lex 对话日志的日志组名称(注意:不是日志组的 ARN)。此日志组需与用于部署 RAG 解决方案的 AWS CloudFormation 堆栈中设置的 CloudWatch Logs 日志组相同。

 4. 选择是否从日志组中清除源日志流。在此测试中,我们选择 no(否)。

 5. 选择是否编辑对话日志中的敏感数据。在此测试中,我们选择 no(否)。

 6. 将个人身份信息 (PII) 实体类型和置信度得分阈值保留为默认值。

 7. 选择是否允许数据管道中的 Lambda 函数使用未编辑的日志。在此测试中,我们选择 yes(是)。

 8. 选择创建 KMS CMK。

如果创建了 CMK,可以使用 CMK 来加密该堆栈创建的 S3 存储桶中的数据。该存储桶存储规范化的对话数据。这让你可以控制允许哪些 IAM 主体解密和查看数据。建议将此设置用于生产环境。

 9. 选择是否在 Amazon Lex 数据管道中启用 CloudWatch ERRORS 和 WARNINGS 告警。建议启用这些告警。

 10. 启用告警时,你可以指定用于接收相关告警邮件通知的电子邮件地址或通讯组列表。

 11. 单击 Next(下一步)。

 12. 在 Configure stack options(配置堆栈选项)页面上,单击 Next(下一步)。

 13. 在 Review and create(确认并创建)页面上,确认 IAM 功能信息,然后单击 Submit(提交)。

堆栈部署大约需要 5 分钟才能完成。

下图展示了堆栈架构。

Amazon Lex 将对话日志条目写入 CloudWatch Logs (1),然后由 ​Amazon Data Firehose 收集并发送到 S3 存储桶 (2)。在此过程中,Lambda 转换函数 (3) 简化了数据的 JSON 结构,更方便用户查询。Lambda 函数还可以使用 Amazon Comprehend (4) 编辑敏感数据,或者在消费日志条目数据时,将对应的条目从 CloudWatch Logs 日志组中清除。

AWS Glue 爬网程序 (5) 会定期(每 5 分钟)检查 S3 存储桶中的新数据,并更新 Amazon Athena (6) 使用的数据模式,以提供数据访问的 SQL 接口。这样,就可以使用 QuickSight (7) 等工具创建近乎实时的数据面板、实现数据分析和数据可视化。

设置 QuickSight 面板(可选)

在创建 QuickSight 面板之前,务必返回 Amazon Lex 控制台并提出几个问题,为面板生成一些数据。管道需要大约 5 分钟来处理这些新对话数据,然后提供给 QuickSight。

要在 QuickSight 中设置面板和可视化,请完成以下步骤:

  1. 在 QuickSight 控制台上,选择用户配置图标,然后选择 Manage QuickSight(管理 QuickSight)。
  2. 在 Security & permissions(安全与权限)下的 QuickSight access to AWS services(QuickSight 访问 AWS 服务)中,选择 Manage(管理)。
  3. 在 Amazon S3 下,单击 Select S3 buckets(选择 S3 存储桶)。
  4. 允许访问由对话分析堆栈创建的 S3 存储桶(存储桶名称中带有 12 个字符的唯一标识符,前缀为 lex-conversation-logs)。无需启用写入权限。
  5. 单击 Finish(完成),然后单击 Save(保存)。
  6. 单击 QuickSight 菜单图标,返回 QuickSight 主页。
  7. 在导航栏中,选择 Datasets(数据集)。
  8. 单击 New dataset(新建数据集)。
  9. 从数据集源列表中,选择 Athena。
  10. 输入数据源名称,例如 contact-center-analytics
  11. 选择 Create data source(创建数据源)。
  12. 在 Choose your table(选择表)窗口中,选择数据库,选择 lex_conversation_logs 表,然后选择 Edit/Preview data(编辑/预览数据)。

这将打开新建的 QuickSight 数据集。你可以查看各种可用的属性和一些测试结果。

为了提高显示数据的速度,你可以在 Query mode(查询模式)字段选择 SPICE 选项,但这意味着当你要查看基于其他测试的数据更新时,需要刷新 SPICE 数据集(或设置每小时自动更新计划)。

 13. 此实验中,我们将设置保留为 Direct query(直接查询)。

 14. 准备就绪后,选择 PUBLISH & VISUALIZE(发布并可视化)。

 15. 在 New sheet(新建工作表)窗口中,保留默认值并选择 CREATE(创建)。

你将进入分析页面。你可以在此页面开始创建可视化图表。

自动测试笔记本(可选)

要测试自动测试功能,你需要一个 SageMaker Jupyter 笔记本。可以在集成开发环境 (IDE) 或支持 Jupyter 笔记本的其他环境中运行笔记本。

  1. 在 SageMaker 控制台导航栏中 Notebook(笔记本)下,选择 Notebook instances(笔记本实例)。
  2. 选择 Create notebook instance(创建笔记本实例)。
  3. 输入笔记本名称,例如 contact-center-rag-testing
  4. 要启用多线程测试,建议选择更大的实例,例如 ml.m5.2xlarge(有 8 个 vCPU)或 ml.m5.4xlarge(有 16 个 vCPU)。当不再使用该实例时,务必停止实例。
  5. 保留 Platform identifier(平台标识符)的默认设置(Amazon Linux 2、Jupyter Lab 3)。
  6. 在 Additional configuration(其他配置)下,将 Volume size in GB(卷大小 (GB))设置提高到 50 GB。
  7. 在 Permissions and encryption(权限与加密)板块的 IAM role(IAM 角色)下,从下拉列表中选择 Create a new role(创建新角色),注意不要使用角色创建向导。
  8. 在 Create an IAM role(创建 IAM 角色)窗口中,你可以指定允许访问的任何 S3 存储桶(本解决方案不需要)。
  9. 选择 Create role(创建角色)。

 10. 选择 Create notebook instance(创建笔记本实例)。

笔记本实例需要几分钟之后才可用。在笔记本实例创建过程中,你可以更新 IAM 角色,添加访问 Amazon Bedrock 和 Amazon Lex 所需的内联策略。

 11. 在 Notebook instances(笔记本实例)页面上,打开笔记本实例(例如,contact-center-rag-testing),然后选择 IAM role ARN(IAM 角色 ARN)下的条目,打开该角色页面。

 12. 添加以下内联策略(位于 GitHub 存储库的 notebooks/iam-roles 文件夹中):

你可以根据需要修改这些角色,以限制资源访问。

 13. 笔记本实例启动后,选择 Open Jupyter(打开 Jupyter),打开笔记本。

 14. 将以下内容上传到笔记本实例(如果需要,你可以在本地压缩文件,上传 zip 文件,然后在 SageMaker 中解压缩):

 15. 打开 run_tests.ipynb 笔记本。

 16. 在第二个单元格中,将 bot_id 和 bot_alias_id 值替换为 Amazon Lex 机器人对应的值(可在 RAG 解决方案堆栈的 Outputs(输出)选项卡上查看相应信息)。

 17. 更新这些值后,在 Kernel(内核)中选择 Restart & Run All(重新启动并全部运行)。

如果你使用的是 ml.m5.2xlarge 实例类型,运行 test-runs/test-cases-claude-haiku-2024-09-02.xlsx 工作簿中的 50 个测试用例大约需要 1 分钟。运行完成后,你应该能在笔记本的 test-runs 文件夹中找到相应的测试结果工作簿。

 

几分钟后,你还可以在对话分析面板中查看测试结果。

根据使用场景调整解决方案

只需稍微调整,便可让解决方案适合你的特定使用场景:

  • 将 Amazon Bedrock 知识库里的示例内容替换为你的内容:替换 S3 存储桶中的内容,并将其整理成符合使用场景的文件夹结构。你也可以创建新的知识库来管理你自己的知识内容。
  • 将 Amazon Lex 机器人中的意图替换为使用场景的意图:修改 Amazon Lex 机器人的定义,更改为你的使用场景中要启用的交互。
  • 修改 bedrock_utils 代码中的大语言模型 prompt:在 Amazon Lex 机器人的 Lambda 完成函数中,查看 bedrock_utils 文件夹中的 LLM prompt 定义。例如,为大语言模型驱动的座席角色设置特定使用场景定义。
  • 如有需要,修改机器人的 handler 代码:在 Amazon Lex 机器人的 Lambda 完成函数中,查看 TopicIntentHandler.py 函数中的代码。此代码中提供了以示例酒店品牌作为主题的知识库搜索示例。你可以将示例元数据搜索查询替换为你的使用场景需要的查询。

清理资源

恭喜!你已完成了使用 AWS 服务创建支持语音交互的生成式 AI 客服中心座席解决方案的所有步骤。

如果不再需要使用 AWS 账户中部署的解决方案,你可以删除实验过程中部署的 AWS CloudFormation 堆栈和创建的 SageMaker 笔记本实例。

总结

该基于生成式 AI 的客服中心座席解决方案提供了一种可扩展、经济高效的方法,利用 Amazon Bedrock、Amazon Bedrock Knowledge Bases、OpenSearch Serverless 和 Amazon Lex 等 AWS 服务实现自动问答对话。

该解决方案代码以开源形式提供,你可以在此基础上构建自己的解决方案。你可以通过 GitHub pull 请求提供功能修复和新功能,帮助我们改进该解决方案。你可以浏览 GitHub 存储库查看代码,检查 CHANGELOG 了解最新更改,以及阅读 README 获取最新版文档更新。

如果你需要专家协助,AWS 生成式人工智能创新中心AWS 专业服务和 AWS 合作伙伴可随时提供帮助。

 

免责声明:前述特定亚马逊云科技生成式人工智能相关的服务仅在亚马逊云科技海外区域可用,亚马逊云科技中国仅为帮助您了解行业前沿技术和发展海外业务选择推介该服务。

更多教程

快速搭建容量高达 35GB 的免费个人网盘

本教程将介绍如何搭建一个没有使用限制的免费私人网盘。

构建企业专属智能客服机器人

本文将演示如何结合多种服务,打造企业专属的智能客服。

使用生成式 AI 构建多语言问答知识库

使用多种服务,构建可汇总搜索结果的多语言知识库。

查看全部教程 >>

免费套餐

AWS 海外区域

拓展海外业务或个人体验
免费使用 100 余种云产品或服务, 长达 12 个月

AWS 中国区域

发展中国业务
免费使用 40 余种核心云服务产品,长达 12 个月