通过AWS Inferentia和AWS Trainium以最低成本在Amazon SageMaker JumpStart上部署Llama 3模型
关键要点
Amazon SageMaker JumpStart现已支持在AWS Trainium和AWS Inferentia实例上使用Meta Llama 3进行推理。AWS Trn1和Inf2实例可提供比相似的Amazon EC2实例降低高达50的部署成本。SageMaker JumpStart提供无代码部署选项,简化了模型的使用与部署流程。今天,我们很高兴地宣布Meta Llama 3推理在AWS Trainium和AWS Inferentia基础实例上可以在Amazon SageMaker JumpStart使用。Meta Llama 3模型包括经过预训练和微调的生成文本模型。相比其他Amazon EC2实例,使用AWS Trainium和AWS Inferentia2的Trn1和Inf2实例可以以最具成本效益的方式部署Llama 3模型。这不仅减少了训练和部署大型语言模型LLMs的时间和成本,还使开发者能够更便捷地访问高性能加速器,以满足实时应用如聊天机器人和AI助手的可扩展性和效率需求。
在本文中,我们将展示在AWS Trainium和AWS Inferentia基础实例上,如何轻松地在SageMaker JumpStart中部署Llama 3。
SageMaker Studio中的Meta Llama 3模型
SageMaker JumpStart提供访问公共和专有的基础模型FMs。基础模型是从第三方和专有提供商那承载和维护的,因此,根据模型来源,它们会以不同的许可证发布。请务必查看您使用的基础模型的许可证,您有责任审查并遵守适用的许可证条款,并确保这些条款对于您的用例是可接受的。
您可以通过SageMaker Studio控制台和SageMaker Python SDK访问Meta Llama 3基础模型。以下部分将介绍如何在SageMaker Studio中发现这些模型。
SageMaker Studio是一个集成的开发环境IDE,提供单一的基于网络的可视化界面,让您可以使用专用工具执行所有机器学习ML开发步骤,从数据准备、构建、训练到部署您的ML模型。有关如何开始和设置SageMaker Studio的更多详细信息,请参见开始使用SageMaker Studio。
在SageMaker Studio控制台中,您可以通过选择导航栏中的JumpStart来访问SageMaker JumpStart。如果您正在使用SageMaker Studio Classic,参考在Studio Classic中打开和使用JumpStart以导航到SageMaker JumpStart模型中。
从SageMaker JumpStart登录页面,您可以在搜索框中搜索“Meta”。
选择Meta模型卡,列出SageMaker JumpStart中所有Meta的模型。
您还可以通过搜索“neuron”找到相关模型变体。如果未找到Meta Llama 3模型,请通过关闭并重新启动SageMaker Studio来更新您的SageMaker Studio版本。
在SageMaker JumpStart上无代码部署Llama 3 Neuron模型
您可以选择模型卡查看关于模型的详细信息,例如许可证、训练使用的数据以及如何使用它。您还可以找到两个按钮,Deploy和Preview notebooks,帮助您进行模型部署。
当您选择Deploy时,页面将出现如下截图。页面顶部展示了终端用户许可证协议EULA和可接受使用政策,您需要进行确认。

确认政策后,提供您的端点设置,然后选择Deploy以部署模型的端点。
另外,您也可以通过选择Open Notebook来通过示例笔记本进行部署。示例笔记本提供了模型推理的端到端指导和资源清理。
使用SageMaker JumpStart SDK在AWS Trainium和AWS Inferentia上部署Meta Llama 3
在SageMaker JumpStart中,我们已经为Meta Llama 3模型预编译了多种配置,以避免在部署和微调时的运行时编译。有关编译过程的更多信息,请访问Neuron Compiler FAQ。
使用SageMaker JumpStart SDK,有两种方法可以在AWS Inferentia和Trainium实例上部署Meta Llama 3。您可以用两行代码简单地部署模型,也可以关注更高的部署配置控制。以下代码片段显示了更简单的部署方式:
pythonfrom sagemakerjumpstartmodel import JumpStartModel
modelid = metatextgenerationneuronllama38baccepteula = Truemodel = JumpStartModel(modelid=modelid)predictor = modeldeploy(accepteula=accepteula) ## 将accepteula设置为True以进行部署
要对这些模型进行推理,请在modeldeploy()调用中指定参数accepteula为True。这表示您已阅读并接受模型的EULA。EULA可以在模型卡描述或https//aimetacom/resources/modelsandlibraries/llamadownloads/找到。
Meta LIama38B的默认实例类型为mlinf224xlarge。其他支持的模型ID包括:
metatextgenerationneuronllama370bmetatextgenerationneuronllama38binstructmetatextgenerationneuronllama370binstructSageMaker JumpStart提供了一些预选配置,可以帮助您快速入手,以下表格列出了这些配置。如需进一步优化这些配置的更多信息,请参考高级部署配置。
LIama3 8B 和 LIama3 8B Instruct
实例类型 OPTIONNPOSITIONS OPTIONMAXROLLINGBATCHSIZE OPTIONTENSORPARALLELDEGREE OPTIONDTYPEmlinf28xlarge 8192 1 2 bf16mlinf224xlarge (默认) 8192 1 12 bf16mlinf224xlarge 8192 12 12 bf16mlinf248xlarge 8192 1 24 bf16mlinf248xlarge 8192 12 24 bf16
LIama3 70B 和 LIama3 70B Instructmltrn132xlarge 8192 1 32 bf16mltrn132xlarge (默认) 8192 4 32 bf16
以下代码展示了如何自定义部署配置,如序列长度、张量并行度和最大滚动批量大小:
pythonfrom sagemakerjumpstartmodel import JumpStartModel
modelid = metatextgenerationneuronllama370bmodel = JumpStartModel( modelid=modelid env={ OPTIONDTYPE bf16 OPTIONNPOSITIONS 8192 OPTIONTENSORPARALLELDEGREE 32 OPTIONMAXROLLINGBATCHSIZE 4 } instancetype=mltrn132xlarge)
将accepteula设置为True以进行部署
pretrainedpredictor = modeldeploy(accepteula=False)
一旦您部署了Meta Llama 3神经模型,可以通过调用端点运行推理:
pythonpayload = { inputs 我相信生命的意义是 parameters { maxnewtokens 64 topp 09 temperature 06 }}
response = pretrainedpredictorpredict(payload)
输出
我相信生命的意义是
快乐。我相信快乐是一种选择。我相信快乐是一种心态。我相信快乐是一种存在状态。 我相信快乐是一种存在状态。我相信快乐是一种存在状态。我相信快乐是一种存在状态。我相信快乐是一种存在状态。
有关有效负载中参数的更多信息,请参见详细参数。
请参考通过AWS Inferentia和AWS Trainium以具有成本效益的方式微调和部署Llama 2模型以获取有关如何传递参数以控制文本生成的详细信息。
清理
完成训练作业且不再需要现有资源后,您可以使用以下代码删除这些资源:
python
删除资源
删除微调模型
predictordeletemodel()
删除微调模型端点
predictordeleteendpoint()
结论
通过SageMaker JumpStart在AWS Inferentia和AWS Trainium上部署Meta Llama 3模型,展示了在AWS上部署如Llama 3等大规模生成AI模型的最低成本。这些模型,包括MetaLlama38B、MetaLlama38BInstruct、MetaLlama370B和MetaLlama370BInstruct,利用AWS Neuron在AWS Trainium和Inferentia上进行推理。AWS Trainium和Inferentia的部署成本比类似的EC2实例低达50。
在这篇文章中,我们演示了如何使用SageMaker JumpStart在AWS Trainium和AWS Inferentia上部署Meta Llama 3模型。通过SageMaker JumpStart控制台和Python SDK部署这些模型的能力,提供了灵活性和易用性。我们期待看到您如何利用这些模型构建有趣的生成AI应用程序。
要开始使用SageMaker JumpStart,请参考开始使用Amazon SageMaker JumpStart。获取更多关于在AWS Trainium和AWS Inferentia上部署模型的示例,请查看GitHub仓库。有关在GPU基础实例上部署Meta Llama 3模型的更多信息,请参见Meta Llama 3模型现已在Amazon SageMaker JumpStart中可用。
关于作者
Xin Huang 是高级应用科学家Rachna Chadha 是人工智能/机器学习的首席解决方案架构师Qing Lan 是机器学习系统的高级软件开发工程师Pinak Panigrahi 是Annapurna ML的高级解决方案架构师Christopher Whitten 是软件开发工程师Kamran Khan 是Annapurna ML的业务发展/市场策略负责人Ashish Khetan 是高级应用科学家Pradeep Cruz 是高级软件开发经理
正在加载评论
一元机场app官网下载
# Aviva 如何利用 Amazon SageMaker 构建可扩展、安全且可靠的 MLOps 平
Aviva构建可扩展、安全且可靠的MLOps平台关键要点在以下内容中,我们将探讨Aviva如何利用Amazon SageMaker构建一个可扩展、安全且可靠的MLOps平台。Aviva已成功将MLOp...
eSentire为客户提供私密安全的生成式人工智能互动,使用Amazon SageMaker 机器学
Aviva构建可扩展、安全且可靠的MLOps平台关键要点在以下内容中,我们将探讨Aviva如何利用Amazon SageMaker构建一个可扩展、安全且可靠的MLOps平台。Aviva已成功将MLOp...