LoRA秩与参数量计算器

本地处理
  • 打赏支持
  • 分享链接
  • 反馈建议
LoRA 冻结原模型、只训练两个小矩阵,参数量能压到基座的千分之一甚至更低。但要注意:可训练参数量不等于显存占用——Adam 优化器状态通常是适配器本身的八倍,这部分才是显存账单的大头。
-
可训练参数
-
占基座比例
-
适配器体积(bf16)
-
优化器状态显存
rank可训练参数占基座适配器体积优化器显存
单个 LoRA 适配器参数量 = r × (d_in + d_out);当输入输出维度相同且都等于 d_model 时,等于 2 × r × d_model。可训练参数总量 = 层数 L × 每层模块数 × r × (d_in + d_out)。占比 = 可训练参数 ÷ 基座参数量。适配器体积(bf16)= 参数量 × 2 字节。优化器状态(Adam 混合精度)= 参数量 × 16 字节(fp32 主权重 4 + 梯度 4 + 一阶动量 4 + 二阶动量 4)。训练显存增量 ≈ 参数量 × 18 字节(再加一份 bf16 前向副本)。

LoRA 为什么这么省

微调的本质是让权重矩阵 W 发生变化。LoRA 的思路是:不去直接改那个巨大的 W,而是假设「变化量 ΔW 是低秩的」——用两个小矩阵 A(r × d_in)和 B(d_out × r)相乘来近似 ΔW,其中 r 远小于 d_in、d_out。前向计算变成 h = Wx + BAx,W 全程冻结,只有 A 和 B 参与训练。

以 7B 模型、d_model = 4096、32 层、只对 q 和 v 两个模块加适配器为例:r = 8 时每个模块的参数是 8 × (4096 + 4096) = 65,536,每层两个模块是 131,072,乘 32 层约 420 万参数——只占 70 亿的 0.06%。这就是 LoRA 能在一张消费级显卡上微调大模型的根本原因。

rank 怎么选

rank相对参数量适合风险
4 – 8最小风格迁移、格式对齐、单一任务容量不足,复杂任务欠拟合
16 – 32中等领域知识注入、指令跟随最常用的平衡区间
64 – 128数倍于 8需要较强拟合能力时收益递减,容易过拟合小数据集

经验法则:先从小 rank 试起。r = 8 效果不够再翻倍到 16、32,观察验证集指标。把 rank 从 8 提到 128 参数量涨 16 倍,但效果提升往往远不到 16 倍——而且在小数据集上很容易过拟合。

应用在哪些模块上

  • 只加 q、v:最省,参数量约为全部线性层的 1/3.5。原论文的默认做法,多数场景够用。
  • 加 q、k、v、o:注意力部分全覆盖,参数量翻倍,效果通常略好。
  • 含 MLP 的全部线性层:参数量约 3.5 倍,拟合能力最强,但显存与小数据集过拟合风险同步上升。

显存账单的另一半

这就是本工具特意把「优化器状态」单独列出来的原因。Adam 在混合精度下每个可训练参数要占 16 字节:fp32 主权重 4 字节、梯度 4 字节、一阶动量 4 字节、二阶动量 4 字节。再加上一份 bf16 前向副本(2 字节),实际每个可训练参数约 18 字节。

所以 r = 8 的 420 万参数,适配器本体只有 8 MB 左右(bf16),但优化器状态要 67 MB。如果换成 rank 128,适配器 134 MB、优化器超过 1 GB。而基座模型如果用 bf16 加载,7B 就是 14 GB;改用 QLoRA(基座 4 bit 量化)能压到约 3.5 GB——这才是能在 8 GB 显卡上跑起来的关键。

一个实操提醒

LoRA 的适配器是可以合并回原模型的(W′ = W + BA),合并后推理时零额外延迟,这是它相对其他 PEFT 方法的巨大优势。但合并后就没法再单独调节 LoRA 权重了,所以建议保留未合并的适配器文件,部署时再决定合并还是动态挂载。另外多个 LoRA 也可以加权叠加使用,这也是社区模型「风格混搭」的常见玩法。

你可能还想问

秩越大越好吗?

秩越大表达能力越强但参数与显存占用也越高,还更容易过拟合;应按任务复杂度与数据量选择,而不是一味求大。

参数量怎么估?

与目标层维度、秩及接入的层数相关;只加在部分层上能大幅减少参数,是常用的降本做法。

怎么判断秩够不够?

看训练损失与验证效果:欠拟合说明容量不足可适当提高,过拟合则降低秩或加正则;以验证集表现作准。

相关工具

AI工具
模型量化体积与显存估算器

在线估算大模型的权重体积与部署显存,按参数量、量化精度、上下文长度、层数与批大小计算权重、KV Cache 与框架开销,并对比 FP32 到 INT4 各精度的显存占用。

AI工具
RAG分块重叠与冗余估算器

在线估算 RAG 知识库的分块数量、重叠冗余率、向量存储体积与检索注入量,对比不同重叠长度下的索引开销,帮助在召回质量与成本之间找到平衡点。

AI工具
GPU租用与训练预算计算器

在线估算云 GPU 按小时租用的训练成本、含重跑预算、人民币折算与自建回本小时数,覆盖 H200/H100/A100/L40S/4090 等主流型号

AI工具
重排序成本与收益估算器

在线核算 RAG 重排序(Rerank)的调用成本与节省下来的大模型上下文费用,给出净收益、ROI 与不同候选数的盈亏曲线

AI工具
系统提示词成本估算器

在线估算固定系统提示词在长期调用中的成本占比,按日调用量推算每天、每月、每年的 API 花费与优化空间

AI工具
向量化批量成本估算器

在线估算文档向量化的分块数量、总 token、嵌入成本与向量存储占用,支持 OpenAI 各嵌入模型对比

AI工具
语义缓存收益估算器

在线估算在 LLM 应用前加一层语义缓存的成本节省,按命中率计算节省 token、月度与年度费用下降幅度

AI工具
提示词压缩收益估算器

在线估算提示词压缩带来的成本节省,按原始 token 数、压缩率与月调用量计算每次与每月节省金额,并给出不同压缩率下的收益对照与质量风险提示。