微调
适合大模型微调的 GPU:从 QLoRA 到全参数微调
微调首先是显存问题。根据您的方法和模型规模选择 GPU,让数据整月留在服务器上,反复迭代也不必盯着计费表。
- 整卡独享,绝不共享
- 任何月份均可取消
- 按期交付,否则全额退款
推荐配置
-
NVIDIA H200 141 GB:长上下文的 70B QLoRA,以及 32B 以内的 BF16 LoRAUS$3,090/月
-
NVIDIA H100 SXM 80 GB:70B 以内的 QLoRA,以及 8B–14B 模型的 BF16 LoRAUS$2,190/月
-
NVIDIA B200 180 GB:70B 模型的 BF16 LoRA,或 8B 模型的全参数微调US$4,590/月
亮点
-
每种方法都有合适的配置
单张 H100 即可做 QLoRA,单张 B200 可对 70B 模型做 BF16 LoRA,全参数微调则使用 8 卡节点。
-
数据原地保留
基座权重、数据集和检查点在整个已付费月份内都保存在本地 NVMe 上。
-
只提供整卡
没有 vGPU 切分、MIG 分区或分时共享:全部显存都归您使用。
-
放手迭代
固定月价意味着一次失败的训练或一轮额外的超参数扫描,都不会产生额外费用。
-
开箱即用的镜像
Ubuntu 系统,预装 NVIDIA 驱动、CUDA、Docker 和 NVIDIA Container Toolkit。
适合大语言模型(LLM)微调的 GPU,是能装下您的基座模型、所选方法的训练状态和最长序列,并且仍有余量的最小那一款。下文给出 8B、32B 和 70B 模型做 QLoRA、LoRA 和全参数微调的显存计算,说明每种情况用哪款单卡即可胜任,以及何时需要改用 8 卡节点。我们的所有 GPU 都是整张物理卡,按月租用。
每种微调方法需要多少显存
- 全参数微调
会训练每一个权重。使用 AdamW 和混合精度时,不计激活值,每个参数大约需要 16–20 字节。8 位优化器状态可为每个参数节省约 6 字节。 - LoRA 以 BF16 精度冻结基座模型(每个参数 2 字节),只训练小型适配器矩阵,其优化器状态通常最多只占几 GB。
- QLoRA 以 4 位精度加载冻结的基座模型,每个参数约 0.5 字节,外加少量开销,并在其上训练 BF16 适配器。在正式采用之前,请先在您自己的评测集上把它的效果与 LoRA 进行比较。
| 模型 | QLoRA,4 位基座模型 | LoRA,BF16 基座模型 | 全参数微调,AdamW |
|---|---|---|---|
| 8B | 约 16 GB | ||
| 32B | 约 18 GB | 约 64 GB | |
| 70B | 约 40 GB | 约 140 GB |
大模型微调:哪款 GPU 适合您的模型
- H100,80 GB HBM3。可对 70B 以内的模型做 QLoRA:4 位权重约占 40 GB,在中等上下文长度下仍能为激活值留出空间。可对 8B 至 14B 模型做 BF16 LoRA。全参数微调只适用于约 3B 参数的小模型。
- H200,141 GB HBM3e。可对 70B 模型做 QLoRA,并支持更长的序列或更大的批次;可对 32B 模型做 BF16 LoRA,余量充足;借助 8 位优化器,还可对 7B 至 8B 模型做全参数微调。
- B200,180 GB HBM3e。可对 70B 模型做 BF16 LoRA:约 140 GB 权重之外还剩约 40 GB,在启用梯度检查点后可容纳适配器和激活值。还可在标准混合精度下对 8B 模型做全参数微调。
- B300,288 GB HBM3e。我们提供的规格最大的单卡套餐,可在长上下文下对 70B 模型做 LoRA,无需在显存上精打细算。
一旦全部装得下,速度就由显存带宽决定:根据 NVIDIA 公布的规格,H100 为 3.35 TB/s,H200 为 4.8 TB/s,B200 为 8 TB/s。如需深入了解这两款 Hopper 显卡,请阅读我们的 H100 与 H200 对比。
什么时候需要 8 张 GPU
- 8B 以上模型的全参数微调。
32B 模型约需 510–640 GB 训练状态,借助 FSDP 或 DeepSpeedZeRO-3 ,可以装入配备 1.13 TB HBM3e 的 HGX H200 节点。70B 模型需要1.1–1.4 TB:可选择 HGX B300 节点,或使用 HGX B200 节点,并把优化器状态卸载到它的 2 TB 内存中。 - 强化学习。PPO 和 GRPO 类后训练通常要在训练器旁边运行 vLLM 等生成引擎,因此需要把 GPU 分配给采样(rollout)和训练两部分。
- 长上下文。在 32k 到 128k 个 token 时,激活值占据显存预算的大头;上下文并行可以把它们分摊到多张 GPU 上。
- 实际耗时。在 8 张 GPU 上做数据并行,可以缩短那些在单卡上要跑好几天的大型训练任务。
我们的 8 卡服务器通过 NVLink 连接全部 8 张 GPU。预训练和大规模后训练请参阅大模型训练 GPU 服务器;如需深入了解常见规模中最大的一档,请阅读我们的 70B 模型微调指南。
软件与环境配置
请把基座模型和分词后的数据集放在本地 NVMe 上:H100 和 H200 套餐为 2 TB,B200 为 2.75 TB。BF16 精度的 70B 基座模型约 140 GB,下载一次即可整月重复使用,而且入站流量不计入您的流量额度。每次训练结束后,可在同一张 GPU 上用 vLLM 加载检查点,测试之后再上线;具体配置请参阅我们的 PyTorch 与 vLLM 指南。
微调该按月还是按小时租用?
微调是一个反复迭代的过程:清洗数据、扫描学习率、评测,然后重复。按月独享一张 GPU,适合每周要跑好几次实验的团队,因为每多跑一次都不会增加费用。每月 US$2,190 的 H100 如果全天候满载运行,约合每 GPU 小时 US$3.00;如果只用 100 小时,有效费率约为每小时 US$21.90。如果您每季度只微调几个小时,在别处按小时计费会更便宜。请对照按月与按小时 GPU 计费对比,用您自己的数据算一算。
开始使用时,请在部署页面选择配置,在同一表单中免费创建账户,然后用预付余额支付首月费用;余额通过加密货币充值。承诺交付日期会在付款前显示,IP 地址和 SSH 登录信息会在该日期前显示在您的控制台中。
能在单张 GPU 上微调 70B 模型吗?
可以,使用适配器即可。对 70B 模型做 QLoRA,4 位基座权重约需 40 GB,单张 H100 就能装下;BF16 LoRA 约需 140 GB,单张 B200 能装下。70B 模型的全参数微调则需要一个 8 卡节点或更多。
用 H100 做大模型微调够用吗?
对于 70B 以内的 QLoRA 和约 14B 以内模型的 BF16 LoRA,通常够用。如果要对 32B 模型做 BF16 LoRA 或处理长上下文,H200 的余量更大;8B 模型的全参数微调则最适合在 B200 上进行。
两次训练之间,我的数据集和检查点会保留在服务器上吗?
会。在整个已付费月份内,服务器都归您使用,因此基座权重、数据集、检查点和您的环境都保留在其本地 NVMe 上。除非另有书面约定,我们不会备份本地存储,因此请把重要结果复制到服务器之外。
如何把数据集传到服务器上?
通过 SSH 用 scp 或 rsync 复制,或者从数据当前所在的位置直接拉取。入站流量不计入所含流量额度。