即刻起飞——基于Amazon Bedrock快速构建生成式AI应用

   日期:2024-12-26    作者:sainyouda 移动:http://mip.riyuangf.com/mobile/quote/41990.html

在百模大战中,AI行业的发展正在经历前所未有的变革。这场竞争不仅推动了AI技术的快速发展,也揭示了AI行业的新趋势。这些趋势不仅影响着我们如何看待和使用AI,也预示着AI未来的发展方向。在这个快速发展的领域,了解这些新趋势对于理解AI行业的未来走向至关重要。

亚马逊云科技的Amazon Bedrock 是一项完全托管的服务,通过单个 API 提供来自 AI21 Labs、Anthropic、Cohere、Meta、Mistral AI、Stability AI 和 Amazon 等领先人工智能公司的高性能基础模型(FM,以及通过安全性、隐私性和负责任的人工智能构建生成式人工智能应用程序所需的一系列广泛功能。

使用 Amazon Bedrock,可以轻松试验和评估适合您的使用案例的热门 FM,通过微调和检索增强生成(RAG)等技术利用数据对其进行私人定制,并构建使用企业系统和数据来源执行任务的代理。由于 Amazon Bedrock 是无服务器的,因此无需管理任何基础设施,并且可以使用已经熟悉的 AWS 服务将生成式人工智能功能安全地集成和部署到我们的应用程序中。

今天炒香菇的书呆子通过亚马逊云科技提供的免费在线实验环境带大家体验和学习掌握如何基于Amazon Bedrock 快速构建生成式AI应用。

在构建AIGC方面,无论是小白还是大佬Amazon Bedrock都是一个不错的选择

进入实验网址:https://dev.amazoncloud.cn/experience/cloudlab?id=65fd7f888f852201f9704488

亚马逊云科技官网为大家准备了24h的实验环境,可以免费使用

若在实验完成后想要继续体验,可以购买相关服务

进入网址后,点击开始实验

可以选择用微信或者账号密码登录

登录成功后可以看到临时实验账号的控制台

在控制台左侧可以浏览操作界面

3.1 Stability AI SDXL 1.0介绍

Stable Diffusion XL是在Stability AI 在2023年4 月份推出的新模型,训练参数是之前 Stable Diffusion v2.1 的 2.5 倍,其生成的图像在美学程度和质量上有了很大的改进。

据官方介绍,SDXL 1.0 相比之前的模型,优势主要体现在以下几个方面

  • 可以直接根据文本生成生成任何艺术风格的高质量图像,无需其他训练模型辅助,写实类的表现是目前所有开源文生图模型里最好的。
  • 依据简单的提示词就能生成复杂、精致且美观的图像,不再需要调用“masterpiece”“best quality”等词语。
  • 可直接生成 1024x1024 的图像,色彩也更鲜艳、准确,在对比度、光照和阴影的处理上也比之前要好很多。
  • 在文本、物体空间排列、手部等内容的处理上表现很好。
  • 可以理解“The Red Square”(著名地点)与“red square”(形状)等概念之间的差异。

下面我们将通过Amazon Bedrock 快速上手Stability AI SDXL 1.0构建艺术图像

3.2 试用SDXL 1.0

在左侧控制台选择–>,右侧点击选择模型

然后依次选择 --> –>,然后选择应用

在右侧,我们可以下方设定关键词,在右侧调整模式,生成图像的基本信息等来控制如何生成图像

例如,我的测试demo如下

 
 

我们还可以进一步对细节进行修改

点击图像,进行编辑

选中图中的student继续使用提示词

可以看到生成的图片中student的头发为绿色

3.3 基于Amazon Cloud9部署Stability AI SDXL 1.0

3.3.1 Amazon Cloud9 创建

打开亚马逊云科技控制台,搜索Cloud9,点击进入

选择创建环境

设置环境详细信息

  1. 设置名称为 bedrock
  2. 设置实例类型 t3.small
  3. 平台 Ubuntu Server 22.04 LTS
  4. 超时 30 分钟

点击创建

待主机创建完成后,进入IDE终端

3.3.2 安装实验环境

复制以下内容到终端,执行命令,以下载和解压缩代码

 

解压完成

观察左侧主机目录

继续使用 终端,安装实验所需的环境依赖项

 
 
3.3.3 开始编写 Amazon Bedrock 中 Stability AI SDXL 1.0 API

打开 Amazon Bedrock 示例,输入关键字 sdxl,选择 SDXL 1.0,查看 API 请求代码

API为

 

使用 Amazon Cloud9 IDE,选择 workshop/labs/api/bedrock_api.py 编写代码

添加 import 语句,这些语句允许我们使用 Amazon Web Services boto3 库来调用 Amazon Bedrock,使用 base64 进行编码和解码操作,使用 Image 模块处理图像,以及使用 io、os 模块进行文件输入/输出

 

初始化 Amazon Bedrock 客户端库

 

在这里,我们将确定要使用的模型、提示和指定模型的推理参数。

 

调用 Bedrock API,我们使用 Bedrock 的 invoke_model 函数进行调用。

 

从响应中获取图像数据,并将其保存为文件

 

保存文件,并在命令行处执行代码

 
 
 

同时,我们还可以通过进行文生图,图生图,图像修复等功能

欢迎在线体验实验:https://dev.amazoncloud.cn/experience/cloudlab?id=65fd7f888f852201f9704488

4.1 Meta Llama 3介绍

Meta Llama 3是Meta公司于2024年4月18日发布的新一代开源大语言模型(LLM)。这一系列模型旨在推动人工智能领域的边界,提供卓越的性能和广泛的应用潜力。Meta Llama 3主要包括两个版本的模型:一个是拥有80亿参数的模型,另一个是更为强大的700亿参数模型。

关键特性与成就

  • 性能表现:在多项基准测试中,Meta Llama 3展示了出色的性能,比如在TriviaQA-Wiki测试中达到89.7%的准确率,这表明它在理解复杂文本和回答问题方面具有很高的能力。
  • 开源性:作为开源模型,Meta Llama 3强调开放合作,鼓励开发者和研究人员使用这些模型进行创新和改进,进一步推动AI社区的发展。
  • 硬件优化与兼容性:该模型得到了包括英特尔、高通在内的多家科技巨头的支持。英特尔已经优化并验证了Llama 3模型能在其多种AI产品上运行,而高通则宣布未来的骁龙旗舰平台将支持该模型,允许在终端侧高效执行。
  • 云平台部署:Meta Llama 3模型计划在多个主流云平台上上线,如AWS、Google Cloud、Microsoft Azure等,以及获得AMD、Dell、NVIDIA等硬件平台的支持,这将极大地方便用户和开发者接入和使用。
  • 应用范围:由于其高性能和广泛的平台支持,Llama 3模型预计将在多个领域找到应用,包括但不限于自然语言处理、内容生成、机器翻译、对话系统、智能助手等。

4.2 在线体验Meta Llama 3

在左侧控制台选择–>,右侧点击选择模型

选择 Meta Llama 3 8B Instruct,点击应用

下面我写一个调用示例

 
 
 

查看API请求参数

 

4.3 基于Amazon Cloud9快速构建 Meta Llama 3

4.3.1 Amazon Cloud9 创建

打开亚马逊云科技控制台,搜索Cloud9,点击进入

选择创建环境

设置环境详细信息

  1. 设置名称为 bedrock
  2. 设置实例类型 t3.small
  3. 平台 Ubuntu Server 22.04 LTS
  4. 超时 30 分钟

点击创建

待主机创建完成后,进入IDE终端

4.3.2 体验调用 Meta Llama 3 API 应用

以下为请求参数内容

以下为返回参数内容

 
 

打开 workshop/labs/api 文件夹,打开文件 bedrock_api.py

  1. 添加导入依赖语句允许我们使用 Amazon boto3 库来调用 Amazon Bedrock
 
  1. 初始化 Bedrock 客户端库,创建一个 Bedrock 客户端
 
  1. 编写 API 调用代码
    我们将确定要使用的模型、提示和指定模型的推理参数
 
  1. 使用 Amazon Bedrockinvoke_model 函数进行调用
 
  1. 模型的响应 JSON 中提取并打印返回的文本
 
  1. 保存文件,并准备运行脚本
 
 
4.3.3 使用 Amazon Bedrock 中 Meta Llama 3、LangChain 和 Streamlit 构建一个简单的文本生成器

应用程序由两个文件组成一个用于 Streamlit 前端另一个用于调用 Bedrock 的支持库

首先创建支持库,将 Streamlit 前端连接到 Bedrock 后端

  1. 打开 workshop/labs/text 文件夹,然后打开文件 text_lib.py

添加导入语句,允许使用 LangChain 调用 Bedrock

 
  1. 创建一个可以从 Streamlit 前端应用程序调用的函数,此函数使用 LangChain 创建 Bedrock 客户端,然后将输入内容传递给 Bedrock
 
  1. 打开同一目录下的文件 text_app.py,并添加导入语句,使用 Streamlit 元素和调用函数
 
  1. 设置页面头部内容
 
  1. 添加输入元素,创建一个多行文本框和按钮,以获得用户的提示并将其发送到 Bedrock。
 
  1. 添加输出元素
 
  1. 保存文件,运行代码
 

执行结果如下

预览方法
打开 Cloud9 菜单栏->Preview->Preview Running Application

如果大家想要深度体验基于Amazon Bedrock 构建属于自己的AI应用程序

可以继续体验:https://dev.amazoncloud.cn/experience/cloudlab?id=65fd7f888f852201f9704488

亚马逊云科技给广大开发者提供了大量主机资源和丰富的入门教程,开箱即用,可以快速上手~


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号