LLM workshop 2024
1.0.0
该教程针对有兴趣了解大语模型(LLMS)的构件,LLM的工作方式以及如何从Pytorch的地面进行编码的编码器。我们将介绍本教程,介绍LLM,最近的里程碑及其用例。然后,我们将编写一个类似GPT的LLM,包括其数据输入管道,核心体系结构组件和预处理代码。在了解所有内容如何合并在一起以及如何预处理LLM之后,我们将学习如何使用开源库加载预验证的重量和Finetune LLM。
代码材料基于我的构建大型语言模型,还使用了Litgpt库。
可以在此处提供一个即将到达的云环境,其中包含所有代码示例和依赖项。这使参与者能够在GPU上运行所有代码,尤其是在预处理和填充部分中。
此外,请参阅设置文件夹中的说明以设置计算机以在本地运行代码。
| 标题 | 描述 | 文件夹 | |
|---|---|---|---|
| 1 | LLMS简介 | 介绍LLM的研讨会简介,该研讨会中涵盖的主题以及设置说明。 | 01_intro |
| 2 | 了解LLM输入数据 | 在本节中,我们将通过实现文本令牌和我们的LLM的自定义Pytorch DataLoader来编码文本输入管道 | 02_data |
| 3 | 编码LLM体系结构 | 在本节中,我们将浏览LLMS的各个构建块,并在代码中组装它们。我们不会细致的细节涵盖所有模块,而是将重点放在更大的情况下,以及如何将它们组装成类似GPT的模型。 | 03_architecture |
| 4 | 预训练的LLM | 在第4部分中,我们将介绍LLM的预训练过程,并实施代码,以确定我们先前实施的模型体系结构。由于预处理很昂贵,我们只会在公共领域中可用的小文本样本上预处理它,以便LLM能够生成一些基本的句子。 | 04_进行 |
| 5 | 加载预验证的重量 | 由于预训练是一个漫长而昂贵的过程,因此我们现在将在自我实施的体系结构中加载预处理的重量。然后,我们将介绍LITGPT开源库,该图书馆为培训和Finetuning LLMS提供了更复杂的(但仍可阅读)的代码。我们将学习如何在LITGPT中加载预验证的LLM(Llama,Phi,Gemma,Mistral)。 | 05_weightloading |
| 6 | FINETUNING LLMS | 本节将介绍LLM Finetuning技术,我们将准备一个小型数据集以进行指导登录,然后我们将使用该数据集在LITGPT中使用LLM。 | 06_finetuning |
(代码材料基于我的构建大型语言模型,还使用了litgpt库。)