本文作者 许业宝
VSTECS 云工程师
亚马逊云科技云博主
信息网络布线项目市赛一等奖
CSDN 云计算领域新星创作者
BRClient 概述
BRClient 作为一个开源的桌面应用,为用户提供了友好的图形界面,让每个人都能够轻松访问和使用 Claude 3 的强大功能。用户可以自定义 Claude 3 的人设,赋予它不同的角色和个性,使对话过程更加生动有趣。同时, BRClient 还支持多模态交互,用户可以上传图片、文档等多种形式的内容, Claude 3 会综合分析并给出深入的见解。
BRClient 特性
跨平台的 Amazon Bedrock 客户端;
让每个人都能够轻松访问和使用 Claude 3的强大功能;
销售与合作伙伴快速推广工具, GTM 利器;
支持多模态交互,用户可以上传图片、文档等多种形式的内容;
提供“面具”,为 Claude 3 赋予不同的人设与个性。
BRClient下载链接
GitHub 相关内容可扫描下方二维码查看;对于 Windows 用户,解压缩 zip 文件,然后双击 msi 文件进行安装;而对于 Mac 用户,解压缩 zip 文件,然后直接打开 BRClient.app ,以上均可扫描下方二维码查看下载。
GitHub 相关内容
扫码了解更多
windows 下载链接
扫码了解更多
Mac 下载链接
扫码了解更多
左右滑动查看更多
BRclient 安装步骤
(以 Windows 版本为例)
解压 brclient_windows.zip 压缩包,双击打开 BRClient.msi ,开始安装操作。
点击 Next 。
选择 BRClient 安装位置。
点击 Install 开始安装。
点击 Finsih ,完成安装。
安装完成, BRClient 界面如下:
BRClient 界面介绍
1
聊天界面
打开 BRClient 之后,进入该界面,可以开启聊天模式。
当输入内容过多的时候,点击此处,可以将输入框切换成一个更大的输入框界面,方便输入更多的内容以及后续查阅。
扩展后的输入框界面如下,若点击右上角的放大按钮,可以进一步放大输入框界面。
2
面具界面
面具选择,对于使用者来说,这是对聊天机器人的人设定义。选择合适的面具,可以有效提高任务完成的成功率。
众多预设角色面具任你挑选:
3
设置界面
设置界面中含有终端设置选项可以调整,包括基础常规的设置,模型服务商的选择和切换,以及模型( model )的精细化设置和调配。
4
工具栏界面
会话设置:用于当前会话中模型参数设置。
上传图片:由于 Claude 3 属于多模态的模型,因此我们可以上传一张图片,基于图片来和 AI 机器人聊天,例如识别发票,看图理解。
主题设置:默认为自动,支持亮色和暗色 2 种主题。
快捷命令:快速发送常见命令。
预设面具:可以切换当前会话的面具,以适应其他任务目标。
清理会话:可以清理历史聊天记录,历史聊天记录会对同一个会话中的下一个问题产生关联。
模型切换:在单个会话中切换到其他模型。目前支持选项 Sonnet 和 Haiku。
5
快捷指令
在搜索框中,输入 / ,或者点击类似魔法棒按钮即快捷指令,让BRClient开启众多角色扮演辅助我们来完成不同场景下的日常办公学习的需要。
6
在 Amazon 控制台中申请 AK/SK
注意:如没有配置 AK/SK 或申请 Claude 3 模型访问,会出现如下报错信息,提示 Amazon 认证未设置,需要前往设置页面进行配置。
首先,登录到 Amazon Console 控制台,导航至 IAM 界面,找到如下页面,点击创建访问密钥。
按照如下步骤创建访问密钥即可。
使用案例选择:选择本地代码
勾选确认框,单击下一步。
设置描述标签- Bedrock
创建完访问密钥,将访问密钥和秘密访问密钥本地保存好。
7
申请 Claude 3 模型访问申请
接着,导航至 Amazon Bedrock 界面,可以在搜索栏中搜索,如下图所示。
点击左侧导航栏中的模型访问权限,勾选需要请求模型访问权限,这里我们选择体验 Claude 系列模型。
模型访问请求已提交。
模型正在启动中,需等待加载完成。
显示已授予访问授权,表示可以体验 Claude 系列模型了。
8
在 BRClient 中配置 AK/SK 及区域
配置 Amazon 环境使用环境,AK/SK 和区域,选择体验的模型。
模型服务商:默认为 Amazon。
Amazon Region :这个参数为开通 Bedrock Claude 模型的区域,由 Amazon 管理员提供。
Access Key / Secret Key(AK / SK) :由Amazon 管理员统一提供,对于管理创建 AK/SK 方法见”在 Amazon 控制台中申请 AK/SK” 这一章节。
模型:目前支持 Sonnet 和 Haiku 2 种模型,Sonnet 效果更好, Haiku 提供更高性价比更快运行速度。
设置完毕后,点击右上角关闭设置界面,就可以开始正常使用了。
9
BRClient 初体验
测试翻译场景
以一个字幕翻译场景为例,在输入框中输入以下提示词 prompt :
接着,给出一段 《Loving Strangers》 的歌词,让它来进行翻译。
给出的翻译的内容非常贴切歌词意境。
测试事实问答场景
prompt :请列出 10 件 1949 - 2024 年世界上发生的科技大事
给出的输出结果,也基本符合历史事实,除了时间点上有些许偏差。
测试小说续写场景
prompt :小说续写 “偷偷藏不住”,要有声音,有画面感 要求 300 字。
以下是给出的输出内容,确实有看小说的那种感觉和味道。
代码辅助生成助手
接下来,我们让 BRClient 中的 Claude 3 模型充当代码专家,为我们秀一段 Python 代码, prompt 如下:
你是一位Python编码专家,你非常擅长程序语言的开发和应用程序的设计。你会根据需求,分析出满足需求的步骤,并针对每个步骤实现对应的代码,最后会将所有代码合并到一个文本中输出。现在我的需求如下:
贪吃蛇游戏
我想用pygame做一个贪吃蛇游戏。
基本玩法
- 游戏会生成一个地图;
- 我可以用键盘上下左右键控制蛇的移动,蛇会一直沿着当前方向移动;
- 地图里会随机生成一个食物,食物被吃掉后会重新生成;
- 当蛇吃到食物的时候,身体会变长1格。
失败条件
- 蛇撞到地图边缘
- 蛇撞到自己的身体
当给出上述 prompt 之后, Claude 3 模型迅速给出了如下完整代码示例。
import pygame
import random
# 初始化Pygame
pygame.init()
# 设置游戏窗口大小
window_width = 800
window_height = 600
window = pygame.display.set_mode((window_width, window_height))
pygame.display.set_caption("贪吃蛇游戏")
# 定义颜色
black = (0, 0, 0)
white = (255, 255, 255)
red = (255, 0, 0)
green = (0, 255, 0)
# 定义蛇的初始位置和长度
snake_x = window_width // 2
snake_y = window_height // 2
snake_blocks = []
snake_length = 1
# 定义食物的初始位置
food_x = round(random.randrange(0, window_width - 20) / 20) * 20
food_y = round(random.randrange(0, window_height - 20) / 20) * 20
# 定义移动方向
move_x = 0
move_y = 0
# 定义游戏循环
game_over = False
clock = pygame.time.Clock()
# 游戏循环
while not game_over:
# 处理事件
for event in pygame.event.get():
if event.type == pygame.QUIT:
game_over = True
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
move_x = -20
move_y = 0
elif event.key == pygame.K_RIGHT:
move_x = 20
move_y = 0
elif event.key == pygame.K_UP:
move_x = 0
move_y = -20
elif event.key == pygame.K_DOWN:
move_x = 0
move_y = 20
# 移动蛇
snake_x += move_x
snake_y += move_y
# 检查是否吃到食物
if snake_x == food_x and snake_y == food_y:
snake_length += 1
food_x = round(random.randrange(0, window_width - 20) / 20) * 20
food_y = round(random.randrange(0, window_height - 20) / 20) * 20
# 更新蛇的位置
snake_blocks.append((snake_x, snake_y))
if len(snake_blocks) > snake_length:
snake_blocks.pop(0)
# 检查是否撞到边界或自己
if snake_x < 0 or snake_x >= window_width or snake_y < 0 or snake_y >= window_height or (snake_x, snake_y) in snake_blocks[:-1]:
game_over = True
# 清空窗口
window.fill(black)
# 绘制食物
pygame.draw.rect(window, green, (food_x, food_y, 20, 20))
# 绘制蛇
for block in snake_blocks:
pygame.draw.rect(window, white, (block[0], block[1], 20, 20))
# 更新窗口
pygame.display.update()
# 控制游戏速度
clock.tick(10)
# 退出Pygame
pygame.quit()
左右滑动查看完整示意
在输出完代码示例后,也给出了这段代码的编码思路及编码过程,为上述代码进行文字性说明和解释。
将上述给出的代码保存下来,在本地 VSCode 软件中运行。
最后,运行上述代码,即可得到如下游戏界面,开始游戏。
测试图片识别场景
识别 Amazon 认证徽章并进行比较
prompt :Explain difference among images
我们接下来测试一下模型的图像识别能力到底如何。我们提供上述两个 Amazon 认证的徽章给到模型,让其帮我们分析一下两张图片的差异。
当我们发出请求后,我们可以看到它给出了想要的回答。
prompt :将上述输出内容翻译成中文。
识别卡通头像并进行详细描述
在这一场景测试中,我们想要了解一下模型对图像识别及图像分析的细节把握上是否能够达到预期的效果,提供测试图片如下。
并附上此 prompt :describe this image
Cluade 3 模型给出了如下详细的回答。
接着,我们让其为我们翻译上面的这段输出内容。
prompt :翻译这上面的英文为中文
当我们阅读上述这段文字,再看提供的图像,发现描述得十分符合,很贴切图片内容,并且告诉我们这不是真人照片。
充当 Linux 终端
让模型充当 Linux 终端,从输入 pwd 命令开始,之后输入的命令都有对应的结果显示出来。具体操作如下:
输入 hostnamectl ,即可看到主机名详细信息。
输入 ip -c a 命令,可以看到网络配置信息。
使用 ping 命令,也可以有 ping 通的结果显示出来。
如此看来,很适合初学 Linux 的同学,过来把玩一下。
参考链接
BRClient 使用指南
扫码了解更多
前述特定亚马逊云科技生成式人工智能相关的服务仅在亚马逊云科技海外区域可用、第三方生成式人工智能内容并非由亚马逊云科技提供,亚马逊云科技中国仅为帮助您了解行业前沿技术和发展海外业务选择推介该服务。
星标不迷路,开发更极速!
关注后记得星标「亚马逊云开发者」
点击阅读原文查看博客,获得更详细内容
听说,点完下面4个按钮
就不会碰到bug了!