策略训练

AY-Robots 在托管 GPU 上训练操作类策略,因此您无需自备训练硬件,就能从录制的回合走到一个可以在机械臂上运行的策略。本页介绍所支持的策略类型、训练运行页面、检查点,以及根据您的回合数量,可以现实地期望什么样的结果。

最后更新 2026-08-09

无需自备 GPU 的训练

训练一个操作类策略是一项 GPU 工作负载,现代视觉语言动作模型所需的显存,往往超过一台典型工作站所拥有的。在 AY-Robots 上,训练运行在平台托管的云端 GPU 上:您选择一个数据集和一种策略类型,启动运行,然后在浏览器中查看进度。无需配置 CUDA,无需匹配驱动,也无需维护任何环境。

输入始终是来自仪表盘 > 数据集的云端数据集。任何通过遥操作会话录制、或以 LeRobot 格式上传的内容都符合条件,包括合并后的数据集。请在训练前先整理数据:标注为 Failure 的回合通常应排除在训练集之外,在回合浏览器中花十分钟检查一遍,可以节省数小时原本会被用来从糟糕演示中学习的 GPU 时间。

支持的策略

平台支持四个策略家族。它们在体量、训练成本,以及能从数据中吸收多少信息上各不相同,因此正确的选择更多取决于您的任务和数据集,而不是任何一种通用的排名。

策略类型特点
ACTTransformer,动作分块预测未来动作的短序列分块,而不是单步预测。体量紧凑,训练相对较快,是单一明确任务的稳妥首选。
Diffusion Policy基于扩散的动作序列建模对演示动作的完整分布进行建模,这在您的演示以不止一种有效方式完成任务时会有帮助。训练更重,推理速度也比 ACT 慢。
SmolVLA小型视觉语言动作模型语言条件化:您回合中的任务文本会成为输入的一部分。如果您想要语言条件化,又不想用上大型基础模型,这是一个不错的折中方案。
GR00T 微调基础模型微调在您的回合上对一个大型预训练机器人基础模型进行微调。四者中能力上限最高,训练成本也最高,并且对数据集格式有严格要求。
GR00T 需要 LeRobot v2.1 数据集

GR00T 微调只接受 LeRobot 格式 2.1 版本的数据集。v3.0 版本的数据集会在数据加载阶段失败,而不是在提交阶段,因此请在启动运行之前先检查格式版本。平台上录制的数据集可以直接使用;对于外部上传的数据集,请先在 meta/info.json 中确认版本号。

启动一次运行

  1. 1
    选择数据集

    打开仪表盘 > 训练,选择要训练的数据集。回合数量和机器人型号会一并显示,方便您确认选对了数据集。

  2. 2
    选择策略

    在支持的策略类型中选择一种。如果不确定,可以从 ACT 开始:这是判断您的数据集是否足以训练出任何东西的最便宜的方式。

  3. 3
    启动

    启动运行。它会获得一个作业 ID 和专属的运行页面,您可以关闭浏览器:训练会在服务端继续进行,等您再次打开页面时,会看到实时状态。

训练运行页面

每次运行都有一个专属页面,回答训练过程中您真正关心的两个问题:它是否在学习,以及机器是否健康。学习进度以损失、学习率调度和梯度范数的图表形式展示。一条立即趋于平稳的损失曲线,或一条爆炸式增长的梯度范数,会及早告诉您这次运行不值得再等下去。

机器健康状况会一并显示:GPU 利用率和显存占用,以及训练机器的主机指标。一条阶段时间线会显示运行当前所处的位置,从环境准备、数据加载、训练循环本身,到检查点上传。当情况看起来不对劲时,内置的日志查看器可以让您在无需任何 SSH 访问的情况下查看原始训练日志,这通常足以判断问题出在数据集还是运行本身。

检查点与恢复训练

检查点是按每次运行单独存储的,而不是放在一个共享池中,因此某个运行页面上列出的检查点,始终只属于那一次运行及其配置。这一点比听起来更重要:把不同设置的运行之间的检查点混用,是策略悄无声息损坏的一个常见原因。

如果一次运行被中断,您可以从其最新的检查点恢复,而不必从头开始。中间检查点本身也很有用:当一次长时间的运行在末期开始过拟合时,较早的检查点在真实机械臂上往往比最终的检查点表现更好。

在您的机械臂上运行训练好的策略

训练完成的策略可以直接部署回您的机器人。在操控台中,为您已连接的机械臂选择训练好的策略并启动推理:此时策略会产生此前由您通过遥操作产生的关节指令。机械臂必须与数据集录制时使用的是同一机器人型号,场景也应与训练时的场景相似,包括摄像头的摆放位置。

请把最初几次推理运行当作实验,而不是演示。让紧急停止保持在触手可及的位置,从接近您所演示过的起始状态开始,并预期策略会对一些您不会注意到的因素敏感,例如移动过的摄像头、不同的光照,或是数据集中从未出现过的物体。

需要多少回合

平台上最常见的训练失误,不是超参数选错了,而是用过少的数据进行训练,然后得出这种策略类型不管用的结论。作为单一桌面任务的经验法则:大约 50 个回合,能得到一个从接近您演示过的起始状态出发时表现稳定、但泛化范围较窄的策略。大约 100 到 200 个回合,只要您在各回合之间变化了物体摆放位置,就能在整个工作空间内针对该单一任务获得可用的鲁棒性。

能力更强的策略类型并不能弥补数据不足。在 20 个回合上对 GR00T 进行微调,泛化能力依然会很差,更大模型带来的是数据充足之后更高的能力上限。如果预算有限,请优先把它花在更多样化的回合上,而不是更大的模型上。

常见问题

一次训练运行需要多长时间?

这取决于策略类型和数据集大小,因此没有一个诚实的固定数字。ACT 通常是四者中最快的,GR00T 微调最慢。运行页面上的阶段时间线和损失图表,会及早显示一次运行是否在正常推进。

可以在合并后的数据集上训练吗?

可以。合并后的数据集就是普通的数据集,合并校验已经保证了一致的 fps、特征和机器人型号。合并同一任务的多次录制,是达到 100 到 200 个回合区间最有效的方式之一。

我的 GR00T 运行在数据加载阶段失败,应该先检查什么?

数据集的格式版本。GR00T 微调需要 LeRobot v2.1,v3.0 数据集恰好会在这一步失败。请检查数据集 meta/info.json 中的版本号。

训练前应该移除失败的回合吗?

通常应该。标注为 Failure 的回合会把失败的行为教给策略。Recovery 回合则不同:它们展示了如何纠正一个错误,往往值得保留。

训练期间需要一直开着浏览器吗?

不需要。运行是在服务端执行的。等您返回时,运行页面会显示当前状态、图表和日志,检查点也会照常保存,无论是否有人在看着它。