![89ad512d01fa998e043bf1649a1c955e.jpg](https://dev-media.amazoncloud.cn/bf1233b956b545ca8ed3e988c7e8d1de_89ad512d01fa998e043bf1649a1c955e.jpg "89ad512d01fa998e043bf1649a1c955e.jpg")
# 活动时间
北京时间2023年3月16日15:00-17:00
# 活动形式
在线直播——动手训练营
# 动手实践
## 使用 Amazon SageMaker 构建基于开源 GPT-J 模型的对话机器人应用
**难度**:入门
**时间**:20 分钟
开发者可以使用 [Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 构建一个交互式的人机对话应用 DEMO,尝试基于开源 GPT-J 模型的 Text Generation 技术。[Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 是亚马逊云科技公有云中的一项托管服务。作为一个云[机器学习](https://aws.amazon.com/cn/machine-learning/?trk=cndc-detail)平台,可以让开发者在云中创建、训练和部署 ML 模型。
这一动手实验仅仅使用20行左右的代码,即可将开源的 GPT-J 模型部署到 [Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 的终端节点(Endpoint),实现交互式的人机对话。完成该动手实验的代码编写和模型部署预计需要20分钟。已经具有亚马逊云科技海外区域帐号的开发者,可以在直播同时一起动手完成该实验。
**什么是 GPT-J:**
GPT-J 是一种生成式预训练(GPT)语言模型,就其架构而言,它可与 GPT-3 等流行的私有大型语言模型相媲美。它由大约60亿个参数和28个层组成,包括一个前馈模块和一个自注意力模块。为 GPT-J 提供推理所需的内存要低得多——在 FP16 中,模型权重占用不到13 GB,这意味着可以在单个16 GB GPU 上轻松进行推理。
## 使用Amazon SageMaker 优化 GPT-2 模型的编译和训练
**难度**:中级
**时间**:30分钟以上
该动手实验的目标是使用 [Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 训练编译器(Training Compiler)的功能,在 Stanford Sentiment Treebank v2 (SST2) 数据集上优化 GPT-2 模型的编译和训练。
LLM 模型基本都由复杂的多层神经网络组成,具有数十亿以上的参数,可能需要数千个 GPU 小时甚至更多时间才能完成训练。因此,在训练基础架构上优化此类模型需要丰富的深度学习和系统工程知识。尽管有些编译器的开源实现可以优化训练过程,但它们可能缺乏与某些硬件(例如 GPU 实例)集成的灵活性。[Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 训练编译器可以将深度学习模型从其高级语言表示形式转换为经过硬件优化的指令,从而加快训练速度,帮助减少总计费时间。
在动手实验中,我们将一起体验如何在[Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 中设置环境,包括权限设置、配置设置等。然后,我们将体验如何使用 [Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 训练编译器,在 SST2 数据集上训练 GPT-2 模型。[Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 训练编译器已集成到 Amazon 深度学习容器(DLC)中,使用这些容器在 GPU 实例上编译和优化 GPU 实例上的训练作业,只需对代码进行最少的更改。
[Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 训练编译器参考文档:https://docs.aws.amazon.com/sagemaker/latest/dg/training-compiler.html?trk=cndc-detail
## 使用 Amazon SageMaker 实现 BERT 模型的模型并行(Model Parallelization)训练
**难度**:高级
**时间**:60分钟以上
该动手实验的目标是使用 [Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 的模型并行库(Model Parallelism Library),来实现例如 BERT 这样的 LLM 模型的模型分布式并行训练。
在上周发布的 **《“顶流”AIGC:从论文解读深入探究 AIGC 和 LLM 的训练优化》在线直播**中,我们详细分析了训练大型语言模型(LLM)涉及许多挑战,以及 [Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 的各项功能如何一一对应来帮助开发者应对这些挑战。其中的挑战之一就是面对大数据和大模型是扩展性(Scaling up)。本实验将探讨和演示如何使用 [Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 的模型并行库(Model Parallelism Library),来实现大模型的模型分布式训练。
**扫描下方二维码或点击阅读原文**
**回看《“顶流”AIGC:从论文解读深入探究 AIGC 和 LLM 的训练优化》直播**
![微信图片_20230309142420.png](https://dev-media.amazoncloud.cn/f380a270a1af464fa4909c3e6a5c224c_%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20230309142420.png "微信图片_20230309142420.png")
模型并行性是一种训练无法容纳在单个 GPU 上的大型模型的方法。如果你正在研究从70亿个参数到1750亿个参数不等的模型,那么模型并行性就是实现这个目的的方法,这些模型太大了,不能放在单个 GPU 上。因此,我们需要一个并行策略来利用它们。使用 [Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 的模型并行库,可以训练由于 GPU 内存限制而难以训练的大型语言模型。该库可自动高效地将模型拆分为多个 GPU 和实例。使用该库,开发者可以高效地训练具有数十亿或数万亿个参数的 LLM 模型,从而更快地实现目标预测精度。
[Amazon SageMaker](https://aws.amazon.com/cn/sagemaker/?trk=cndc-detail) 的模型并行库参考文档:https://docs.aws.amazon.com/sagemaker/latest/dg/model-parallel.html?trk=cndc-detail
* 由于直播时间有限,实验二和实验三将由老师讲解为主。有兴趣的开发者可以根据老师提供的 Jupyter Notebook 文档进一步动手实践和深入研究。
# 演讲嘉宾
黄浩文,亚马逊云科技资深开发者布道师
专注于 AI/ML、Data Science 等。拥有20多年电信、移动互联网以及云计算等行业架构设计、技术及创业管理等丰富经验,曾就职于 Microsoft、Sun Microsystems、中国电信等企业,专注为游戏、电商、媒体和广告等企业客户提供 AI/ML、数据分析和企业数字化转型等解决方案咨询服务。
![ad38271cffd54fab89128fb402aad4d6.jpg](https://dev-media.amazoncloud.cn/f351026516634d2e92376afff23cae93_ad38271cffd54fab89128fb402aad4d6.jpg "ad38271cffd54fab89128fb402aad4d6.jpg")