亚马逊AWS官方博客

亲身体验!人工智能对话从此无障碍 —— Sample Client for Amazon Bedrock 使用指南

正文目录

1. 概述

Sample Client for Amazon Bedrock 作为一个开源的桌面应用,为用户提供了友好的图形界面,让每个人都能够轻松访问和使用 Claude 3 的强大功能。用户可以自定义 Claude 3 的人设,赋予它不同的角色和个性,使对话过程更加生动有趣。同时,还支持多模态交互,用户可以上传图片、文档等多种形式的内容,Claude 3 会综合分析并给出深入的见解。

无论是日常工作、学习研究,还是娱乐休闲,只要通过客户端唤起 Claude 3,就能获得及时的智能辅助,提高工作效率,拓展知识视野。这个应用将 Claude 3 的强大能力带入了每个人的桌面,开启了人工智能普及化的新时代。

2. 安装

请通过以下链接下载最新版本:

下载链接

在客户端启动后,点击齿轮图标来配置您的 AWS 区域和凭证。然后您就可以开始使用了。

3. 用户使用说明

3.1 基本界面

3.2 配置 AWS 环境使用环境,AK/SK 和区域,选择合适的默认模型

主界面中左下角选择,这个六边形图标

进入设置界面后,下拉到如下图的位置,进行配置

模型服务商:默认为 AWS

AWS Region:这个参数为开通 Bedrock Claude 模型的区域,由企业的 AWS 管理员提供。

Access Key / Secret Key(AK / SK):由企业 AWS 管理员统一提供,对于管理创建 AK/SK 方法见下一个章节。

模型:目前支持 SonnetHaiku2 种模型,Sonnet 效果更好,Haiku 提供更高性价比更快运行速度。

设置完毕后,点击右上角关闭设置界面,可以开始正常使用了。

3.3 常规使用

点击新的聊天按钮,即可开启面具(Mask)选择界面。

面具选择,对于使用者来说,这是对聊天机器人的人设定义。选择合适的面具,可以有效提高任务完成的成功率。其本质就是在 Claude 3 调用参数的 System 中输入一段文本。

工具栏

会话设置:用于当前会话中模型参数设置。

上传图片:由于 Claude 3 属于多模态的模型,因此我们可以上传一张图片,基于图片来和 AI 机器人聊天,例如识别发票,看图理解。

主题设置:默认为自动,支持亮色和暗色 2 种主题。

快捷命令:快速发送常见命令。

预设面具:可以切换当前会话的面具,以适应其他任务目标。

清理会话:可以清理历史聊天记录,历史聊天记录会对同一个会话中的下一个问题产生关联。

模型切换:在单个会话中切换到其他模型。目前支持选项 SonnetHaiku

开始聊天

在聊天框中输入文本,然后按发送按钮或者回车开始聊天。

3.4 面具

自定义面具

在主界面左上角找到面具按钮

点击查看全部,进入预设面具界面。在这里我们可以在列表中查看预设的面具。如果我们希望自定义一个新面具,点击右侧新建按钮,进入编辑预设面具对话框。

在这个对话框中,我们点击新增一条对话。选择 system 输入你需要的新的 AI 人设。

设置角色头像,填写角色名字。直接关闭对话框后,新角色就已经生成。

导入 / 导出

在面具预设界面右侧,有 2 个按钮,导出导入。“导出”可以快速将本地的预设信息批量导出,用于批量分享给他人;“导入”则是将别人的预设配置文件批量导入到本地客户端中。

3.5 使用场景举例

社交媒体文案编撰

使用“小红书写手”面具生成文案

假设我是一名“萌宠博主”,我们每天都需要更新我们的营销号。点击面具按钮,选择小红书写手,通过这个面具,我们只需要给出我们想要编写的主题,AI 机器人将自动套用模板,生成我们需要的文档。从上图这个例子里我们还可以看出,文案不仅有了风格化,并且在文案的模板中预留了图片放置位置的信息,方便我们在营销工具中进行二次加工。

甚至当我不知道今天要更新的内容的时候,我们还可以向 AI 机器人提问。“基于历史信息,我今天写什么关于玄凤鹦鹉的主题比较好?给出 3 个选项。”AI 机器人会给出我们一些选项,用于激发我的灵感。在我们选定主题后,继续重复上面一个步骤,生成主题相关内容。

PPT 演讲助手

为了 AI 机器人更加能适应我这个人物,我在这里自定义了一个面具,在 system 这个对话中输入:

你的一个 PPT 演讲助手,你将帮助我识别 PPT 图片里的内容,基于这一页 PPT 的概要给出,我要讲解的内容概要和进一步说明的文本。输出格式为 Markdown。

回到聊天框中,我上传了一张 Anthropic 发展史和 Claude 模型发布的节奏的一张图。

接下来,我们需要对这一页 PPT 的重点给出一些提示,让 AI 机器人辅助我们生成演讲的提要和拓展内容。

我们发送的内容,包含一张图片和文本信息

AI 给出的回答

从结果上看,我们可以看到 AI 用正确的格式,根据我们所需要关注的内容生成了符合要求的答案。这对于经常需要做 PPT 演讲的人来说,可谓是效率提升的利器。

产品原型设计

同样,我们新建一个面具,system 中输入:

你是一个 APP 原型开发的助手,你的任务就是协助产品经理设计产品原型。你会根据需求,给出实现的路径,并说明每个步骤的外部依赖条件。

现在我们输入我们的需求:

我需要开发一个 app 用于公司 BI dashboard 的展示,这个 app 将基于 AWS 的云服务构建。这个 app 应该包含以下功能:用户权限校验,不同用户应该根据自己的权限只能看到自己授权的信息,数据报表根据用户订阅每天都会定时发送邮件到电子邮箱。尽量使用 serverless 服务进行构建。

AI 机器人的回复

从这个例子里看出,AI 对于我们非常简要的需求描述做出了合适的理解,并且能够根据要求,将需求中的需求实现路径以及外部依赖条件做了明确阐述。AI 可以大大提高我们对需求文档的编撰速度,甚至能够给出一些超出个人知识范围以外的外部依赖描述,对产品在原型设计阶段起到非常重要的风险预警提示作用。

编码助手

对于 Cluade 3 而言,编码这个任务也是非常擅长的场景。我们希望我们输入需求,AI 就能一步一步的给出参考的样例代码。因此需要新建一个面具,在 system 中输入:

你是一位 Python 编码专家,你非常擅长程序语言的开发和应用程序的设计。你会根据需求,分析出满足需求的步骤,并针对每个步骤实现对应的代码,最后会将所有代码合并到一个文本中输出。

保存面具为“Python 编程助手”。

在聊天框中输入我们的编码需求:

贪吃蛇游戏

我想用 pygame 做一个贪吃蛇游戏。

基本玩法

  • 游戏会生成一个地图;
  • 我可以用键盘上下左右键控制蛇的移动,蛇会一直沿着当前方向移动;
  • 地图里会随机生成一个食物,食物被吃掉后会重新生成;
  • 当蛇吃到食物的时候,身体会变长 1 格。

失败条件

  • 蛇撞到地图边缘
  • 蛇撞到自己的身体

以下为 AI 机器人的回复:

我将以上代码复制到了 snake.py 文件中,用 python 运行,可以获得以下运行效果。

从结果上看,生成的代码已经完全满足了我输入的需求。在这里我们不得不说,Claude 3 对于代码辅助确实非常有实用性。

4. AWS 管理员指南

4.1 IAM  User AK/SK 创建

针对于这个使用场景,建议为每个用户创建独立的 IAM User 的 AK/SK,以方便账号管理。创建方法如下:

第一步,登录 AWS 账号后,搜索 IAM,点击进入 IAM 服务。

第二步,点击侧边栏策略,然后点创建策略,选择 JSON 方式进行配置,将以下 JSON 配置粘贴进去。策略名称保存为“BRClient-Policy”。

{
        "Version": "2012-10-17",
        "Statement": [
                {
                        "Sid": "InvokeModel",
                        "Effect": "Allow",
                        "Action": [
                                "bedrock:InvokeModelWithResponseStream",
                                "bedrock:InvokeModel"
                        ],
                        "Resource": "arn:aws:bedrock:*::foundation-model/*"
                },
                {
                        "Sid": "ListFM",
                        "Effect": "Allow",
                        "Action": [
                                "bedrock:ListFoundationModels"
                        ],
                        "Resource": "*"
                }
        ]
}

然后点击侧边栏用户,进入用户列表界面。

第三步,点击创建用户按钮。

第四步,填写给 BRClient 使用的用户名,点击下一步

第五步,选择权限。选择直接附加策略,输入 BRClient-Policy 搜索,选择 BRClient-Policy,点击下一步

第六步,预览填写内容,点击创建用户

第七步,用户列表中点击,刚创建的用户名。在用户详情页中,选择安全凭证。在访问密钥中点击创建访问密钥

第八步,在访问密钥最佳实践和替代方案中,选择本地代码

第九步,设置标签,用于后期的成本统计,最后创建访问密钥

最后一步,获得 AK / SK,或者下载.csv文件 留作备份。

注意,如果关闭这个页面后,将无法再获得这个 AK/SK,只能删除重新创建。

4.2 Claude 3 模型访问申请

在进入 Amazon Bedrock 服务后,需要以下几个步骤:

  1. 在侧边栏点击“模型访问权限”
  2. 在右上角点击“管理模型访问权限”
  3. 点击“提交应用场景详细信息”
  4. 在 Anthropic 下找到 Claude 3 Sonnet 模型,并在前面打勾
  5. 最后在右下角点击“保存更改”

开通后,我们可以看到模型后面的访问状态,已经是处于“已授予访问权限”。

5. 开发者指南

由于该项目仍在快速迭代中,我们建议开发人员按照以下步骤自行构建版本:

  1. git clone 当前项目:git clone https://github.com/DamonDeng/BRClient.git
  2. 安装 yarn
  3. 进入项目目录
  4. 运行 yarn install 安装项目依赖
  5. 运行 yarn app:dev 开启桌面模式,或者运行 yarn dev 本地服务器模式,用浏览器查看运行
  6. 选项, 如果你想让程序运行像一个 app,运行 yarn app:build 构建成运行文件

6. 写在最后

综上所述,Sample Client for Amazon Bedrock 将 Claude 3 这个强大的人工智能助理带入了每个人的桌面,为普及人工智能、提高工作效率贡献了重要一力。但这仅仅是一个开端,未来人工智能的发展将会给我们的生活和工作带来更多革命性的变化。

让我们共同期待,在不久的将来,通过类似这样的创新产品,每个人都能亲身体验到人工智能带来的美好变革,开启一个更加智能、高效、有趣的新时代。

最后,感谢 Sample Client for Amazon Bedrock 的开发者们为该项目做出的贡献。

开发者名单(排名不分先后,按姓名拼音字母排序)

  • 郭强
  • 黄俊杰
  • 刘加昌
  • 买乌
  • 粟伟
  • 谢正伟
  • 张孝峰

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

参考链接

本篇作者

林业

AWS 资深解决方案架构师,负责基于 AWS 的云计算方案的咨询与架构设计。拥有超过 18 年研发经验,曾打造千万级用户 APP,持续开发 Github 开源项目获 3000+ 星。在零售、游戏、IoT、智慧城市、汽车、电商等多个领域都拥有丰富的实践经验。现专注企业云原生架构和 GenAI 发展,致力将前沿技术应用于企业业务场景,推动数字化转型。热爱技术,追求卓越,乐于分享交流。