组织需要用户友好的方法来构建AI助手,这些AI助理可以在维护文档安全性的同时引用企业文档。这篇文章显示了如何使用亚马逊Q业务创建一个AI助手,提供可点击的URL来源存储在亚马逊简单存储服务(Amazon S3),以支持安全的文档访问和验证。亚马逊Q业务是生成的AI - 能够根据企业系统中的信息回答问题并完成任务的能力对话助手,并提高了劳动力生产率。
在这篇文章中,我们演示了如何使用Amazon Q业务来建立AI助手,该业务根据您的企业文档响应用户的请求,存储在S3存储桶中,以及用户如何在AI助手响应中使用参考URL来查看或下载引用文档,并验证AI响应以验证AI响应以练习AI响应以练习AI响应。负责人AI。您可以按照本文中的说明使用提供的示例数据集或您自己的数据集来构建AI助手,并使用Amazon Q Business Web体验和API与IT进行交互。
解决方案概述
您可以为您的员工建立安全的AI助手,其中AI响应是基于一组企业文件的。您将文档存储在S3存储桶中,并配置S3存储库作为数据源, 或者直接上传文件从Amazon Q Business Console到Amazon Q Business应用程序。订阅的Amazon Q业务应用程序订阅的身份验证的用户可以使用AI助手进行交互亚马逊Q业务网络体验从他们的Web浏览器或组织构建的自定义应用程序中。Amazon Q Business供电的AI助手提供来源归因对于每个响应,可单击的URL指向生成响应的文档。用户可以使用URL安全地访问参考文档,以获取更多信息和实践负责的AI,而无需向存储文档的S3存储牌凭证,并且Amazon Q Business应用程序验证了在允许用户视图或下载文档或下载文档之前,已验证了身份验证的用户访问URL的授权。
下图显示了Amazon S3可单击的URL的内部工作getDocumentContent API让用户使用URL链接安全地查看或下载文档。
AI助手使用的企业文档的S3存储桶被配置为Amazon Q Business应用程序的数据源。当数据源首次同步时,Amazon Q Business S3连接器将抓取客户的存储桶并摄入文档,以及其元数据和访问控制列表(ACL)。在摄入期间,每个文档的内容由Amazon Q Business存储在Amazon Q Business Service帐户中的S3存储桶中。从文档中提取的文本以及元数据和ACL被摄入亚马逊Q业务指数。在随后的数据源同步操作中,已更改或新添加到客户的S3桶的文档已重新启动,它们的内容被添加或更新,在上台存储桶中添加或更新,并且从客户中删除的文档中的文档中的内容已从登台存储桶中删除。在索引中提取文本和元数据。
当经过身份验证的用户使用Amazon Q Business Specials或客户开发的应用程序向AI助手提出问题或写入提示时,应用程序的UI层调用聊天或者chatsyncAPI。对API的响应包括索引文档的源归因,源参考URL和段落,这些文档被用作基础大语言模型(LLM)的上下文,以生成对用户查询的响应。当用户选择指向使用Amazon S3数据源摄入的文档或直接上传的文件摄入的文档时,需要使用UI层来调用getDocumentContent API(在上图中标记为1)获取要显示或下载的文档的内容。聊天,,,,chatsync, 和getDocumentContent API只能使用身份验证的用户的身份感知凭证来调用。
收到getDocumentContent API,Amazon Q Business使用来自身份感知凭据的用户身份,检索所请求的文档的ACL,并验证用户有权访问该文档。在成功验证时,它为存储在阶段存储桶中的文档内容对象生成了预签名的URL,并将其返回给UI。getDocumentContent API呼叫(在上图中标记为3)。如果授权验证失败,则返回错误(在上图中标记为2)。
然后,UI层可以使用预签名的URL在Web浏览器中显示文档内容,或将其下载到用户的本地计算机中。需要身份意识的凭据和授权验证可确保只有授权访问文档的身份验证的用户才能查看或下载文档内容。预先签名的URL的有效性限于5分钟。在提供预先签名的URL并下载文档内容后,Amazon Q Business或AWS无法控制预先签名的URL以及文档内容,并遵循共同的安全责任模型,进一步保护该文件是客户的责任。
要获取Amazon S3可单击URL的动手体验,请按照本文中的说明使用Amazon Q Business应用程序创建AI助手,并使用S3存储桶配置为数据源,然后将某些文件上传到数据源。您可以使用提供的示例数据Sampledata.zip或选择您选择的一些文件。然后,您可以使用Amazon Q Business Web体验来询问有关您摄入的数据的一些问题,并使用对问题的回答中的源参考URL查看或下载引用的文档并验证您从AI助手那里获得的回答。我们还展示了如何使用AWS命令行接口(AWS CLI)使用Amazon Q Business API使用Amazon S3可点击URL功能。
使用Amazon S3可单击的URL的注意事项
使用Amazon S3可单击的URL时考虑以下内容:
- 在撰写本文时,Amazon S3可单击的URL功能可在亚马逊Q商业应用程序使用AWS IAM身份中心或者IAM联邦用于用户访问管理,不可用亚马逊Q业务应用程序使用匿名模式创建。
- 如果您已经在Amazon Q Business应用程序中使用了Amazon S3数据源,则必须执行Amazon S3可点击URL功能的数据源的完整同步,以便您的用户可用。
- 如果您已经使用Amazon Q Business Web体验供用户与您的AI助手进行交互,则必须将以下权限添加到AWS身份和访问管理(我是)角色对于Amazon Q业务网络体验:
{“ sid”:'“效果”:“允许”,“行动”:[“ qbusiness:getDocumentContent”],“资源”:[âââââ阿人:aws:qbusiness:{{region}}:{{source_account}}:application/{application/application_id}}ââââââ€aws:qbusiness:{{region}}:{{source_account}}:application/{application_id}}/index/*]}
先决条件
要使用您自己的AWS帐户中的本文中的说明部署解决方案,请确保您有以下内容:
- 一个AWS帐户
- 亚马逊S3和AWS IAM身份中心权限
- 创建Amazon Q应用程序,AWS资源以及IAM角色和政策的特权
- AWS服务和AWS CLI的基础知识
- 遵循步骤设置亚马逊Q业务如果您首次使用Amazon Q Business
创建您的S3存储器并上传数据
选择一个AWS区域亚马逊Q业务可用请记住,您必须在此示例中创建所有AWS资源。如果您已经有一个带有几个文档上传的S3存储桶,则可以将其用于此练习。否则,如果说明准备S3存储库作为数据源,请参阅创建一个通用存储桶。下载并解压缩Sampledata.zip到您当地的计算机。打开您在Amazon S3控制台上创建的S3存储桶,并上传ACME项目空间,HR数据的内容,并帮助文件夹到S3存储桶中。
以下屏幕截图显示上传文件的列表。
创建Amazon Q业务应用程序
根据您选择的用户访问管理方法,创建一个IAM身份中心集成的亚马逊Q业务应用程序或一个IAM联合了亚马逊Q业务应用程序。在撰写本文时,Amazon S3可单击的URL不可用带有匿名访问的亚马逊Q业务应用程序。
要创建IAM身份中心集成的Amazon Q业务应用程序,请完成以下步骤:
- 在亚马逊Q业务控制台上,选择申请在导航窗格中。
- 选择创建应用程序。
- 为了申请名称,输入唯一名称或使用自动生成的名称。
- 为了用户访问, 选择身份验证的访问。
- 为了结果, 选择网络体验。
- 为了访问管理方法, 选择AWS IAM身份中心。
如果在您的帐户或您的帐户所属的AWS组织中正确配置IAM身份中心,并且在同一区域中,则您将看到有关已连接到IAM身份中心实例的应用程序的消息。
- 选择可以访问此应用程序及其订阅层的用户。在这篇文章中,Q Business Pro和Q Business Lite订阅层都将起作用。选择
- 创造。创建一个索引
为了准备配置数据源,您必须首先
创建一个索引。完成以下步骤:
- 在亚马逊Q业务控制台上,选择申请在导航窗格中。
- 打开您的申请。
- 在下面增强在导航窗格中,选择数据源。
- 选择添加索引。
- 选择创建一个新索引。
- 为了索引名称,保持自动生成的名称。
- 为了索引供应,选择您的首选供应方法。对于这篇文章,要么企业或者起动机会起作用。
- 离开单位数量AS 1。
- 选择添加索引。
创建过程需要几分钟才能完成。
创建数据源
要配置您的Amazon S3数据源,请完成以下步骤。有关更多详细信息,请参阅使用控制台将Amazon Q业务连接到Amazon S3。
- 在亚马逊Q业务控制台上,选择申请在导航窗格中。
- 打开您的申请。
- 在下面增强在导航窗格中,选择数据源。
- 选择添加数据源。
- 在添加数据源页面,选择亚马逊S3作为您的数据源。
- 为了数据源名称,输入名称。
- 为了我的角色, 选择创建新的服务角色。
- 为了角色名称,保持自动生成的名称。
- 在下面同步范围,输入您之前创建的S3存储桶的位置。
- 为了同步模式, 选择完全同步。
- 为了频率, 选择按需运行。
- 选择添加数据源。
- 创建数据源后,选择立即同步启动数据源同步。
数据源同步完成需要几分钟。
这数据源页面显示了数据源的状态,如以下屏幕截图所示。
现在让我使用上传文件创建数据源。
- 在数据源页面,选择添加数据源。
- 选择上传文件。
- 在下面选择文件, 选择选择文件。
- 打开您解压缩示例数据并选择文件的位置
national_park_services_infograph.pdf。
选择
- 上传将文件上传到索引。与您的AI助手互动
现在是时候测试AI助手了。
在以下各节中,我们演示了如何使用Amazon Q Business Web体验和API与您的AI助手进行互动。
使用Amazon Q Business网络体验
在Web浏览器窗口中打开Amazon Q Business应用程序的部署URL,以启动您的AI助手的Web体验,并登录为订阅用户之一。
网络体验开始后,请根据您索引的数据输入提示。如果您使用帖子中提供的示例数据,则可以使用提示 - 如下屏幕截图所示,员工获得健康福利的资格标准是什么?当您查看响应下面的参考资源时,您会注意到文件名旁边的下载图标,您可以使用该图标下载文件以查看。
选择文件名并选择节省将文件保存到计算机。
请记住,尽管Amazon Q Business会检查ACL,以确认您有权在下载之前访问该文档,但任何可以访问您下载该文件的计算机的人都可以访问该文档。
选择浏览器中的下载状态图标,然后选择打开图标以打开文件。
该文档将打开您的参考,如以下屏幕截图所示。
现在,让我们查看PDF文档的示例,在这种情况下,哪个是包含您上传的文件的数据源,以响应提示。选择文件名时,文档将在新选项卡中打开。
以下屏幕截图在“新浏览器”选项卡中显示了PDF。
使用Amazon Q Business API
在本节中,我们将展示如何使用AWS CLI来体验使用API时点击URL的工作方式。为了验证最终用户已进行身份验证并获得其用户ID和基于组的资源的精细授权,这是Amazon Q Business API的一个子集(聊天,,,,chatsync,,,,listConversations,,,,ListMessages,,,,删除,,,,putfeedback,,,,getDocumentContent
)需要认同意识AWS SIG V4凭据对于代表API调用的身份验证的用户。您必须使用适当的过程根据您的Amazon Q Business Application用户访问管理是否配置IAM身份中心或 IAM联邦。您可以通过在安装AWS CLI的命令行上设置环境变量来应用这些凭据;为了方便起见,您可以选择AWS Cloudshell。
首先,使用chatsync
API查询您的Amazon Q业务应用程序:
aws qbusiness chat-sync-区域<your-aws-region> - application-id <your-amazon-q-business-application-id> - 用户消息“获得健康福利的资格标准是什么?”
此命令将获得类似于以下内容的响应:
{``对话':“ <your-corversation-id>”,``SystemMessage':“如果员工任命超过六个月(至少六个月再加上六个月加一天),则有资格获得健康福利,而半场或更长的时间群则有资格。合格的员工自任命之日起有60个日历,或者有允许的活动可以参加健康计划,或者在公开注册期间招募健康计划。”````SystemMessageId'':“ <your-system-message-id>”,“ usermessageid”:“ <your-user-message-id>”,ââ– succeattribites”:[{{–“标题”:“员工+健康+福利+策略.docx”,''''''':“ \ nemployee健康福利政策本文件概述了员工健康福利的政策。如果有六个月以上(至少六个月)(至少六个月)(至少六个月),福利资格的员工有资格获得健康福利(加上一天或更多的时间,有资格的日期或有资格的临时时间。招募时期,您的职位上的疑问,您可能会在每年的9月和10月在开放式上进行更改,以更改您的福利。办公室。“”ââ–“引用”:1,–“ TextMessagesegments”:[ - - - ''''' - '“'”文本:“如果他们任命超过六个月(至少六个月再加上六个月再加上一天)和半场或更长时间的时间基础,则有益的好处是合格的员工。合格的员工有60个日历日,从任命日期或在健康计划期间或在开放式招募期间开始,或者在开放式报名阶段中注册'' - - - ],âââ– documentId':“ s3:// <your-s3-bucket-name>/demodata/hr-data/hr-data/employee+healthey+health+benefits+policy.docx”,''索引':“ <<index-id of your-amazon-q-business-application>”,'dataSourceId':“ <data-source-iD-your-s3-data-source>” -],“失败的”:[]}一个
接下来,使用getDocumentContent
API使用来自源属性的信息chatsync
API响应以下载并向用户显示文档:
aws qbusiness get-document-content - 区域<your-aws-region> - application-id <your-amazon-q-business-application-id> - document-id <document-id-from-from-the-source-attributions> - index-id <index-id <index-id-from-the-source-attributions> - data-source-id <data-source-id-from-the-source-attributions> - - 输出格式原始
当亚马逊Q业务收到getDocumentContent
API调用,ACL在存在时进行了验证,以确认授权访问文档的用户,然后返回一个简短的间隔预先签名的URL,以响应成功的调用getDocumentContent
您可以使用的API下载或查看文档:
{“ presignedUrl”:“ <presigned-url到阶段的文档 - 文档>”,“ MimeType”:“ <Mime-type of-typemument>”}
故障排除
本节讨论您在使用时可能会遇到的一些错误Amazon S3可单击的URL对于您与Amazon Q Business Powered AI助手的对话中的源参考。
参考对您的Amazon S3连接器进行故障排除有关您可能会看到Amazon S3连接器的错误代码的信息,并建议进行故障排除操作。如果打开Amazon Q Business应用程序时遇到HTTP状态代码403(禁止)错误,则意味着用户无法访问该应用程序。要找到共同的原因以及如何解决这些原因,请参阅故障排除亚马逊Q业务和身份提供商集成。
- 完全同步在尝试从Amazon S3或上传文件数据源访问引用的URL时,用户会收到以下错误消息:错误:无法下载此文档,因为原始文档下载功能需要在07/02/2025之后执行完整的连接器同步。您的管理员尚未完成此完整同步。请联系您的管理员,以要求对数据源的完整同步。执行Amazon S3数据源的完整同步后,可以解决此错误,或者从上传的文件数据源中删除文件并再次上传它们。
- 您无法再访问对话历史记录中引用的文档``在浏览对话历史记录时,用户从Amazon S3数据源中选择了一个参考URL,并且可以通过以下错误查看或下载文件: - 错误:您不再有权访问此文档。自您上次访问以来,本文档的访问权限已更改。如果您认为应该可以访问此内容,请联系您的管理员。此错误意味着随着数据源更改而配置的S3存储库中文档的权限,因此用户不再授权访问该文件,并且ACL在数据源Sync中的Amazon Q Business Index中更新了。如果用户认为他们应该可以访问该文档,则必须联系管理员以解决ACL并执行数据源同步。
- 您尝试访问的文档不再存在``当浏览对话历史记录时,用户从Amazon S3或上载文件源选择一个参考URL,并且可以使用以下错误查看或下载文件:错误:您尝试访问的文档不再存在于数据源中。自上次引用以来,它可能已被删除或移动。如果您需要访问此文档,请与管理员联系。此错误意味着该文档已从S3存储桶中删除或移至其他位置,因此在数据源同步期间的特定文档ID中也从Amazon Q Business Index和登台存储桶中删除。当对话之后的管理员删除了来自上传文件数据源的文档时,此错误也将显示。如果用户认为不应删除文档,则应联系管理员,以尝试还原文档并执行数据源同步。
- 您可以下载此文档,因为您的网络体验缺乏所需的权限当用户从Amazon S3选择参考URL或上传文件数据源时,他们可以通过以下错误查看或下载文件:错误:无法下载此文档,因为您的Web体验缺乏所需的权限。您的管理员需要更新Web体验的IAM角色,以包括GetDocumentContent API的权限。请联系您的管理员以要求此IAM角色更新。管理员可以通过更新Web体验的IAM角色来解决此错误getDocumentContent
API,如本文早期的注意事项部分所讨论的。
清理
为避免产生未来的费用并清理未使用的角色和政策,请删除您创建的资源:Amazon Q应用程序,数据源和相应的IAM角色。
完成以下步骤:
- 要删除Amazon Q应用程序,请转到Amazon Q Console,然后在申请页面,选择您的应用程序。
- 在动作下拉菜单,选择删除。
- 要确认删除,请输入
删除
在现场选择删除。等到您收到确认消息;该过程最多可能需要15分钟。 - 要删除您在此练习中创建的S3存储桶,清空水桶进而删除水桶。
- 删除您的IAM身份中心实例。
结论
在这篇文章中,我们展示了如何根据您存储在S3存储器中的企业文档或直接将文档上传到数据源的企业文档来建立AI助手。Amazon S3可单击的URL提供一种用户友好的机制,供经验验证的用户安全查看或下载对用户查询的响应,验证准确性并实践负责任的AI的文档,这是企业AI助手解决方案的关键成功因素。
有关Amazon Q Business S3连接器的更多信息,请参阅使用Amazon Q S3连接器从Amazon S3发现见解。
关于作者
Abhinav Jawadekar是AWS亚马逊Q业务服务团队的主要解决方案架构师。Abhinav与AWS客户和合作伙伴合作,帮助他们在AWS上构建生成的AI解决方案。