文章目录
- 一、什么是Amazon Bedrock?
- 二、为什么选择 Amazon Bedrock
- 三、访问Amazon Bedrock UI
- 四、与Amazon Bedrock 聊天
- 五、对比Amazon Bedrock 不同基础模型的返回结果
- 六、让Amazon Bedrock处理文本
- 七、利用Amazon Bedrock生成图片
- 八、参考链接
一、什么是Amazon Bedrock?
Amazon Bedrock是一个完全托管的服务,它通过API提供了亚马逊和AI领先创业公司的基础模型(FMs)。因此可以从各种FMs中进行选择,找到最适合用例的模型。通过Amazon Bedrock的无服务器体验,可以快速轻松地开始试验FMs。使用自己的数据私下定制FMs,并使用AWS的工具和功能无缝地将其集成并部署到您的应用程序中。Amazon Bedrock的代理是完全托管的
,可以更轻松地为开发人员创建生成式AI应用程序,这些应用程序可以基于专有知识提供最新答案并完成各种用例的任务。
Amazon Bedrock 是帮助您使用foundation models(基础模型)来构建和扩展生成式AI应用程序最简单的方法。从下面的AWS AI/ML技术栈中,我们可以看到,Amazon Bedrock通过UI/API以无服务器体验的形式为客户提供了访问强大LLM的能力,同时确保客户的数据隐私性,可以使数据存储在客户自己的AWS账户内。
这里我们提到的foundation models(FMs/基础模型)大致等同于Large Language Model(大语言模型) ,但是不仅仅包括Large Language Model,还包括embedding model (文本转换成向量)和diffusion model(文本生成图片)。
二、为什么选择 Amazon Bedrock
Amazon Bedrock 是一项完全托管的服务,使用单个 API 提供来自 AI21 Labs、Anthropic、Cohere、Meta、Stability AI 和 Amazon 等领先人工智能公司的高性能基础模型(FM),以及构建生成式人工智能应用程序所需的一系列广泛功能,在维护隐私和安全的同时简化开发。借助 Amazon Bedrock 的全面功能,可以轻松尝试各种热门 FM,使用微调和检索增强生成(RAG)等技术利用自己的数据对其进行私人定制,并创建可执行复杂业务任务的托管代理,所有这些都无需编写任何代码。由于 Amazon Bedrock 是无服务器的,因此无需管理任何基础设施,并且可以使用已经熟悉的亚马逊云科技云服务将生成式人工智能功能安全地集成和部署到您的应用程序中。
本博客将借助 Amazon Bedrock 进行生成式AI的体验,Amazon Bedrock 提供来自Anthropic、Cohere、Amazon 等多家人工智能公司的高性能模型,并提供控制台、API的使用方式。将使用控制台的方式,去体验文生文、文生图、问答聊天的生成式AI。
通过本实验,将了解体验到Amazon Bedrock的基本使用方法,以便快速构建强大安全的Large Language Model应用,其中包括:
- 使用Amazon Bedrock - Chat模式来提出问题并获得高质量回答,包括代码生成以及不同模型之间结果的对比。
- 使用Amazon Bedrock - Text模式来体验基本文字处理功能。
- 使用Amazon Bedrock - Image模式体验文字生成图像功能,让您在几秒钟内得到您描述的图片。
三、访问Amazon Bedrock UI
当完成AWS账号登陆之后,可以通过下面url或者控制台访问Amazon Bedrock的UI。
直接访问URL:https://us-west-2.console.aws.amazon.com/bedrock/home?region=us-west-2#/overview
或者在控制台首页输入
Bedrock
进行访问:
之后会跳转到
Amazon Bedrock
首页,点击Get started
:
在这里可以看到Amazon Bedrock支持多个基础模型(foundation model),其中包括Amazon Titan,Claude,Jurassic,Command,Stable Diffusion 以及 Llama2。
在右上角选择region,选择us-west-2
左侧的导航栏中点击Model access,点击Manage model access。如下图所示:
点击
Submit use case details
来申请访问Claude模型
在弹出窗口中按下图输入相应内容(Company name: Amazon; Company website URL: http://aws.amazon.com),之后点击Submit。
成功submit之后再次点击
Manage model access
;选择左上角的CheckBox选中所有model,之后点击Request model access
:
稍等片刻并刷新页面,确认如下Model都已经是Access granted状态:
四、与Amazon Bedrock 聊天
首先在左侧的导航栏中点击
Playgrounds - Chat
:
点击
Select model
来选择想要使用的基础模型(大语言模型):
首先选择
Anthropic的Claude v2.1模型
来体验其强大的推理能力和中文处理能力,点击Apply:
然后通过Chat来让Amazon Bedrock来帮助“
安排一个上海2日游的行程
”。
注意:将该问题输入到聊天窗口中,将Maximum Length调整到2048(防止返回结果因为token限制被截断;UI上的限制为2048 token,API支持最大token为200k),点击Run。
可以在紫色区域看见大模型的返回结果,同时也可以在最下方看见这次调用的耗时,输入输出token数以及花费:
下面先清除本次对话,点击下图所示的icon。
接下来让Amazon Bedrock为我们生成代码,输入如下prompt:
Write a short and high-quality python script for the following task, something a very skilled python expert would write. You are writing code for an experienced developer so only add comments for things that are non-obvious. Make sure to include any imports required. NEVER write anything before the ```python```block. After you are done generating the code and after the ```python```block, check your work carefully to make sure there are no mistakes, errors, or inconsistencies. If there are errors, list those errors in tags, then generate a new version with those errors fixed. If there are no errors, write "CHECKED: NO ERRORS" in tags. Here is the task: A web scraper that extracts data from multiple pages and stores results in a SQLite database. Double check your work to ensure no errors or inconsistencies.
可以看到Amazon Bedrock生成了带有注释的可读性很强的代码。
五、对比Amazon Bedrock 不同基础模型的返回结果
如下图所示选Compare mode
点击右侧的 + 号继续添加对比model(最多支持2个对比model)
分别点击第二个和第三个窗口的Select model选项,来添加想要对比的基础模型。这里分别选择
Llama2 Chat 13B
和Jurassic-2 Ultra
。
选择好相应的model之后,显示如下:
之后在聊天窗口输入问题例如“2 days trip to Shanghai”,点击Run,就可以轻松直观的对比不同模型的返回结果:
六、让Amazon Bedrock处理文本
接下来,通过左侧的导航栏切换到Playgrounds - Text:
同样,需要先选择基础模型,这里选择了
Llama 2 Chat 70B
;同样注意需要把Response length调整到2048。
这次使用COT (Chain of Thought) - Let’s think step by step让大模型帮我们处理问题;可以看到Amazon Bedrock可以把它每一步的思考以及结果都返回。输入Prompt:
You are a a very intelligent bot with exceptional critical thinking. I went to the market and bought 10 apples. I gave 2 apples to your friend and 2 to the helper. I then went and bought 5 more apples and ate 1. How many apples did I remain with? Let's think step by step.
你是一个非常聪明的机器人,具有非凡的批判性思维。我去市场买了10个苹果。我给了你的朋友2个苹果,给了帮手2个。然后我又买了5个苹果,吃了1个。我还剩下几个苹果?让我们一步一步来思考。
七、利用Amazon Bedrock生成图片
在左侧的导航栏中点击Playgrounds - Image:
同样,需要先Select model,这次选择
Amazon Titan Image Generator
之后输入如下prompt来让Amazon Bedrock为我们生成图片,点击Run
a Panda wearing glasses and eating an ice cream in Las Vegas.
Amazon Titian Image Generator会生成3张图片用来供我们选择;点击其中一张认为效果最好的图片,可以下载此图片或者继续编辑。
八、参考链接
🔴🟡🟢https://docs.aws.amazon.com/zh_cn/bedrock/latest/userguide/what-is-bedrock.html