当前位置: 首页 > news >正文

通过 Amazon SageMaker JumpStart 部署 Llama 2 快速构建专属 LLM 应用

888ece20dfe6f91795d00ac312634c93.gif

来自 Meta 的 Llama 2 基础模型现已在 Amazon SageMaker JumpStart 中提供。我们可以通过使用 Amazon SageMaker JumpStart 快速部署 Llama 2 模型,并且结合开源 UI 工具 Gradio 打造专属 LLM 应用。

Llama 2 简介

Llama 2 是使用优化的 Transformer 架构的自回归语言模型,  旨在用于英文领域的商业和研究用途,其 context 长度是 Llama 1 代的两倍。目前提供三种参数规格(7B、13B 和 70B)的基础模型。

6fa5a202736677926f8150fa6f686788.jpeg

(来源:https://ai.meta.com/llama/)

使用 SageMaker JumpStart 

简化大模型的部署

一站式开发平台 Amazon SageMaker,是一个机器学习(ML)中心,提供预训练模型、内置算法和预构建解决方案,能帮助您快速开始使用机器学习。在 SageMaker JumpStart 中提供了 6 个版本的 Llama-2 模型。

ac68e4afdcad81b59e04ce291af3f90f.jpeg

如果在您的 JumpStart 中没有看到相关的模型,请确认您使用的区域是否已支持 Llama 2 (在 JumpStart 模型页面查询支持的区域)以及是否是最新版本的 Studio(可以通过关闭重启来更新您的 SageMaker Studio 版本)。

下图是在 SageMaker 中 Llama 2 的 6 个模型分别对应的 ID ,默认实例类型,以及每个模型支持的最大 token 数,通过 model_id 我们可以便捷地在 SageMaker Notebook 中启动对应的模型。

5e94caeb56d268e90d14fdfe5e64cc7c.jpeg

方案概述

我们将在 SageMaker 上部署 Llama-2-7b-chat 模型, 并使 Gradio 构建前端页面,打造一个轻量化的聊天助手。

1. 部署模型

在 SageMaker 中可以使用 JumpStart 或者 Notebook 来部署推理节点,这两种方式我们都会展示。

1.1 SageMaker JumpStart 一键部署

在 SageMaker Studio 中您可以搜索到对应的模型, 点击就可以进入对应的模型页面。在这里我们使用了 Llama-2-7b-chat 的模型。

ea2b81e09223d75d6b435603e4cb95b5.jpeg

点击 Deploy 即可以部署相关模型,部署时间大约 15 分钟 – 20 分钟左右,另外可以通过 Deployment Configuration 修改对应部署的实例类型。

1c0e615c7c26dd2b82a08b357616cc45.jpeg

在部署完成后,您可以看到对应的推理节点信息。

1.2 使用 SageMaker Notebook 部署

如何您使用了 JumpStart 部署则不需要通过 SageMaker Notebook 部署,直接跳到 2。

(1)设置模型 ID ,在这里我们选择了 7b 规格的 chat 模型

d878c59a6bff315c1fdb957274edbc0d.jpeg

(2)部署指定的模型(meta-textgeneration-llama-2-7b-f)

397ff8d8f40e1ee0ffe48064276b11d6.jpeg

大约在 15 – 20 分钟左右您可以部署完成,完成后在 Amazon Website Service 控制台 SageMaker 页面中的“终端节点”标签下,可以看到目前已经被启动的推理节点。

413559ae61e4ce5c346fafbc197ad397.jpeg

2. 设置模型的参数

b178337d15649dfe6e3f2782507b5129.jpeg

3. 启动 Gradio 与部署完的模型进行交互

f772498ea33a29e16d18816933132b28.jpeg

在执行完以后 Gradio 提供了本地的 url 和在 Gradio 上托管的 url 供您使用。

a7c796e38612a20c4e85a3d3c426d4d5.jpeg

注意,您需要进行设置 custom_attributes=”accept_eula=true”才能成功调用推理端点。这样做是确认接受 Llama 2 的用户许可协议和使用政策。

完整的代码可以参考链接:

https://github.com/tsaol/llama2-on-aws.git。

4. 测试

打开 Gradio 提供的链接,我们会看到一个聊天页面,可以尝试向 Llama 2 问些问题。

0702252ee9b929dc0ca49aceb3e12912.jpeg

5. 清理和删除环境

7a576e2db8ba731724767bc3d897dc2b.jpeg

总结

本文介绍了如何使用 SageMaker JumpStart 以及 Notebook 部署 Llama 2 模型,结合 Gradio 轻松构建生成式 AI 应用。基于托管服务的特性让您无需担心底层基础设施的搭建与运维,同时拥有良好的开源项目体验。您还可以基于现有的方案进一步改造,打造专属的大模型应用。

参考资料

https://aws.amazon.com/cn/about-aws/whats-new/2023/07/llama-2-foundation-models-meta-amazon-sagemaker-jumpstart/

https://dev.amazoncloud.cn/column/article/64bf831469c6a22f966a19f4

https://aws.amazon.com/cn/blogs/machine-learning/llama-2-foundation-models-from-meta-are-now-available-in-amazon-sagemaker-jumpstart/

https://arxiv.org/pdf/2307.09288.pdf

https://www.gradio.app/guides

https://ai.meta.com/llama/

本篇作者

8b984a7fcf0f26c761863edfc45790f8.jpeg

曹镏

亚马逊云科技解决方案架构师,负责企业信息化方案的咨询和架构设计。超过 10 年的研发经验,曾在大型国企和互联网独角兽任职,并主导百亿级平台的技术架构和数据架构的设计与落地。专注数智融合以及生成式 AI 方向,赋能企业创新成长。

4d31885605d645c6d60cb39eb6004024.gif

b2a5bccac3f93602333944b940126afe.gif

听说,点完下面4个按钮

就不会碰到bug了!

46172c2160ef4c346ad677c6c5d39ea9.gif

相关文章:

通过 Amazon SageMaker JumpStart 部署 Llama 2 快速构建专属 LLM 应用

来自 Meta 的 Llama 2 基础模型现已在 Amazon SageMaker JumpStart 中提供。我们可以通过使用 Amazon SageMaker JumpStart 快速部署 Llama 2 模型,并且结合开源 UI 工具 Gradio 打造专属 LLM 应用。 Llama 2 简介 Llama 2 是使用优化的 Transformer 架构的自回归语…...

ansible远程执行命令

一、ansible简介 需要在一台机器上搭建ansible环境,且配置目的ip的密码,通道没有问题即可下发命令 使用的通道是ssh(端口:36000) 二、搭建细节 1、安装ansible yum install -y ansible 2、把目的ip密码写到配置…...

Windows快速恢复丢失的颜色校准

场景 有时开机或启动某个软件后,颜色校准(设置项:校准显示器颜色)会丢失,每次重新设置很麻烦。 文章首发及后续更新:https://mwhls.top/4723.html,无图/无目录/格式错误/更多相关请至首发页查看…...

Vue安装单文件组件

安装 npm npm 全称为 Node Package Manager,是一个基于Node.js的包管理器,也是整个Node.js社区最流行、支持的第三方模块最多的包管理器。 npm -v由于网络原因 安装 cnpm npm install -g cnpm --registryhttps://registry.npm.taobao.org安装 vue-cli…...

小白的Node.js学习笔记大全---不定期更新

Node.js是什么 Node. js 是一个基于 Chrome v8 引擎的服务器端 JavaScript 运行环境Node. js 是一个事件驱动、非阻塞式I/O 的模型,轻量而又高效Node. js 的包管理器 npm 是全球最大的开源库生态系统 特性 单一线程 Node.js 沿用了 JavaScript 单一线程的执行特…...

第二周晨考自测(2.0)

1.冒泡排序 冒泡排序是数组解构中的常见排序算法之一。规则如下:先遍历数组,让相邻的两个数据进行比较,如果前一个比后一个大,那么就把这两个数据交换位置,经过一轮遍历之后,最大的那个数字就排在数组最后…...

计算机视觉之三维重建(三)(单视图测量)

2D变换 等距变换 旋转平移保留形状、面积通常描述刚性物体运动 相似变换 在等距变换的基础增加缩放特点 射影变换 共线性、四共线点的交比保持不变 仿射变换 面积比值、平行关系等不变仿射变换是特殊的射影变换 影消点与影消线 2D无穷远点 两直线的交点可由两直线的…...

docker 批量快速删除容器和镜像

一、批量删除镜像 如果你想要批量删除 Docker 镜像,可以使用各种命令。以下是一些示例: 1. 删除所有镜像: docker rmi $(docker images -q) 2. 删除所有未标记的镜像(即 <none> 镜像): docker rmi $(docker images -f "dangling=true" -q) 请注意…...

【数据分析入门】Matplotlib

目录 零、图形解析与工作流0.1 图形解析0.2 工作流 一、准备数据1.1 一维数据1.2 二维数据或图片 二、绘制图形2.1 画布2.2 坐标轴 三、绘图例程3.1 一维数据3.2 向量场3.3 数据分布3.4 二维数据或图片 四、自定义图形4.1 颜色、色条与色彩表4.2 标记4.3 线型4.4 文本与标注4.5…...

mongodb.使用自带命令工具导出导入数据

在一次数据更新中&#xff0c;同事把老数据进行了清空操作&#xff0c;但是新的逻辑数据由于某种原因&#xff08;好像是她的电脑中病毒了&#xff09;&#xff0c;一直无法正常连接数据库进行数据插入&#xff0c;然后下午2点左右要给甲方演示&#xff0c;所以要紧急恢复本地的…...

IndexError: tensors used as indices must be long, byte or bool tensors

运行出现报错。修改数据格式 输出sample_ids的值&#xff0c;可以看到数据类型是 torch.int32 解决 需要将sample_ids类型转为long&#xff0c;修改方式&#xff1a; idx idx.type(torch.long)或 idx self.tensor(idx, dtypetorch.long)参考&#xff1a; IndexError: tenso…...

设计模式 : 单例模式笔记

文章目录 一.单例模式二.单例模式的两种实现方式饿汉模式懒汉模式 一.单例模式 一个类只能创建一个对象,这样的类的设计模式就称为单例模式,该模式保证系统中该类只能有一个实例(并且父子进程共享),一个很典型的单例类就是CSTL的内存池C单例模式的基本设计思路: 私有化构造函数…...

深度优先搜索算法

目录 4.1 二叉树的最大深度&#xff08;简单&#xff09;&#xff1a;深度优先搜索 4.2 对称二叉树&#xff08;简单&#xff09;&#xff1a;递归 4.3 岛屿数量&#xff08;中等&#xff09;&#xff1a;深度优先搜索 4.4 岛屿的最大面积&#xff08;中等&#xff09;&…...

k8s ----POD控制器详解

目录 一&#xff1a;pod控制器 1、Pod控制器及其功用 2、pod控制器类型 3、Pod与控制器之间的关系 二&#xff1a;Deployment 三&#xff1a;SatefulSet 1、StatefulSet组成 2、为什么要有headless&#xff1f; 3、为什么要有volumeClaimTemplate&#xff1f; 4、实现…...

ReactNative进阶(三十四):ipa Archive 阶段报错error: Multiple commands produce问题修复及思考

文章目录 一、前言二、问题描述三、问题解决四、拓展阅读五、拓展阅读 一、前言 在应用RN开发跨平台APP阶段&#xff0c;从git中拉取项目&#xff0c;应用Jenkins进行组包时&#xff0c;发现最终生成的ipa安装包版本号始终与项目中设置的版本号不一致。 二、问题描述 经过仔…...

MySQL索引ES索引

MySQL MySQL索引的种类 按照索引列值的唯一性:索引可分为唯一索引和非唯一索引; 唯一索引:此索引的每一个索引值只对应唯一的数据记录,对于单列唯一性索引,这保证单列不包含重复的值。对于多列唯一性索引,保证多个值的组合不重复。主键索引是唯一索引的特定类型。该索引…...

webSocket 聊天室 node.js 版

全局安装vue脚手架 npm install vue/cli -g 创建 vue3 ts 脚手架 vue create vue3-chatroom 后端代码 src 同级目录下建 server: const express require(express); const app express(); const http require(http); const server http.createServer(app);const io req…...

iptables防火墙(SNAT与DNAT)

目录 1 SNAT 1.1 SNAT原理与应用 1.2 SNAT工作原理 1.3 SNAT转换前提条件 2 SNAT示例 ​编辑 2.1 网关服务器配置 2.1.1 网关服务器配置网卡 2.1.2 开启SNAT命令 2.2 内网服务器端配置 2.3 外网服务器端配置 2.4 网卡服务器端添加规则 2.5 SNAT 测试 3 DNAT 3.1 网卡…...

第 359 场 LeetCode 周赛题解

A 判别首字母缩略词 签到题… class Solution { public:bool isAcronym(vector<string> &words, string s) {string pf;for (auto &s: words)pf.push_back(s[0]);return pf s;} };B k-avoiding 数组的最小总和 贪心&#xff1a;从 1 1 1开始升序枚举&#xff0c…...

【开源项目】Stream-Query的入门使用和原理分析

前言 无意间发现了一个有趣的项目&#xff0c;Stream-Query。了解了一下其基本的功能&#xff0c;可以帮助开发者省去Mapper的编写。在开发中&#xff0c;我们会编写entity和mapper来完成业务代码&#xff0c;但是Stream-Query可以省去mapper&#xff0c;只写entity。 快速入…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

浅谈不同二分算法的查找情况

二分算法原理比较简单&#xff0c;但是实际的算法模板却有很多&#xff0c;这一切都源于二分查找问题中的复杂情况和二分算法的边界处理&#xff0c;以下是博主对一些二分算法查找的情况分析。 需要说明的是&#xff0c;以下二分算法都是基于有序序列为升序有序的情况&#xf…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

图表类系列各种样式PPT模版分享

图标图表系列PPT模版&#xff0c;柱状图PPT模版&#xff0c;线状图PPT模版&#xff0c;折线图PPT模版&#xff0c;饼状图PPT模版&#xff0c;雷达图PPT模版&#xff0c;树状图PPT模版 图表类系列各种样式PPT模版分享&#xff1a;图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

Python 包管理器 uv 介绍

Python 包管理器 uv 全面介绍 uv 是由 Astral&#xff08;热门工具 Ruff 的开发者&#xff09;推出的下一代高性能 Python 包管理器和构建工具&#xff0c;用 Rust 编写。它旨在解决传统工具&#xff08;如 pip、virtualenv、pip-tools&#xff09;的性能瓶颈&#xff0c;同时…...

管理学院权限管理系统开发总结

文章目录 &#x1f393; 管理学院权限管理系统开发总结 - 现代化Web应用实践之路&#x1f4dd; 项目概述&#x1f3d7;️ 技术架构设计后端技术栈前端技术栈 &#x1f4a1; 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 &#x1f5c4;️ 数据库设…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下&#xff0c;企业和个人创作者为了扩大影响力、提升传播效果&#xff0c;纷纷采用短视频矩阵运营策略&#xff0c;同时管理多个平台、多个账号的内容发布。然而&#xff0c;频繁的文案创作需求让运营者疲于应对&#xff0c;如何高效产出高质量文案成…...

android RelativeLayout布局

<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...