menu Witchery_Lab LoRA 微调怎么训自己的语气:$2.56 一笔账复盘,三处硬伤要改(核查)
文章开始
文章结尾
~/blog/🤖 人工智能 AI/LoRA 微调怎么训自己的语气:$2.56 一笔账复盘,三处硬伤要改(核查)

LoRA 微调怎么训自己的语气:$2.56 一笔账复盘,三处硬伤要改(核查)

LLM 微调训练流程与风格克隆

一句话直答:用几百 MB 到几十 GB 的自有文本,一次 LoRA 训练就能让模型写出你的语气,成本低到可以忽略——视频里的实算是 640 万 token、$2.56、7 分钟,这条属实。但整套教程有三处硬伤:他把「训练 loss 降、验证 loss 升」当成训练成功的证据并部署了最后一轮权重,而 Nebius 自己的文档把这条曲线写作过拟合警告;他用 11 个 epoch 训练,官方教程用 3 个、社区推荐 1–3 个;以及视频预言「ChatGPT 和 Claude 这类平台迟早会把微调内置」,实际走的是反方向——OpenAI 自 2026 年 5 月起逐级关闭自助微调,2027 年 1 月 6 日连老客户也不能再建新任务。

视频来源是 Matt Wolfe 频道的 LoRA 微调分步教程(28 分 20 秒,2025 年录制)。核查立场:平台能力与价格对官方文档和官方定价页,训练方法对 LoRA 原文与 Nebius、Unsloth 的参数指南,平台走向对各家官方弃用与发布说明。视频录制与本篇核查之间隔了一年多,凡已经变了的,一律以现在的官方页面为准,并标出变化点。

视频主张 核查结论 依据
8B 模型、640 万 token,训练一次花 $2.56、耗时 7 分钟✅ 有证据6.403 × $0.40 = $2.56,账自洽
微调学语气,RAG 给事实,两件事分工不同✅ 有证据方向正确,但这是教学类比不是定理
训练 loss 降、验证 loss 升,说明训练做对了🔴 与主流相悖Nebius 官方把这条列为过拟合信号
11 个 epoch 是合适的训练量⚠️ 存疑官方默认 3,社区推荐 1–3
验证集是给模型自查用的❌ 错不参与训练,只用来算验证 loss
prompt 是让模型从成稿反推出来的,质量可控⚠️ 部分支持可行但分布会偏,视频自己也踩了坑
部署微调后的模型几乎不花钱⚠️ 部分支持训练是一次性,推理仍按量计费
ChatGPT、Claude、Gemini 迟早把微调内置🔴 与主流相悖OpenAI 自助微调正在关闭,不是内置
X 的数据导出要等 24 小时,长推文拿不到全文⚠️ 部分支持官方确认非即时,未写时长;长贴文上限 2.5 万字

下面按原视频的操作顺序复盘一遍,把该改的地方标出来。你如果只是想找个能出活的口吻模型而不打算自己开训练机,先看同一套订阅怎么把额度用满那篇,省下来的钱够训二十次;确实要训的,再往下走。

🧾 钱是怎么花出去的:$2.56 这笔账可以复算

视频用的是 Nebius Token Factory,选了 Llama 3.1 8B Instruct 当底座,界面上的训练单价是每百万 token $0.40。他喂进去 640.3 万 token,按屏幕上的时间戳,17:19 开始、17:26 结束,7 分钟训完,账单 $2.56。乘一下就知道这笔账没有水分:6.403 × 0.40 = 2.5612,四舍五入正好对上。

同一个人用 Llama 3.3 70B 训自己的 YouTube 转录,喂了将近 2700 万 token,屏幕上是 $75。27 × 2.80 = 75.60,也对得上。两次的成本差 29.5 倍,可以拆成两个因子看:token 量差 4.2 倍(27M ÷ 6.403M),单价差 7 倍($2.80 ÷ $0.40),4.2 × 7 = 29.4,对得上。

单价 7 倍这件事本身值得看一眼。70B 和 8B 的参数规模差 8.75 倍,训练单价只差 7 倍,说明这家的定价没有严格按参数量线性走。想省钱的直接结论是:短文本(推文、标题、摘要)用 8B,长文(脚本、博客、口播稿)再上 70B,混着用就是视频里的做法,本身没问题。

要提醒一句的是,这两组价格是视频录制时的截图。我去查 Token Factory 的现行价目页,那个链接现在直接返回 404,官方文档里也没有一张公开的训练单价表,所以本文不重复引用具体数字当作现价,下单前以结算页为准。真正稳定的只有两个乘数关系:单价差 7 倍、成本 ≈ token 量 × 单价。

🔴 最要紧的一处:那条曲线是过拟合信号,不是成功信号

视频里原话是:训练 loss 每个 epoch 都在降、验证 loss 每个 epoch 都在升,「所以,完美(perfect)」。然后他点了 epoch 11 的权重去部署。

这条要反过来。Nebius 自己的训练方法博客在「过拟合的征兆」一节写得很直接:训练 loss 持续下降、验证 loss 在触底后回升,这是过拟合。同一篇在「监控训练过程」一节又列了一遍警告信号,第一条还是它——验证 loss 上升同时训练 loss 下降,过拟合。配套的做法叫早停:盯住验证指标,指标不再改善就停,并回到表现最好的那个检查点。

换句话说,视频里那条被他当成勋章的曲线,按平台自己的说明书读是警报。他挑的那轮——11,训练跑完的最后一轮——恰好是这条曲线上离最优点最远的位置。早停逻辑会停在验证 loss 最低的那个 epoch,然后恢复那个权重,不会把最后一轮发出去。

为什么会这样,说得直白点:训练集上背得越熟,模型对验证集这种没见过的数据就越容易乱猜,验证 loss 就往上走。视频那位作者训练 11 轮、批大小只有 8、数据集是合成 prompt 生成的几千条推文——这个体量下多跑几轮,记住训练集比学通风格要容易得多。

所以正确的读图顺序是:先看验证 loss 最低点在哪一轮,训练就停在那附近。 验证 loss 曲线是判据,训练 loss 只是背景参照。看完这条,视频这套流程里唯一可靠的经验是「7 分钟、2.56 美元」这个成本数据——它跟轮数无关,是真实且可复现的。

⚙️ 11 个 epoch 从哪来的:默认是 3,教程也是 3

视频把超参数一个个念出来:批大小 8、学习率倍数 0.00001、epoch 11、预热比例 0.03、权重衰减 0.001、最大梯度范数 1、packing 打开、LoRA rank 16、alpha 32、dropout 0.05。他自己说明,前四项之外的那几个数字「是照着某篇博客抄的,我照搬下来一直好用」。

拿官方 API 文档对一遍,会发现他填的多数就是平台默认值:批大小默认 8(可选 8 到 32)、学习率倍数默认 0.00001、预热比例默认 0、权重衰减默认 0、最大梯度范数默认 1、packing 默认开。LoRA 默认是关的(默认走全量微调),他是手动打开的。真正的自选参数只有三个:epoch 11、rank 16、alpha 32。

epoch 11 明显高于所有参考值。官方 API 文档写的是 n_epochs 取值 1 到 20、默认 3;Nebius 官方那篇 LoRA 实操博客为了省钱只训 3 轮;Unsloth 的参数指南更直接,建议 1–3 轮,并写明超过 3 轮收益递减、过拟合风险上升。11 落在官方允许的区间内,所以不会报错,但没有任何一份文档推荐这个数。

rank 16 配 alpha 32 是合理组合,两者一起决定注入强度。原始 LoRA 论文的更新公式里,这项调整按 alpha 除以 rank 缩放,rank 16 配 alpha 32 就是 2 倍注入,属于偏激进但社区常用的选择——Unsloth 的建议是 alpha 等于 rank(保守)或等于两倍 rank(加速),两条都认。视频没提这层关系,但数值本身没踩坑。

还有一个术语要理顺:平台里的字段叫「学习率倍数(learning_rate_multiplier)」,0.00001 是相对默认学习率的倍数,不是绝对学习率。所以拿它跟社区常说的 2e-4 直接比大小是比错了口径,两者不同量纲。视频照抄了默认值,没做错,但它也没有解释这个字段是什么意思——初学者最容易在这里卡住。

🧬 训练数据:合成 prompt 是整条链最脆的一环

视频的做法是把 X 的导出文件(tweets.js)丢给 ChatGPT,让它给每条推文反向生成一个「什么样的提问能写出这条推文」,再拼成训练平台要的 JSONL 格式。整套流程包括:解析推文、过滤转发和过短内容、为每条生成一句提问、切分数据集、输出指令格式的 JSONL。这套自动化本身能跑通,视频也给了可复现的提示词。

但这个设计有一个结构性缺陷,值得单独说。训练时的输入是事后造出来的,真实使用时的输入是人随手打的。两者分布不一样:合成提问措辞高度雷同,模型学到的是「怎么回答这种提问」,而不是「怎么理解一个真实需求」。视频后半段自己撞上了这个坑的另一面——他每一条生成的推文开头都带 @,把人 at 了一遍,排查后发现原因是导出的数据里回复远多于原创,模型学到了回复的习惯。他回到 ChatGPT 重新生成,指定只保留主时间线上的原创内容,才修好。

这是整段视频里最有价值的一段,因为它证明了微调学的是你数据里的习惯,不只是文风。你训练集里有什么毛病,模型就学什么毛病。而且你看不见的毛病也在学——他提到微调模型还写出了「谢谢 Wirestock 赞助」这种几年前才有的旧内容,因为那在训练数据里,不是模型在编。

关于验证集,视频的说法是「那 10% 是给 AI 模型自查的,看它给的答案离验证集里写的差多少」。前半句的机制描述不准确:验证集不参与权重更新,模型不会拿它「自查」,它只用来算验证 loss 和决定早停点。另外他原本要的是 90/10,实际拿到的文件是 80 训练 + 10 验证 + 10 完全留出,ChatGPT 在文件说明里写明了这点,他也承认了「跟我想的不一样,但应该影响不大」。影响确实不大,但训练数据比预期少两成,这一点他自己没往下追。

还有一条关于 X 数据导出的。视频说必须等 24 小时,官方帮助中心的流程是:进设置 → 验证身份 → 请求数据 → 收到邮件或推送后下载,官方没有写具体等待时长,所以「24 小时」是作者的个人经历,不是官方承诺。可以确认的是确实不能即时拿到。另外他说长推文在导出文件里只剩 140 到 280 字符——X 官方说明长贴文上限是 2.5 万字符,归档里另存了完整文本字段,他看到的应该是被截断的那个字段。X 没有公开 tweets.js 的字段级说明,这一条我按「未找到官方字段文档」处理,实际以你导出的文件内容为准。

💸 70B 那次花了 $75,值不值取决于你要写多少

视频用 70B 训 YouTube 转录那次,$75、2700 万 token、屏幕显示 $2.80 每百万。他自己的判断是「一次性的成本,想要一个像自己的模型,这是一次性开销」。这个判断成立,但有两个前提他没说。

第一,底座模型的生命周期会盖过微调结果。#144 那篇核查过一个类似案例:一个开源世界模型的主模型 14B 版本训练完就撤下了,底座一旦下线,挂在上面的微调权重跟着失效。这一条值得记住:微调产物是租来的,不是自己拥有的资产,账面上的一次性成本,换来的是一份和底座绑定的合约。

第二,训练是低频操作,推理才是长期成本。$2.56 买的是「学会你的语气」这一件事,不是每一次生成。真正常年花出去的是推理——部署后跑 playground 那条视频里也说了,推理费用和基础模型走同一套按量计费,只是「基本不多」而不是零。LoRA 适配器只训练一小部分权重(原始论文的核心贡献就是把可训练参数压到极小比例),省的是训练显存和训练钱,不省推理成本。

所以判断标准可以粗一点:如果你的任务大部分时间在写,写 8B 就够;如果你要的是长文连贯和术语稳定,再上 70B。这跟第 135 篇讲的配额逻辑是同一件事——先算清单位成本,再决定往上加不加档,别反过来。

🔁 一年后的今天:平台走向跟视频的预测相反

视频结尾预测:ChatGPT、Claude、Gemini 这些平台迟早会把微调内置进去,用户不必自己折腾。这句话在今天看来是反的。逐家说。

平台 自助微调现在什么状态
OpenAI正在关闭。官方弃用页写明三步走:2026-05-07 起没训过的新组织不能建任务;2026-07-02 起近 60 天没在微调模型上做过推理的组织不能建任务;2027-01-06 起现有客户也不能再建新任务。已有微调模型的推理继续可用,直到底座下线。
Google还开着,但型号落后一代。Vertex AI 的有监督微调目前支持 Gemini 2.5 Pro、2.5 Flash、2.5 Flash-Lite;3.x 系列尚未开放,社区里 2026 年下半年仍有人在问时间表。
Anthropic我没在官方平台文档里找到面向公众的自助微调入口文档。可微调的路径是走云厂商合作(AWS 侧的技术中心),不是自己点几下就能跑。
Nebius / 开源托管视频走的就是这条路,公开文档齐全,支持 LoRA 与全量微调两种,一键部署留在同一平台。本篇的每个参数数字都来自这套文档。

OpenAI 那三条时间点值得抄下来,因为它决定了你现在还能不能开工:如果你从没建过微调任务,现在开始已经来不及进第一批了;如果你是老客户,窗口是 2027 年 1 月 6 日。这不是技术判断,是商业判断——大厂把定制能力收进企业合同,自助通道让给托管平台和开源社区。对个人用户来说,反倒不是坏消息:视频里这条路走的人更多了。

还有个更朴素的变化:现在的大模型在「听语气」这件事上,本身就比视频录制时强得多。用一份几十 MB 的材料配好提示词就能拿到接近的效果,那种微调需求不像以前那么刚。这条属于我的判断,不是官方结论,标在这里供你自己核。

🧭 该不该自己训:三个前置问题

视频的方法确实能work,但有门槛。按顺序问自己三个问题。

第一,你的语料够不够干净?训练集里有什么毛病,模型就学什么毛病——视频里那个「每条都 @ 人」的例子就是证据。如果你的历史推文里一半是转发、很多是三分钟随手发的碎片,那么训出来的就是碎片风格。先看数据再决定练不练,比训完再调省事。

第二,底座还在吗?你训的是一个租来的模型。#144 那篇的世界模型案例说明,主模型被撤下时,挂在上面的定制一并失效。选底座时先看它的生命周期公告,别只看今天的价格。

第三,训练曲线你会读吗?如果你不知道验证 loss 最低点在哪,你的训练大概率白跑一次——多花的时间和钱,恰好是这次最贵的学费。视频的整段实操里最该改的一步就是这里。

三个都是「是」,就照视频的流程走一遍,把 epoch 从 11 改成 3 起跑,盯住验证 loss 的最低点在那停下。三个里有一个「不是」,先去 #130 那篇把模型塞进手机离线跑那套玩法摸一遍,成本低得多。

🤖 在哪用 & 怎么订划算 API 通道
🎁 GLM 智谱国际版 智谱 GLM Coding Plan 国际站订阅,走邀请链接立减 10%($18 档 $16.2 起),Claude Code 等 20+ 编程工具通用;国内版在 bigmodel.cn,付款方式不同 9 折订阅 → 🤖 Xiaomi MiMo 双方各得 ¥10 脚本与重复性任务跑量便宜;邀请链接双方各得 ¥10,首单再叠 9 折 看订阅 → 🌙 Kimi 月之暗面 不想自己训练时的平替:长文语气稳定性是它的长板,登月同行活动 100% 得奖,最高 1 年会员 注册立得优惠 → ⚡ MiniMax 国际版 按 token 计价的托管通道,想在云端跑推理不用自己开卡时用得上 订阅优惠 → 🔑 APIMODELS 110+ 模型一个 key 通吃,注册即送 $1,永久 95 折;批量跑语料清洗脚本时比逐个切账号省事 注册立得优惠 →
含推广链接,通过链接注册/消费我们可能获得返利,价格不变。

信息整理自公开视频与官方文档。工具能力、价格与政策以各平台官方页面为准,本篇的每一处时间点都取自官方页面在核查当日的表述,结算页与最新公告优先级更高。本文不涉及任何投资建议;训练数据的整理与合规由你自己负责。

📚 出处

  • OpenAI API 弃用与弃用时间表页(自助微调三步关闭时间点,2026-05-07 / 2026-07-02 / 2027-01-06):platform.openai.com/docs/deprecations
  • Google Cloud 文档《About supervised fine-tuning for Gemini models》(当前支持型号与限制):docs.cloud.google.com
  • Nebius Token Factory 微调文档(超参字段、取值范围与默认值):docs.tokenfactory.nebius.com/fine-tuning/how-to-fine-tune
  • Nebius 博客《How many epochs are enough to train your model》(训练/验证 loss 背离即过拟合,早停与检查点恢复):nebius.com/blog/posts/factors-influencing-epoch-count
  • Unsloth 文档《LoRA fine-tuning Hyperparameters Guide》(1–3 轮建议、alpha 与 rank 的关系、学习率区间):unsloth.ai
  • Hu 等,LoRA: Low-Rank Adaptation of Large Language Models,arXiv:2106.09685:arxiv.org/abs/2106.09685
  • X 帮助中心《How to download your X archive》(下载流程与身份验证)与《About different types of Posts》(长贴文 2.5 万字符上限)
  • 视频来源:Matt Wolfe 频道《How To Fine-Tune A Large Language Model (Step-By-Step)》,28 分 20 秒,2025 年录制
← 返回博客列表 返回首页