训练机先撑不住了
实验还没问完,承载它的机器先在满载下反复失稳。我退役了整机,但没有把嫌疑写成诊断。
实验还没做完,我先把训练机退役了。
能确认的事实并不戏剧化:机器在显卡持续满载时反复失稳、崩机,已经不适合再承载长时间训练。供电是当时的首要嫌疑,但我没有做完足以锁定元件的替换测试,也没有维修结论。显卡本体是否损坏,电源是否确实故障,我都不能下定论。
我不知道究竟坏的是哪一个元件。
这不妨碍我退役整机。恰恰相反,承认不知道,才让我能把「故障诊断」和「是否继续使用」分开:前者没有完成,后者已经有答案。
机器不再值得托付下一轮实验。
一张消费级显卡,两个没问完的问题
这是一套已经退役的训练实验,不属于现在的生产设施。机器里是一张 RTX 3090,我用它给 Qwen3-8B 做 QLoRA 4bit 微调,让模型学习旅行产品里一个边界很窄的对话任务。
第一版停在 checkpoint-891,档案记录的 eval_loss 是 0.12487。另有 13 道只判对错的题,它答对 12 道,显示为 0.923。
第二版把训练样本加到 28,810 条,大约是第一版的六倍,最后停在 checkpoint-3400。它的 eval_loss 记录为 0.2133;同样那 13 道题,还是答对 12 道,还是 0.923。
这组数字后来成了《三个模型,一个分数》的主线:13 道二元题里,每道题占约 7.7 个百分点。六倍数据没有让显示分数变化,只能说明这把尺子没量出净变化,不能说明模型的所有能力原地不动。
但那是另一篇文章的问题。这里更麻烦的是,评测留下的问题还在,跑评测的机器先退出了。
我自己训练的权重通过了发布前的验收,但从未服务用户;产品后来使用托管模型。这让退役不至于变成线上事故,却没有替我回答那些没做完的实验。机器没用了,不等于机器里的工作也没用了。
350W 说明负载,不说明死因
RTX 3090 满载时处在约 350W 的显卡功耗级别。这个数字说的是显卡负载,不是整机功耗实测,更不是「到了 350W 就会出故障」的阈值。
训练机的问题出现在持续满载期间:不是某次程序报错后退出,而是整机反复失去稳定性。供电因此最可疑。可疑不是确诊。我没有完成换电源、跨机器验证或元件维修,无法证明是电源撑不住,也无法证明显卡已经损坏。
如果我继续跑,可能还能碰巧完成一轮。也可能几个小时之后再次崩掉。更糟的是,即使训练跑完,我也要多问一句:这个结果是不是来自一台已经开始随机失稳的机器?
「再试一次」听起来像坚持,实际可能只是在把下一次结果的可信度拿来下注。
我不再下注了。
不完整的结论,也可以有完整的退役
7 月 5 日,我退役了训练机。项目档案记载,训练产物、数据、配置、工具和恢复材料在退役前已经备份。到 7 月 16 日,设备已不再由我持有。
这里必须保留一句限定:据项目档案已备份。我在撰写这篇候选稿时没有独立执行恢复,也没有重新验证离线清单,因此不能写成「已经完整恢复验证」。有备份记录,与真的从备份恢复成功,是两件事。
档案记录保留了 checkpoints、适配器、合并权重、转换产物、项目所需的基座材料、数据集、配置和恢复说明。并不是每个派生文件都必须留下;能从上游产物和配置重建的东西,可以不把每一份副本都当成不可替代资产。
机器和当时的本地运行环境结束了。能把工作接起来的材料,应该留下。
退役真正难的地方,不是决定哪台设备还能卖、哪根线要拔掉,而是在证据越来越难复查之前,把几种不同状态写清楚:什么已经确认,什么只是嫌疑,什么按档案备份了,什么仍未恢复验证,什么即使丢失也能重建。
尤其要留下「不知道」。硬件一旦离开,缺失的交叉测试就很难补做。如果文档把「供电最可疑」写成「电源坏了」,下一位读者看到的就不再是判断,而是一段伪造得很自然的项目历史。
我删掉了一笔算不出来的账
这篇文章原本很容易滑向另一条线:自己养一张卡,和改用托管模型,到底哪一个更便宜。
我把那段删了。
手里的材料没有一套可以对齐的成本口径:购置和残值、电费、训练时长、失败重跑、维修时间、托管模型用量,以及两边输出质量是否真的等价。缺了这些,任何「API 更划算」或「自有硬件更省钱」的结论,都只是偏好穿了一件算术外套。
退役后,我没有再维护一套专用训练硬件,产品继续使用托管模型。这是我做出的选择,不是我证明出的普遍经济规律。
我也不需要用一笔虚构的经济账给退役找理由。机器在满载下反复失稳,已经足够说明它不该再接新实验。
先退出的是机器
以前我以为,系统退役应该发生在一切都弄明白以后:先找到坏件,验证修复,再备份所有东西,最后关机。
这台训练机没有给我这个顺序。稳定性问题是真实的,元件级死因没有钉死,等待完美答案又意味着继续把实验交给一套不可靠的环境。
于是我先退役整机,把证据和猜测拆开记录;按项目档案保住训练产物与恢复材料,同时明确它们没有经过这次独立恢复验证;至于没有证据回答的问题,就让它保持没有答案。
训练机先撑不住了。
问题还在继续。