Skip to content

什么是 Weaver?

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

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

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

核心理念

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

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

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

职责分工

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

当前能力

  • 训练模式:默认 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。
  • 检查点管理:支持 save_state()load_state()load_state_with_optimizer()list_checkpoints() 和 TTL 管理。
  • 实验追踪:支持有名称和 labels 的训练会话、用户指标、训练运行详情,以及 Console 指标对比。
  • 同步与异步 SDK:简单脚本可使用同步 client,需要并行数据准备、训练或采样时可使用原生 async client。
  • 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。

下一步

Weaver 中文文档