【Amazon Bedrock】基于Bedrock打造专属Roleplay AI角色⌈文末附最新活动预告不容错过⌋

慈云数据 2024-05-28 技术支持 35 0

文章目录

    • 精彩峰会上新啦🎊
    • 一、实验介绍
    • 二、创建资源
      • `申请Bedrock模型访问权限`
      • 创建IAM Policy
      • 创建IAM User
      • 创建IAM User的access key
      • 创建EC2
      • 三、部署聊天环境
        • 连接到实例
        • 安装Node.js
        • 安装SillyTavern
        • 四、开始和预设的角色聊天
        • 五、亚马逊云科技中国峰会精彩预告🎉

          640

          精彩峰会上新啦🎊

          亚马逊云科技中国峰会预告

          投资未来就趁现在,诚邀您参加亚马逊云科技中国峰会|开发者技能成长与发展专区,年度盛宴,一起探索、学习和成长!我们将推出一些系列生成式AI免费课程与认证学习内容,助力开发者掌握 AI 与云端技能,成为炙手可热的人才。无论您是初学者还是经验丰富的开发者,这里都将为您带来把握生成式AI技能成长的绝佳机会,帮助您"一站"上职场发展快车道。


          每日的"尖峰学堂"将带您轻松实现生成式AI必备技能入门,探索更多AI技术红利。限定的"备考训练营"将指导您如何从学到考,拿下全球认可的云计算与数据工程认证,现场还有免费考试优惠惊喜。金牌讲师“限时专班”及年度“技术博主”坐镇,教您如何轻松学习成为技术 Pro 并快速拿证,最佳"云师兄"更将组建"保过班",帮您在一个月内通过热门国际云认证考试。


          如果您已是亚马逊云科技认证持有者,认证精英会将提供场内专享会所礼遇,包括结识精英、免费拍摄证件照和领取限定好礼。此外,我们将悬赏"黄金夹克"寻找考取全部12个认证以上的您,并有3D卡牌游戏Card Clash等有趣体验等您来一探究竟!


          640

          一、实验介绍

          从0-1的构建一个Roleplay AI Character应用,具体可分为以下几个步骤:

          1. 创建资源
          2. 部署聊天环境
          3. 开始和预设的角色聊天
          4. 自定义角色卡
          5. 和自己定义的角色聊天

          image-20240427091730771

          二、创建资源

          需要在亚马逊云科技账号中创建和申请如下资源:

          1. 申请 Bedrock 模型访问权限;
          2. IAM User,以调用Bedrock中的模型;
          3. EC2,用于托管前端和角色生成模块。

          申请Bedrock模型访问权限

          打开 Amazon Bedrock 控制台 ,在 “Model Aceess” 详情页面,点击 “Manage model access”按钮,勾选“Mistral AI”模型,点击 “Request model access”。

          image-20240427092146510

          登录亚马逊云科技账号,进入控制台。在顶部搜索框中输入“Bedrock”,点击进入Bedrock控制台页面。

          image-20240427093457752

          展开侧边栏,将侧边栏拉到底部,点击“Model access”进入模型访问申请页面。

          image-20240427093515729

          在模型访问申请页面中,首先点击右上方的“Manage model access”。

          image-20240427093535137

          然后在“Anthropic”提供商提供的“Claude3 Sonnet”模型前打勾。

          注意:如果在提供商“Anthropic”后方的“Use case details”按钮为橙色,则您需要填写具体的使用用例后,才能够使用Claude3模型。

          image-20240427093623194

          勾选Claude3 Sonnet并填写使用用例后,滚动到页面底部,点击“Save changes”,完成模型访问的申请。

          image-20240427093641568

          创建IAM Policy

          返回到亚马逊云科技控制台,在顶部搜索框中输入“IAM”,点击Service中的“IAM”,进入IAM控制台。

          image-20240427092316414

          进入控制台后,点击左侧边栏的“Policies”,进入策略界面。点击右上方的橙色按钮“Create policy”。

          image-20240427092336271

          在Create policy界面中,从Service选栏中搜索“Bedrock”,并选中。

          image-20240427092350589

          接下来,需要配置如下内容:

          1. 在Actions allowed的Access level选项下,展开“List”下拉菜单,勾选“ListFoundationModels“;再展开“Read”下拉菜单,勾选“InvokeModel”和“InvokeModelWithResponseStream“,意味着此Policy能够对Bedrock中的基础模型进行List操作,并进行invoke,以及流式接收invoke大模型后的响应;

          image-20240427092431840

          1. 在Resources选项下,选中“Specific”,并勾选“foundation-model”后方的“Any”选项,意味着此Policy能够访问Bedrock中所有申请了访问权限的基础模型。检查无误后,点击右下角的“Next”。

          image-20240427092501365

          在Review and create页面中,为新创建的Policy命名,如“roleplay-invoke-bedrock”,点击右下角“Create policy”。

          image-20240427092516279

          创建IAM User

          IAM Policy创建好后,还需要将其附加到IAM User上,以使用User来访问服务。点击侧边栏中的Users,进入IAM User页面,点击右上方的“Create User”。

          image-20240427092607097

          填写User name,不要勾选下方的Provide user access to the 亚马逊云科技 Management Console,点击“Next”。

          image-20240427092621604

          在Set permissions界面中,在Permissions options下选择“Attach policies directly”,之后在下方的Permissions policies搜索刚刚创建的policy,勾选,点击“Next”。

          image-20240427092635797

          在最后的Review and create页面做最后检查,确认无误后点击“Create user”。

          image-20240427092651631

          创建IAM User的access key

          IAM User创建完成,接下来需要配置一个此user的access key,供聊天前端页面调用。点击刚刚创建的user,进入管理页面。

          image-20240427092721989

          在管理页面中,选择“Security credentials”标签卡,在Access keys一栏下点击“Create access key”,创建新的access key。

          image-20240427092745038

          创建access key的第一步会询问用途,在此处选择“Others”,并阅读下方关于access key的安全提示,保证access key的使用安全。然后点击“Next”。

          image-20240427092808927

          第二步中,可以给创建的access key打上标签,无特殊情况留空即可,直接点击“Create access key”。

          image-20240427092824750

          最后,access key创建完成,默认情况下Secret access key为隐藏状态,您可以点击“Show”按钮来显示明文。记录下access key,供workshop的后续步骤使用。注意:您只有这一次机会查看明文形式的access key,当点击“Done”退出创建页面后,将无法再获取到此access key的明文。请务必将access key妥善保管,或点击“Download .csv file”下载到本地并放置在安全位置。

          image-20240427092838451

          至此,IAM User配置完成。

          创建EC2

          在亚马逊云科技控制台顶部的搜索栏中,输入“EC2”,进入EC2的控制台页面。

          image-20240427092903566

          在EC2控制台中,点击侧边栏的“Instances”,进入实例页面,点击右上方的橙色按钮“Launch instances”创建新实例。

          image-20240427092923728

          在Launch an instance页面中,Name处填写任意名称。在Application and OS Images(Amazon Machine Image)选栏中,点击Ubuntu,在Amazon Machine Image中选择"Ubuntu Server 22.04 LTS (HVM)”。

          image-20240427092944665

          下方的Instance type中,在下拉选单中搜索“t3”,选择“t3.medium”类型。此为2核4G机型,能够运行聊天前端页面和角色编辑器。

          image-20240427093000389

          在下方的Key pair选项中,点击“Create new key pair”生成新的密钥对,后面您将使用此密钥登录到EC2服务器来配置聊天页面和角色管理器。

          image-20240427093017119

          image-20240427093033950

          点击“Create”后,密钥对的私钥将会自动下载到本地,请到浏览器的默认目录找到名为.pem的私钥文件,供后续步骤使用。

          在Network settings中,点击右侧的“Edit”编辑网络设置。其中,注意检查“Auto-assign public IP”是否为Enable,Firewall(security groups)选择“Create security group”,name填写任意名称,如“roleplay-SG“。

          image-20240427093107182

          在接下来的Inbound Security Group Rules中,需要配置三条规则:

          1. 默认应已经包含了一条ssh规则,检查其Protocol是否为TCP,Port range为22,Source type为Anywhere。
          2. 点击“Add security group rule”新建一条规则,Type选择“Custom TCP”,Port range填写“8000”,Source type选择“My IP”,以限制仅有您的IP能够通过此规则访问到EC2服务器;
          3. 在此点击“Add security group rule”新建一条规则,Type选择“Custom TCP”,Port range填写“8080”,Source type选择“My IP”。

          配置好Inbound Security Group Rules的页面应与下图类似。

          image-20240427093133856

          注意:如果您访问互联网的IP不固定或经过了多层NAT,则Inbound rule可能无法正确获取到实际访问IP。如果遇到无法访问服务的情况,请尝试将2、3两条inbound规则的Source type更改为Anywhere。但这意味着所有人都能够访问到您的EC2服务器的对应端口,可能会存在潜在风险。

          向下翻页,在Configure storage中,配置磁盘大小为30GB,最后在右侧检查一下创建实例的Summary,确认无误后点击Launch instance,EC2实例即创建完成。

          image-20240427093204591

          image-20240427093214571

          点击实例名称,进入EC2实例页面,在此能看到刚刚创建的实例。

          image-20240427093230998

          至此,所有资源创建完成。接下来,将在EC2中安装角色扮演聊天界面和角色管理器。

          三、部署聊天环境

          在本部分中,将完成聊天前端界面SillyTavern的安装与配置。

          连接到实例

          通过本地终端连接

          通过本地终端连接是最通用的方式,您可以像连接其他远程服务器一样连接到您在AWS中的EC2实例。

          1. 找到在上一步中创建的私钥,一般会在您的浏览器默认下载目录下,名称为.pem;
          2. 在EC2 instance控制台中勾选刚刚创建的实例,在下方Detail选项卡中找到”Public IPv4 address“信息,复制此IP地址;

          image-20240427103244995

          1. 打开终端,首先使用chmod 400 为私钥设定适当的访问权限,再使用命令ssh -i ubuntu@连接到实例。首次连接时,可能会询问您密钥对信息是否正确,如果遇到此情况,请输入“yes”并回车。如果连接成功,应能够看到类似下图的界面。

          image-20240427103316256

          通过EC2 Instance Connect连接

          EC2 Instance Connect为您提供了一种在网页上访问实例的便捷方式。使用EC2 Instance Connect连接到实例请按照如下步骤。

          1. 打开EC2 Instance控制台,勾选想要连接的EC2实例,点击上方的“Connect”;

          image-20240427103449895

          1. 在打开的Connect to instance页面中,选择EC2 Instance Connect,Connection Type选择“Connect using EC2 Instance Connect”,Username为“ubuntu”,点击”Connect“

          image-20240427103515104

          1. EC2 Instance Connect将在新弹出的窗口中尝试连接到实例。如果连接成功,将能看到如下界面,您可以在此页面中对EC2实例进行操作了。

          image-20240427103542617

          安装Node.js

          Node.js是SillyTavern运行所必须的运行时,在连接到的EC2终端中输入以下命令来安装Node.js:

          # 更新包列表
          sudo apt update
          # 添加Node.js 20.x版本的仓库到你的系统中
          curl -sL https://deb.nodesource.com/setup_20.x | sudo -E bash -
          # 将安装Node.js 20.x的最新版本, 以及npm(Node Package Manager)
          sudo apt install nodejs -y
          

          安装完成后,您可以通过以下命令检查Node.js和npm的版本,以验证是否安装成功:

          node --version
          npm --version
          

          如果安装正确,这些命令会输出相应的版本号,类似于下图所示。

          image-20240427103842338

          安装SillyTavern

          SillyTavern是一款开源的角色扮演聊天前端界面,通过它能够方便地加载角色,连接后端大语言模型,快速开始聊天。

          拉取代码

          要安装SillyTavern,请先将代码拉取到本地。

          cd ~
          git clone https://github.com/Chen188/SillyTavern.git -b bedrock
          

          切换到SillyTavern/src路径下,您会看到bedrock.js文件,SillyTavern将会使用此文件与Bedrock交互。

          配置SillyTavern访问设置

          1. 确认在SillyTavern目录下,通过运行start.sh文件先启动一次SillyTavern以自动生成配置文件config.yaml,然后再ctrl+c退出。
          cd ~/SillyTavern
          bash start.sh
          
          1. 打开config.yaml文件,修改以下参数以实现安全的远程访问:
          • listen: true
          • whitelistMode: false
          • basicAuthMode: true
          • basicAuthUser 设定的远程登录sillytavern的用户名和密码
            • username输用户名,password输密码,默认为user/password

              修改完成后,保存配置文件并退出。

              1. 重新启动SillyTavern服务。如果启动成功,在终端中您应该能看到类似的提示:
              bash start.sh
              

              image-20240427104029412

              配置SillyTavern后端交互

              在浏览器中,输入http://:8000。在弹出的用户名密码对话框中输入在config.yaml配置文件中填写的用户名密码,进入SillyTavern欢迎页面。在首页提示框中,可以输入您的用户名。

              image-20240427104110376

              点击顶部的插头🔌图标,选择API为Chat Completion,并在Chat Completion Source处配置后端为Amazon Bedrock。

              image-20240427104132179

              AWS Region 请选择: “us-west-2”。

              在AWS AKSK处,填写在创建资源步骤中新建的IAM User的access key,并选择使用的模型,如Claude以及Mistral。

              image-20240427104153763

              点击“Test Message”,在弹出绿色成功提示 “API connection successful!” 后,再点击Connect连接到 Bedrock。

              image-20240427104210158

              至此,SillyTavern配置完成,您可以点击顶端标签卡中的最后一个“角色卡片”来打开聊天页面,开始聊天。

              image-20240427104223684

              四、开始和预设的角色聊天

              SillyTavern聊天界面部署完成后,您需要首先将流式生成、越狱和NSFW选项关闭,以避免和Claude3模型的交互过程中出现卡顿,触发安全规则,拒绝回答等情况。

              在顶部点击最左侧的“控制”标签卡,将“Streaming”选项前的勾去掉。

              image-20240427104340969

              拉至底部,将“NSFW Prompt”和“Jailbreak Prompt”调至关闭状态

              image-20240427104404863

              配置完成,接下来点击SillyTavern顶部最右侧的标签卡,您能够看到预置的角色。点击预置的“Coding Sensei”角色,开始聊天。

              image-20240427104555971

              注意:如果在屏幕下方出现了红色的警告栏提示“Not connected to API”,则您需要首先点击顶部的插头🔌标签,点击“Connect”按钮连接到Bedrock后,再进行聊天。

              Coding Sensei是一个能够帮助用户解答编写代码方面问题的角色,对于向他提出的问题,他将返回代码块和代码解释。在下图中,我们化名为“大华”,向Coding Sensei询问如何使用Python计算7的阶乘,Coding Sensei给出了示例代码并对关键部分作出了解释。

              image-20240427104711559

              如果Coding Sensei没有解决疑问,可以继续追问,Coding Sensei会基于聊天记录继续给出答案。

              image-20240427104730655

              对于一些危险行为,Coding Sensei会委婉地拒绝回答问题。

              image-20240427104747398

              五、亚马逊云科技中国峰会精彩预告🎉

              开发者生成式AI技能成长良机,尽在2024 年亚马逊云科技中国峰会


              🔥 尖峰学堂 —— 引领您走进生成式AI的新世界

              每日的“尖峰学堂”将带您轻松实现生成式AI必备技能入门,探索更多AI技术红利。无论您是初学者还是资深开发者,这里都有适合您的课程。我们将邀请业界专家为您讲解生成式AI的基础知识、应用场景、潜在风险与商业价值。此外,我们还将传授您生成式AI时代的必备技能——提示工程基础知识,助您成为构建者,开拓个人技能的新价值。早鸟福利:前30名签到者,可获得神秘礼品一份!(上海世博中心 4层 白金讲堂 431室)

              课程一:生成式AI基础知识 - 面向业务/技术岗位人士

              • 5月29日 11:15-12:00
              • 魏星 亚马逊云科技资深技术讲师
              • 开启生成式AI探索之旅

                【5.29尖峰学堂报名链接 https://dev.amazoncloud.cn/activity/activityDetail/tcpublicclass/vod-ve?id=6641a3aa83b3467caf6fdd19】

                课程二:提示工程基础知识

                • 5月30日 11:15-12:00
                • 秦晨光 亚马逊云科技资深技术讲师

                  开启生成式AI探索之旅

                  【5.30尖峰学堂报名链接https://dev.amazoncloud.cn/activity/activityDetail/tcpublicclass/vod-ve?id=6641b8b1166b1a1cb6b74a5b】

                  📜 备考训练营 —— 助您一举拿下全球认证

                  限定的“备考训练营”将带您如何从学到考,拿下全球认可的云计算与数据工程认证。我们为您准备了丰富的模拟试题和实战练习,助您熟悉考试流程和题型。现场还有免费考试优惠惊喜等着您!早鸟福利:前30名签到者,可获得神秘礼品一份!(上海世博中心 4层 白金讲堂 430室)

                  备考训练营一:AWS Certified 云从业者 认证

                  • 5月29日 11:15-12:00
                  • 姚泉 亚马逊云科技技术讲师
                  • 参与答题环节的前15名,将获得全额免费考试优惠折扣码,价值100美元!

                    开启拿下全球认可的云计算从业者认证

                    【5.29备考训练营报名链接 https://dev.amazoncloud.cn/activity/activityDetail/tcpublicclass/vod-erw?id=663de2414e3b7d0f2f016041】

                    备考训练营二:AWS Certified 数据工程师 - 助理级 认证

                    • 5月30日 11:15-12:00
                    • 林於晟 亚马逊云科技技术讲师
                    • 参与答题环节的前10名,将获得全额免费考试优惠折扣码,价值150美元!全程参会者还可获得67%折优惠码。

                      开启拿下全球认可的数据工程师认证

                      【5.30备考训练营报名链接 https://dev.amazoncloud.cn/activity/activityDetail/tcpublicclass/vod-erw?id=663de40767856f11dd6a531e】

                      👨‍🏫 开发者会客厅|技能成长区 —— 备战“人工智能+”时代

                      在这里开启生成式AI学习之旅,您可以与培训专家面对面交流,探讨前沿的人工智能与云计算课程。我们为不同技能层次的团队和个人提供定制学习路径,结合数字化与面授培训模式。加入《生成式AI精英速成计划》,免费获取创新课程、专家解析及应用演示。涵盖「技术开发技能」与「商业应用技能」,完成学习并通过测验,即可获得技能证书,提升职场竞争力!此外,我们还与CSDN联手推出《从基础到应用的LLM全景课程》,助您系统学习大模型平台、训练与部署,打造生成式AI应用,快速掌握AI与必备云技能。

                      🚀 技能成长加油站 —— 让您进阶成为云职场赢家

                      我们还特别邀请了金牌讲师和年度“技术博主”坐镇,为您提供“限时专班”教学服务。他们将教您如何轻松学习成为技术 Pro 并快速拿证。最佳"云师兄"更将组建"保过班",帮您在一个月内通过热门国际云认证考试。无论您是想要提升技能还是准备职业转型,这里都将是您的最佳选择。

                      5月29日 15:25-16:25 上海世博中心展区 1F 银厅

                      • 金牌讲师“限时专班”,详解云计算工作角色和职能,助您选择适合个人与企业的课程及认证路径,快速提升技能!

                        • 姚泉 亚马逊云科技技术讲师
                        • 林於晟 亚马逊云科技技术讲师
                        • 全新思路 “以考促学” ,拿下多家认证成为云职场赢家

                          • 吕蕴偲 解决方案架构师/亚马逊云科技 Community Builder/亚马逊云科技云博主
                          • 考证大神教你重塑学习体验,如何丝滑拿下认证“大满贯”

                            • 李少奕 深圳市兆珑科技有限公司 云安全专家/亚马逊云科技 Community Builder/亚马逊云科技云博主

                              5月30日 15:35-16:35 上海世博中心展区 1F 银厅

                              • 金牌讲师“限时专班”,教你了解云计算工作角色和职能,选择个人及企业适合的课程及认证路径,快速提升技能!

                                • 姚泉 亚马逊云科技技术讲师
                                • 林於晟 亚马逊云科技技术讲师
                                • 聊聊从校园到职场的云技能提升干货,亲测有效

                                  • 封磊 重庆山屿海信息技术有限公司解决方案架构师/亚马逊云科技 Community Builder/亚马逊云科技云博主
                                  • 重塑工具开发提效进阶思路,如何拿下多个认证

                                    • 韩旭 北京西云数据科技有限公司技术支持/亚马逊云科技云博主

                                      🎉 认证精英会 —— 您的专属荣耀殿堂

                                      如果您已经取得亚马逊云科技的认证,那么恭喜您!认证精英会将为您提供场内专享会所礼遇。在这里,您可以结识精英、免费拍摄证件照和领取限定好礼。此外,我们将悬赏"黄金夹克"寻找考取全部12个认证以上的技能王者,让您成为云认证界的大满贯传奇人物!(*亚马逊云科技员工及合作伙伴不具备获奖资格)

                                      🎮 自由动手区 —— Card Clash 3D卡牌游戏

                                      当然,除了学习和认证外,我们还为您准备了丰富多彩的互动环节。快来加入3D虚拟卡牌游戏“Card Clash”,在轻松愉快的氛围中学习亚马逊云架构知识!部署您的卡牌,构建可扩展高效的亚马逊云科技解决方案架构。

                                      亚马逊云科技中国峰会|开发者技能成长与发展专区,期待您的光临,一同开启生成式AI技能成长之旅。敬请锁定 5月29日-30日,上海世博中心不见不散!

                                      2024 年亚马逊云科技中国峰会|开发者技能成长与发展专区

                                      活动时间:5月29日 - 30日

                                      活动地点:上海市 · 浦东新区 · 世博中心

                                      加入开发者生成式 AI 技能成长之旅!

                                      立即扫码报名

                                      image-20240521145850171

                                      640

微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon