本页介绍了LLM课程仓库中提供的笔记本和代码示例。这些资源提供了关于大型语言模型开发、部署和优化的各个方面的实际动手经验。它们旨在通过可在Google Colab中运行的可执行实现来补充课程中的理论内容。
有关课程开发的实用工具的信息,请参阅LLM Tools。有关代码之外的更多学习资源,请参阅Additional Learning Resources。
来源: README.md22-66
该仓库中的笔记本分为四个主要类别,每个类别在LLM开发生命周期的特定目标上发挥作用。
来源: README.md22-66
工具笔记本提供实用函数,可简化常见的LLM工作流和操作。这些笔记本旨在简化那些通常需要多个手动步骤的过程。
| Tool Notebook | 目的 | 主要功能 |
|---|---|---|
| LLM AutoEval | 使用RunPod对LLM进行自动化评估 | 基准测试比较、指标跟踪 |
| LazyMergekit | 使用MergeKit一键式模型合并 | 简化多个模型的合并 |
| LazyAxolotl | 使用Axolotl进行云端微调 | 一键式微调,设置极简 |
| AutoQuant | 多格式模型量化 | 支持GGUF、GPTQ、EXL2、AWQ和HQQ格式 |
| Model Family Tree | 可视化合并模型的相互关系 | 生成家谱以跟踪模型谱系 |
| ZeroSpace | 自动创建Gradio聊天界面 | 免费ZeroGPU部署 |
来源: README.md27-36
微调笔记本专注于使预训练模型适应特定任务或领域的技术。它们涵盖了从监督微调到偏好对齐方法的各种方法。
| Notebook | 基础模型 | 技术 | 主要功能 |
|---|---|---|---|
| Unsloth Fine-tuning | Llama 3.1 | 超高效SFT | Google Colab兼容,内存优化 |
| ORPO Fine-tuning | Llama 3 | 单阶段对齐 | 比多阶段更快,成本效益高 |
| DPO Fine-tuning | Mistral-7b | 直接偏好优化 | SFT后性能增强 |
| QLoRA Fine-tuning | Mistral-7b | 量化低秩适应 | 免费层级Colab兼容,TRL集成 |
| Axolotl Fine-tuning | CodeLlama | 端到端微调 | 最先进的工具,功能全面 |
| LoRA Fine-tuning | Llama 2 | 低秩适应 | 初学者分步指南 |
来源: README.md38-47
量化笔记本专注于在保持性能的同时减小模型大小和提高推理效率的技术。这些笔记本提供了各种量化方法的实际实现。
| Notebook | 重点 | 方法 | 主要功能 |
|---|---|---|---|
| 量化入门 | Fundamental concepts | 8 位量化 | 权重优化基础,LLM.int8() |
| 4-bit Quantization | 高级技巧 | GPTQ | 低比特精度,面向消费级硬件 |
| GGUF and llama.cpp | 格式转换 | GGUF format | HF Hub上传,llama.cpp集成 |
| ExLlamaV2 | 性能优化 | EXL2 format | 最快的推理库,HF Hub上传 |
来源: README.md49-56
该仓库包含几个额外的笔记本,涵盖了主要类别之外的专业主题和技术。
| Notebook | 重点 | 技术 | 主要功能 |
|---|---|---|---|
| Merge LLMs with MergeKit | Model combination | MergeKit | 无需GPU,自定义模型创建 |
| Create MoEs with MergeKit | Expert ensembling | FrankenMoE | Multiple expert combination |
| Uncensor LLMs with abliteration | Behavior modification | Abliteration | Fine-tuning-free approach |
| Improve ChatGPT with Knowledge Graphs | 知识增强 | Graph augmentation | Response enrichment |
| Decoding Strategies | 文本生成 | Multiple methods | Beam search to nucleus sampling |
来源: README.md58-66
这些笔记本设计为与Google Colab一起使用,Google Colab是一个基于云的Jupyter笔记本环境,提供免费的计算资源(包括GPU)。每个笔记本都包含一个Colab徽章(!Colab Badge),可以将其直接在Colab中打开。
来源: README.md1-66 img/colab.svg1-2
LLM课程仓库中的笔记本和代码示例提供了理论部分讨论的各种技术的实际实现。它们涵盖了LLM开发的整个生命周期,从微调和量化到专业应用和部署策略。这些资源利用Google Colab等云端环境,使用户能够获得最先进的LLM技术的实践经验,而无需复杂的设置。
来源: README.md22-66