Skip to content

什么是 Weaver?

Weaver 是面向大语言模型训练的 API 和托管训练服务。你在本地编写 Python 训练循环,定义数据、loss、采样与评估逻辑;Weaver 负责在远端 GPU 集群上执行前向、反向、优化、权重导出和采样服务。

它适合希望快速迭代 SFT、RLHF、agentic training 或自定义训练算法的研究者和工程团队。你保留训练循环的控制权,同时不用自己搭建分布式训练、推理权重同步、checkpoint 管理和任务调度基础设施。

Weaver 的设计受 Thinking Machines Lab 的 Tinker 启发,并围绕 Nex-AGI 的 Agent 生态做了深度集成,例如 NexRLNexAU

核心理念

传统的大模型训练需要同时处理数据管道、分布式并行、显存规划、故障恢复、权重导出和推理服务。Weaver 把这些复杂度封装成一组稳定 API:

  • 你提交 tokenized training data 和 loss 输入。
  • Weaver 在托管训练后端执行 forward()forward_backward()
  • 你按自己的算法节奏调用 optim_step()
  • 需要评估或 rollout 时,导出权重并创建 SamplingClient
  • 需要恢复实验时,用 checkpoint API 保存和加载训练状态。

换模型时通常只需要修改 base_model 字符串;长上下文变体可使用形如 Qwen/Qwen3-8B:262144 的后缀。

职责分工

你负责你编写Weaver 负责
训练数据、环境和评估逻辑本地 Python 训练脚本远端 GPU 训练与调度
loss、采样策略、训练循环Datum、loss 输入、优化器参数模型加载、并行训练、权重同步
SFT/RL/Agent 算法细节forward_backward()optim_step()sample() 调用任务排队、故障恢复、checkpoint 存储

当前能力

  • 训练模式:默认 LoRA 微调,支持通过 training_mode="full_ft" 发起全参数微调。
  • 可配置 LoRA:支持 rank、seed、attention、MLP、unembedding 等 LoRA 开关。
  • 核心训练 API:支持 forward()forward_backward()optim_step() 和自定义 loss 的 forward_backward_custom()
  • 采样与评估:支持从训练模型导出 sampler 权重,创建采样会话,计算 prompt logprobs。
  • checkpoint 管理:支持 save_state()load_state()load_state_with_optimizer()list_checkpoints() 和 TTL 管理。
  • RL/Agent 集成:可配合 NexRL 编排 rollout、轨迹池和策略更新,也可接入 NexAU 构建工具调用 Agent。

什么时候使用 Weaver?

SFT 快速实验:用少量代码跑通数据处理、交叉熵训练、采样验证和权重保存。

强化学习训练:在本地控制 rollout、reward、advantage 和优化节奏,让 Weaver 处理训练后端。

Agentic 模型训练:把 NexAU Agent 的轨迹交给 NexRL/Weaver,训练更擅长工具使用和多步推理的模型。

自定义算法研究:使用 forward() 获取 logprobs,或通过 forward_backward_custom() 把自定义 PyTorch loss 的梯度传播回 Weaver。

下一步

  • 安装与配置:安装 SDK,并运行第一个训练脚本。
  • 训练与采样:了解核心 client、数据格式、训练循环和 sampling API。
  • 损失函数:查看内置 loss、RL loss 和自定义 loss 的接口。
  • 保存与加载:管理 sampler 权重和可恢复 checkpoint。
  • 模型列表:选择适合 SFT、RL 或 Agent 训练的模型。

Weaver API 中文文档