[控场AI]
· 4 分钟阅读· 2,422 字

仅推理NPU上从零预训练:VKORE-46M-NPU实现真实反向传播

仅推理NPU上从零预训练:VKORE-46M-NPU实现真实反向传播

VIDRAFT在仅推理NPU上从零完成语言模型预训练,证明NPU也能做训练。

VIDRAFT团队在一块仅推理的32芯片NPU集群上,从零完成了语言模型预训练,全程未使用GPU,打破了“NPU只能推理”的行业共识。实验将同一模型、相同初始化和数据分别在NPU与GPU上训练,结果NPU损失轨迹与GPU相关性达0.99,吞吐量也收敛到可比水平,证明反向传播和优化器更新在数值上等价。该能力被封装进VKORE软件层,覆盖从零预训练、LoRA微调、推理加速(单用户3.8倍、服务器4.1倍)和量化运行全流程。公开模型VKORE-46M-NPU仅46M参数,用于验证训练路径而非声称模型质量,扩展至大模型是下一步。

在AI硬件领域,有一个长期被默认的技术边界:NPU(神经网络处理单元)专为推理设计,无法承担训练任务。VIDRAFT团队的最新实验直接挑战了这一假设——他们在一块仅推理的NPU上,从零完成了语言模型的完整预训练,没有使用任何GPU。

rss source: Preentrenamiento desde cero en una NPU solo-inferencia: VKORE-46M-NPU

为什么在仅推理NPU上训练如此困难

推理NPU的设计逻辑与训练需求几乎完全相反。它的前向图被静态编译,权重被当作常量处理,计算精度也压得很低——所有优化都指向同一个目标:让一次前向传播尽可能快、尽可能省。

训练需要的是另一套东西:保存激活值的反向图、优化器状态(如动量缓冲区)、对小梯度数值稳定性的保障、以及在多芯片间的梯度同步。这些需求在推理NPU的架构中都没有原生支持。正因如此,“NPU不能做反向传播”一度成为行业共识。

VIDRAFT的工作证明,这个共识并非不可打破。他们直接在NPU上执行了反向传播,从随机初始化的权重开始训练,而非基于任何预训练权重做微调。

静态编译指在模型部署前,编译器将整个前向计算图固化为一份不可更改的执行计划。它把每一层的算子实现、内存地址、并行调度策略全部确定下来,并针对目标芯片做深度优化,从而消除运行时调度开销。代价是图结构无法在运行中动态调整——这对只跑前向的推理是优点,但训练中反向传播需要根据前向图重新生成梯度计算图,静态编译的图无法支撑这一动态重构。VIDRAFT的做法是在软件层为NPU额外定义了一套反向图的编译路径,使梯度计算也能被编译成NPU可执行的静态程序。

优化器状态指训练中除模型权重外必须额外保存和更新的张量,最典型的是Adam中的一阶动量(梯度指数滑动平均)和二阶动量(梯度平方的指数滑动平均)。它们与权重一一对应,因此显存占用通常是模型参数量的2到3倍。推理NPU的片上内存和外部内存布局原本只为加载一份权重而设计,没有为这些额外状态预留空间和带宽。要在一块仅推理NPU上训练,必须在软件层重新规划内存,让优化器状态在训练循环中被持久保存并逐轮读写。

证据:相同模型,两种硬件

实验设计本身是干净的。同一个模型、相同的初始化、相同的数据和训练计划,分别在一块32芯片的NPU集群和一块参考GPU上运行。

rss source: Preentrenamiento desde cero en una NPU solo-inferencia: VKORE-46M-NPU

结果有两个关键数字:

  • 损失轨迹相关性达到0.99——NPU上的训练损失曲线与GPU参考几乎逐点吻合
  • 吞吐量收敛到可比水平——tokens/秒的差距随训练推进逐步缩小

单独看一条下降的损失曲线,并不能说明训练是有效的。但0.99的相关性意味着:NPU上的反向传播和优化器更新在数值本质上做了和GPU相同的工作。这不是近似模拟,而是等价计算。

单一NPU覆盖全流程

VIDRAFT将整套能力封装在一个名为VKORE的软件层中,定位为“NPU界的CUDA”——一个硬件无关的加速层,目标是降低对特定GPU及其生态系统的依赖。

VKORE覆盖的环节包括:

  • 从零预训练
  • LoRA微调
  • 推理加速(单用户3.8倍,服务器吞吐4.1倍)
  • 量化模型运行

这种全流程覆盖的意义在于,企业不需要为训练和推理分别购置不同硬件。一块NPU同时承担两个角色,硬件采购逻辑随之改变。

LoRA微调全称Low-Rank Adaptation,是一种参数高效微调方法。它冻结预训练模型原有的全部权重,只在Transformer的注意力层中注入两个小矩阵(A和B),用它们的乘积近似权重更新量。可训练参数量通常只有原模型的0.1%到1%,因此显存和计算开销都极低。LoRA适合在资源受限的硬件上做领域适配,但它并不解决从零预训练的问题——而VIDRAFT所验证的恰恰是更困难的那一步:不依赖任何预训练权重,直接在NPU上完成反向传播与优化器更新。

量化指把模型权重和激活值从高精度浮点(如FP32或BF16)转换为低比特整数(如INT8、INT4)的过程,目的是减少内存占用、提升吞吐并降低功耗。推理NPU天生按低精度设计,因此量化运行对它们几乎是默认能力。但训练对数值精度极为敏感,梯度本身幅度很小,低精度容易造成下溢或舍入误差累积。VIDRAFT能让NPU上的损失轨迹与GPU相关性达到0.99,说明其在训练路径上对数值稳定性做了额外处理,而非简单地沿用推理时的低精度格式。

这件事为什么值得关注

高端GPU服务器的问题已经不算新闻:价格高昂、交付周期漫长、功耗惊人。对于需要自研模型的企业来说,这些成本最终都转化为竞争劣势。

一块便宜、低功耗、还能训练的NPU提供了另一种路径——企业在自己的机房内完成模型开发,不必等GPU到货,也不必把敏感数据送到外部集群。这在数据合规要求严格的行业(医疗、金融、政府)中尤其有价值。

需要明确的是,本次发布的内容边界很清楚。公开的VKORE-46M-NPU是一个46M参数、字符级、在TinyStories数据集上训练的模型。它的作用是验证训练路径的可行性,而非声称模型质量本身。扩展到更大模型和真实数据是下一步的事。核心技术正在专利申请中,训练代码暂未开源。

模型权重和模型卡已发布在Hugging Face:https://huggingface.co/FINAL-Bench/VKORE-46M-NPU

#NPU训练#VKORE#反向传播#从零预训练#NPU推理芯片#VIDRAFT#AI硬件
分享:

相关推荐