LLM
Avatar
硬件
多模态
视频
RAG
音频
音乐
Infra
图像
机器人
⚒️大模型技术原理及实战经验
type
status
slug
summary
tags
category
icon
password
Date
目录
- 🔥 LLM训练
- 🌀 提示工程
- ♍️ LLM算法架构
- 🧩 LLM应用开发
- 🀄️ LLM国产化适配
- 🔯 AI编译器
- 💟 LLMOps
- 💬 LLM学习交流群
- 👥 微信公众号
- ⭐️ Star History
LLM训练
LLM训练实战
下面汇总了我在大模型实践中训练相关的所有教程。从6B到65B,从全量微调到高效微调(LoRA,QLoRA,P-Tuning v2),再到RLHF(基于人工反馈的强化学习)。
LLM | 预训练/SFT/RLHF... | 参数 | 教程 | 代码 |
Alpaca | full fine-turning | 7B | ||
Alpaca(LLaMA) | LoRA | 7B~65B | ||
BELLE(LLaMA/Bloom) | full fine-turning | 7B | N/A | |
ChatGLM | LoRA | 6B | ||
ChatGLM | full fine-turning/P-Tuning v2 | 6B | ||
Vicuna(LLaMA) | full fine-turning | 7B | N/A | |
OPT | RLHF | 0.1B~66B | ||
MiniGPT-4(LLaMA) | full fine-turning | 7B | N/A | |
Chinese-LLaMA-Alpaca(LLaMA) | LoRA(预训练+微调) | 7B | ||
LLaMA | QLoRA | 7B/65B | ||
LLaMA | GaLore | 60M/7B |
LLM微调技术原理
对于普通大众来说,进行大模型的预训练或者全量微调遥不可及。由此,催生了各种参数高效微调技术,让科研人员或者普通开发者有机会尝试微调大模型。
因此,该技术值得我们进行深入分析其背后的机理,本系列大体分七篇文章进行讲解。
LLM微调实战
下面给大家分享大模型参数高效微调技术实战,该系列主要针对 HuggingFace PEFT 框架支持的一些高效微调技术进行讲解。
教程 | 代码 | 框架 |
N/A | HuggingFace PEFT | |
HuggingFace PEFT | ||
HuggingFace PEFT | ||
HuggingFace PEFT | ||
HuggingFace PEFT | ||
HuggingFace PEFT | ||
HuggingFace PEFT | ||
PEFT、bitsandbytes |
近年来,随着Transformer、MOE架构的提出,使得深度学习模型轻松突破上万亿规模参数,传统的单机单卡模式已经无法满足超大模型进行训练的要求。因此,我们需要基于单机多卡、甚至是多机多卡进行分布式大模型的训练。
而利用AI集群,使深度学习算法更好地从大量数据中高效地训练出性能优良的大模型是分布式机器学习的首要目标。为了实现该目标,一般需要根据硬件资源与数据/模型规模的匹配情况,考虑对计算任务、训练数据和模型进行划分,从而进行分布式训练。因此,分布式训练相关技术值得我们进行深入分析其背后的机理。
下面主要对大模型进行分布式训练的并行技术进行讲解,本系列大体分九篇文章进行讲解。
分布式AI框架
- PyTorch
- PyTorch 单机多卡训练
- PyTorch 多机多卡训练
- Megatron-LM
- Megatron-LM 单机多卡训练
- Megatron-LM 多机多卡训练
- 基于Megatron-LM从0到1完成GPT2模型预训练、模型评估及推理
- DeepSpeed
- DeepSpeed 单机多卡训练
- DeepSpeed 多机多卡训练
- Megatron-DeepSpeed
- 基于 Megatron-DeepSpeed 从 0 到1 完成 LLaMA 预训练
- 基于 Megatron-DeepSpeed 从 0 到1 完成 Bloom 预训练
分布式训练网络通信
待更新...
LLM训练优化技术
- FlashAttention V1、V2
- 混合精度训练
- 重计算
- MQA / GQA
- 梯度累积
LLM对齐技术
- PPO(近端策略优化)
- DPO
- ORPO
LLM推理框架
- TensorRT-LLM保姆级教程(三)-基于Triton完成模型服务化
- TensorRT-LLM保姆级教程(四)-新模型适配
- TensorRT
LLM推理优化技术
- FlashAttention
- PagedAttention
- Continuous Batching
- Flash Decoding
- FlashDecoding++
LLM压缩
近年来,随着Transformer、MOE架构的提出,使得深度学习模型轻松突破上万亿规模参数,从而导致模型变得越来越大,因此,我们需要一些大模型压缩技术来降低模型部署的成本,并提升模型的推理性能。 模型压缩主要分为如下几类:
- 剪枝(Pruning)
- 知识蒸馏(Knowledge Distillation)
- 量化
本系列将针对一些常见大模型量化方案(GPTQ、LLM.int8()、SmoothQuant、AWQ等)进行讲述。
- 量化感知训练:
- 训练后量化:
LLM剪枝
结构化剪枝:
- LLM-Pruner(LLM-Pruner: On the Structural Pruning of Large Language Models)
- LLM-Shearing(Sheared LLaMA: Accelerating Language Model Pre-training via Structured Pruning)
非结构化剪枝:
- SparseGPT(SparseGPT: Massive Language Models Can be Accurately Pruned in One-Shot)
- LoRAPrune(LoRAPrune: Pruning Meets Low-Rank Parameter-Efficient Fine-Tuning)
- Wanda(A Simple and Effective Pruning Approach for Large Language Models)
- Flash-LLM(Flash-LLM: Enabling Cost-Effective and Highly-Efficient Large Generative Model Inference with Unstructured Sparsity)
LLM知识蒸馏
Standard KD:
使学生模型学习教师模型(LLM)所拥有的常见知识,如输出分布和特征信息,这种方法类似于传统的KD。
- MINILLM
- GKD
EA-based KD:
不仅仅是将LLM的常见知识转移到学生模型中,还涵盖了蒸馏它们独特的涌现能力。具体来说,EA-based KD又分为了上下文学习(ICL)、思维链(CoT)和指令跟随(IF)。
In-Context Learning:
- In-Context Learning distillation
Chain-of-Thought:
- MT-COT
- Fine-tune-CoT
- DISCO
- SCOTT
- SOCRATIC CoT
Instruction Following:
- Lion
低秩分解
低秩分解旨在通过将给定的权重矩阵分解成两个或多个较小维度的矩阵,从而对其进行近似。低秩分解背后的核心思想是找到一个大的权重矩阵W的分解,得到两个矩阵U和V,使得W≈U V,其中U是一个m×k矩阵,V是一个k×n矩阵,其中k远小于m和n。U和V的乘积近似于原始的权重矩阵,从而大幅减少了参数数量和计算开销。
在LLM研究的模型压缩领域,研究人员通常将多种技术与低秩分解相结合,包括修剪、量化等。
- ZeroQuant-FP(低秩分解+量化)
- LoRAPrune(低秩分解+剪枝)
LLM数据工程
LLM Data Engineering
预训练语料处理技术
- 数据收集
- 数据处理
- 去重
- 过滤
- 选择
- 组合
LLM微调高效数据筛选技术
提示工程
- Zero-Shot Prompting
- Few-Shot Prompting
- Chain-of-Thought (CoT) Prompting
- Automatic Chain-of-Thought (Auto-CoT) Prompting
- Tree-of-Thoughts (ToT) Prompting
- ChatGLM / ChatGLM2 / ChatGLM3 大模型解析
- Bloom 大模型解析
- LLaMA / LLaMA2 大模型解析
- QWen 大模型剖析
LLM应用开发
大模型是基座,要想让其变成一款产品,我们还需要一些其他相关的技术,比如:向量数据库(Pinecone、Milvus、Vespa、Weaviate),LangChain等。
随着 ChatGPT 的现象级走红,引领了AI大模型时代的变革,从而导致 AI 算力日益紧缺。与此同时,中美贸易战以及美国对华进行AI芯片相关的制裁导致 AI 算力的国产化适配势在必行。本系列将对一些国产化 AI 加速卡进行讲解。
- 大模型国产化适配3-基于昇腾910使用ChatGLM-6B进行模型训练
- MindRecord数据格式说明、全量微调、LoRA微调
- 大模型国产化适配8-基于昇腾MindIE推理工具部署Qwen-72B实战(推理引擎、推理服务化)
- Qwen-72B、Baichuan2-7B、ChatGLM3-6B
AI编译器是指将机器学习算法从开发阶段,通过变换和优化算法,使其变成部署状态。
框架:
- MLIR
- XLA
- TVM
AI基础设施
AI加速卡
- AI芯片技术原理剖析(二):英伟达GPU
- AI芯片技术原理剖析(三):谷歌TPU
AI集群
待更新...
待更新...
- 分布式训练网络通讯原语
- AI 集群通信软硬件
LLMOps
LLM生态相关技术
服务器基础环境安装及常用工具
基础环境安装:
常用工具:
llm-action
liguodongiot • Updated Nov 11, 2024