通过 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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/67720.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

怎么把CAD转成JPG图片?一个方法教你如何转换

CAD是计算机辅助设计的缩写,通常指的是AutoCAD软件所生成的DWG文件格式。DWG是一种二进制文件格式,用于保存2D和3D设计数据和元数据,支持多种操作系统和程序使用。该格式通常用于工程、建筑、制造和其他领域的设计和绘图。 CAD文件转换成JPG图…

【Rust】Rust学习 第十一章编写自动化测试

Rust 是一个相当注重正确性的编程语言,不过正确性是一个难以证明的复杂主题。Rust 的类型系统在此问题上下了很大的功夫,不过它不可能捕获所有种类的错误。为此,Rust 也在语言本身包含了编写软件测试的支持。 编写一个叫做 add_two 的将传递…

Debian 10驱动Broadcom 无线网卡

用lspci命令查询无线网卡品牌: 运行下面代码后,重启即可。 apt-get install linux-image-$(uname -r|sed s,[^-]*-[^-]*-,,) linux-headers-$(uname -r|sed s,[^-]*-[^-]*-,,) broadcom-sta-dkms

/proc/net/dev 最后一行读2次

网络2倍字节量和网速,百思不得其解。 void netdev(SamplePlugin *sample) {FILE *fp;char s[150], itf[10];long long r1, r2, r3, r4, r5, r6, r7, r8, t1, t2, t3, t4, t5, t6, t7, t8;int i0;sample->rb 0;sample->tb 0;fp fopen("/proc/net/dev&…

一般股票量化交易接口需要用到哪些编程语言?

股票量化交易接口可以使用多种编程语言进行开发和调用。以下是一些常用的编程语言: 1. Python:Python是一种脚本语言,广泛应用于量化交易领域。它有丰富的第三方库和工具,如Pandas、NumPy和pyalgotrade等,可用于数据分…

Makefile多个子文件夹

首先,目录结构: 其中根目录Makefile主要作用是调用其他子文件夹Makefile,每个子模块执行各自编译后在build文件夹下生成obj文件,最后再执行build文件夹下Makefile进行链接。 根目录Makefile: TARGET ACT_Drv ##SRC_D…

【STM32】利用CubeMX对FreeRTOS用按键控制任务

对于FreeRTOS中的操作,最常用的就是创建、删除、暂停和恢复任务。 此次实验目标: 1.创建任务一:LED1每间隔1秒闪烁一次,并通过串口打印 2.创建任务二:LED2每间隔0.5秒闪烁一次,并通过串口打印 3.创建任…

直接在html中引入Vue.js的cdn来实现一个简单的上传图片组件

摘要 当使用 Vue.js 的 CDN 来实现一个简单的上传图片组件时&#xff0c;你可以利用 Vue 的数据绑定和事件处理能力&#xff0c;结合 HTML 和 CSS&#xff0c;轻松地创建一个交互式的图片上传界面。以下是一个示例&#xff1a; 代码结构 index.html <!DOCTYPE html> &…

应用层协议——TCP(上)

文章目录 1. TCP协议1.1 TCP协议段格式1.2 确认应答(ACK)机制1.3 16位窗口大小1.4 6位标志位1.4.1 TCP三次握手 1.5 确认应答(ACK)机制1.6 超时重传机制1.7 连接管理机制1.7.1 理解TIME_WAIT状态1.7.2 理解 CLOSE_WAIT 状态 1. TCP协议 TCP全称为传输控制协议&#xff0c;意思…

Win10安装GPU支持的最新版本的tensorflow

我在安装好cuda和cudnn后&#xff0c;使用pip install tensorflow安装的tensorflow都提示不能找到GPU&#xff0c; 为此怀疑默认暗转的tensorflow是不带GPU支持的。 在tensorflow官网提供了多个版本的GPU支持的windows的安装包 https://www.tensorflow.org/install/pip?hlz…

00 - 环境配置

查看所有文章链接&#xff1a;&#xff08;更新中&#xff09;GIT常用场景- 目录 文章目录 1. 环境说明2. 安装配置2.1 配置user信息2.2 config的三个作用域 3. 建git仓库3.1 把已有的项目代码纳入git管理3.2 新建的项目直接用git管理3.3 配置local的user和email3.4 优先级&…

ChatGLM2-6B在Windows下的微调

ChatGLM2-6B在Windows下的微调 零、重要参考资料 1、ChatGLM2-6B! 我跑通啦&#xff01;本地部署微调&#xff08;windows系统&#xff09;&#xff1a;这是最关键的一篇文章&#xff0c;提供了Windows下的脚本 2、LangChain ChatGLM2-6B 搭建个人专属知识库&#xff1a;提供…