LitGPT

LitGPT 是一个基于 PyTorch Lightning 的高性能库,用于从零预训练、微调和部署 20 多种大型语言模型。拥有 12K+ 的 GitHub 收藏,它是工程师在不需要 HuggingFace Transformers 抽象开销的情况下,获取干净、可修改的 LLM 训练代码的首选工具包。

LitGPT 中的每个模型大约为 ~1,000 行干净的 PyTorch 代码——没有十层深的继承链,也没有魔法操作。你可以在一个下午内端到端阅读 Llama 3 的实现并自信地修改它。

circle-check

什么是 LitGPT?

LitGPT 提供了可投入生产的最先进 LLM 实现,并具有统一的训练接口:

  • 支持 20+ 种模型 — Llama 3、Gemma 2、Mistral、Phi-3、Falcon、StableLM 等等

  • 从零预训练 — 使用 Flash Attention、FSDP 和梯度检查点进行完整预训练

  • 高效微调 — 完整微调、LoRA、QLoRA 和 Adapter 方法

  • 自信部署 — 内置带量化的推理服务器

  • 多 GPU 支持 — 开箱即用的 DDP、FSDP、张量并行

  • 内存高效 — 4 位量化、梯度检查点、激活检查点


服务器要求

组件
最低要求
推荐配置

GPU

RTX 3090(24 GB)

A100 80 GB / H100

显存

16 GB(7B LoRA)

80 GB+(70B 完整)

内存(RAM)

32 GB

64 GB+

CPU

8 核

16+ 核

存储

100 GB

500 GB+

操作系统

Ubuntu 20.04+

Ubuntu 22.04

Python

3.10+

3.11

CUDA

11.8+

12.1+

按任务的显存要求

任务
模型
显存

推理(4 位)

Llama-3 8B

约 ~6 GB

LoRA 微调

Llama-3 8B

约 ~16 GB

完整微调

Llama-3 8B

约 ~80 GB

LoRA 微调

Llama-3 70B

约 ~48 GB(2×A100)

完整微调

Llama-3 70B

约 ~640 GB(8×A100)

QLoRA 微调

Llama-3 8B

约 ~8 GB


端口

端口
服务
说明

22

SSH

终端访问与文件传输

8000

LitGPT 推理服务器

用于模型服务的 REST API


使用 Docker 快速开始


在 Clore.ai 上的安装

步骤 1 — 租用服务器

  1. 筛选条件为 显存 ≥ 24 GB (RTX 3090 或更好)

  2. 选择一个 PyTorchCUDA 12.1 基础镜像

  3. 在你的订单设置中打开端口 228000 在你的订单设置中

  4. 选择 存储 ≥ 200 GB 用于模型权重

步骤 2 — 通过 SSH 连接

步骤 3 — 安装 LitGPT

步骤 4 — 验证安装

预期输出:


下载模型

LitGPT 从 Hugging Face 下载模型:

设置 HuggingFace Token


推理(聊天与生成)


微调

LoRA 微调(推荐)

LoRA 训练一小部分适配器参数(通常是总权重的 0.1–1%),而基础模型保持冻结。在 RTX 3090 上,对 10K 个样本进行 Llama 3 8B 的 LoRA 微调大约需要 ~2 小时,使用 r=16.

QLoRA(4 位 + LoRA)

使用 QLoRA 可在受限显存上微调大型模型。Llama 3 8B 可在单块 24 GB 的 RTX 3090 上运行:

完整微调

多 GPU 训练


部署模型(REST API)

Python 客户端


从头预训练

如需在自己的数据上从头训练自定义 LLM:


转换与导出模型


评估模型


Clore.ai 的 GPU 建议

LitGPT 涵盖三类不同的工作负载——推理、LoRA 微调和完整预训练——每类对 GPU 的要求不同。

工作负载
GPU
显存
说明

推理 / 聊天(7–8B 模型)

RTX 3090

24 GB

在 bf16 下可容纳 Llama 3 8B;生成速度约 ~95 令牌/秒

LoRA 微调(7–8B 模型)

RTX 3090

24 GB

预算优选;QLoRA 可将显存保持在 10 GB 以下

LoRA 微调(7–8B),快速迭代

RTX 4090

24 GB

比 3090 快约 ~35%;将 2 小时的任务缩短到 ~1.4 小时

完整微调(7B)或 QLoRA(70B)

A100 40 GB

40 GB

40 GB 可容纳 7B 完整精度或 70B 的 4 位量化

完整微调(13B+)或预训练运行

A100 80 GB

80 GB

最高吞吐量;在 8B 上训练约 ~2,800 令牌/秒

对大多数用户的推荐: RTX 3090 对(2×24 GB = 48 GB,使用 FSDP 有效)。可处理 70B 模型的 QLoRA,或通过张量并行处理 7B 模型的完整微调。Clore.ai 上两块 3090 的费用约为 ~$0.25/小时。

用于预训练或 >70B 微调: 使用 4×A100 80GB 与 FSDP。LitGPT 的 FSDP 集成会透明地处理分片——只需传入 --devices 4 --strategy fsdp.


故障排除

CUDA 显存不足

下载失败 / HuggingFace 401

训练损失不下降

服务器端口 8000 无法访问

多 GPU 训练挂起


有用的链接

最后更新于

这有帮助吗?