### **#「构」向云端,构建者征文大赛#**
re:Invent 2023 带来的全新技术风向标。在本次大会期间,我们举行了「构」向云端,构建者征文大赛,邀请构建者们一同提笔畅想生成式 AI 与云碰撞的无限可能。本次赛事征集到了众多优秀文章,我们将陆续和大家一起分享精选作品,一起「构」向云端,感受技术的魅力!
> **本文作者 robin**
![image.png](https://dev-media.amazoncloud.cn/fe46f36101a54a48897caad3986de55d_image.png "image.png")
随着生成式 AI 逐渐火热,我们迎来了许多创新和变革的机会。一年一度的亚马逊云科技 re:Invent 2023 也带来了许多前沿的技术,其中亚马逊云科技首席执行官 Adam Selipsky 介绍的 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 让我印象深刻,这预示着生成式 AI 的又一个里程碑。
在本文中,我们将探讨 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 是什么以及它能为我们做些什么,详细介绍如何使用 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 来构建知识库,并分享一些实际案例。无论是个人学习,还是团队协作,[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 都将是您的理想之选。
让我们一起深入了解 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail),并探索如何在知识库建设中充分发挥其潜力。
### **Amazon Q 是什么**
[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 是一款基于生成式 AI 的助手,通过连接如代码仓库、网址、数据库、文档、email 等各种信息库来帮助企业或者个人以自然语言对话的方式,提供历史数据检索、摘要生成、内容撰写等。
### **Amazon Q 与通用生成式 AI 的区别**
通用的生成式 AI 最大问题在于,内容来源于互联网的公开数据,无法针对特定的数据源进行训练,比如无法跟企业内部数据、业务相结合,也无法满足个人的个性化需求。记得当时使用某通用生成式 AI,遇到最大的问题在于数据源的限制,为了让它学习某个特定的技能,需要将内容拆分再提供给它学习,这大大限制了生成式 AI 的能力。而 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 则具有以下优势:
- 与特定业务相结合;
- 支持多种数据源;
- 将权限引入生成式 AI 中,在企业中可以根据组织架构对人员设置不同的访问权限;
- 使用 [Amazon Kendra](https://aws.amazon.com/cn/kendra/?trk=cndc-detail) 可以将已训练完成的数据源进行共享,大大缩短训练时间。
接下来我们用 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 打造一个 Rust 知识库。
### **用 Amazon Q 打造知识库**
#### 1、第一步
打开 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 登录或创建账号,进入如下页面。在页面的开头就清晰描述 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 的工作方式。点击【Create Application】,填写 Application 基本信息,点击【Create】进入下一步。
![image.png](https://dev-media.amazoncloud.cn/c1d7dfc734824807a48f9c52c70d3f43_image.png "image.png")
#### 2、第二步
为应用程序选择索引器。有以下两种索引器:
- native retriever
- existing retriever
很遗憾,未能从官方文档中了解到这两种索引器的使用场景。但经过操作发现,native retriever 只能在当前应用下使用,existing retriever 一旦创建可以被多个应用使用。第一次使用我选择了 native retriever。
![image.png](https://dev-media.amazoncloud.cn/294117abd28a4c798948fe264005fd67_image.png "image.png")
#### 3、第三步
添加数据源,[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 提供了多种数据源,我选了其中的 Web crawler ,填写数据源名称、url 等关键信息。其他信息按照提示填写。特别注意 Sync scope,尽可能缩小范围,避免爬取诸多无用的页面,进而影响索引速度和内容相关性。
![image.png](https://dev-media.amazoncloud.cn/5cf4a1bc292641bb91f32af2e516c5da_image.png "image.png")
#### 4、第四步
点击【Sync now】后,需完成两个步骤:
- 抓取页面内容
- 为页面创建索引
网页数量越多,完成以上两步的时间就越久。
比较耗时的步骤在于创建索引。所以尽可能缩小爬取范围。其中:
- rust_book1:rust 语言圣经中文版
- rust_book2:rust 语音官方文档(英文版)
- rust_book3:rust 语音官方文档(中文版)
- rust_book4:Rust语言实战(英文版)
- rust_book5:Rust语言实战(中文版)
![image.png](https://dev-media.amazoncloud.cn/4bc6b937799d4a0faf2a65fc3f18580f_image.png "image.png")
#### 5、第五步
点击【Preview web experience】进行预览,将会打开一个对话界面进行测试。也可以通过最后一步使用 IAM 集成符合 SAML 2.0 的外部身份提供商 (IdP) 的方式进行部署对外通过访问。
![image.png](https://dev-media.amazoncloud.cn/9cd777cf1f3944c6b0cd04d8ecd21053_image.png "image.png")
测试结果如下,确实如官方文档所言目前仅支持对英文文档进行索引,虽然能用多种语言进行对话,但英语对话的效果最佳。
![image.png](https://dev-media.amazoncloud.cn/53a6f358c9164532a16832e785e4f11c_image.png "image.png")
### **总结**
[Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail) 旨在改变企业与数据交互的方式,可以帮助用户解答特定于业务的问题,而不需要手动搜索。同时,也可以通过亚马逊云科技管理控制台、公司文档页面、Slack 等多个渠道访问,并保证数据隐私和安全。
想象在公司内的几个场景:
- 一个新人,想要了解公司的业务;
- A 项目现在谁负责,都有谁参与?
- A 项目 B 业务板块怎么操作,文档在哪?
- ……
当有了 [Amazon Q](https://aws.amazon.com/cn/q/?trk=cndc-detail),这一切都会发生改变,我们期待的未来已来~
*(本文经过后期编辑整理后发布)*
**#欢迎观看更多精彩作品#**
「构」向云端,构建者征文大赛现已评奖,欢迎大家扫描二维码,阅读更多精彩内容!
![image.png](https://dev-media.amazoncloud.cn/d9fa0408dec9479eb2a3d9a8dacabc21_image.png "image.png")
![开发者尾巴.gif](https://dev-media.amazoncloud.cn/4b71313b7b7b46d19092a52837415f18_%E5%BC%80%E5%8F%91%E8%80%85%E5%B0%BE%E5%B7%B4.gif "开发者尾巴.gif")