AY-Robots策略对比表,包含GR00T N1.7、GR00T N1.5、Pi0.5、SmolVLA和ACT的参数数量、GPU层级和推理延迟
SmolVLATinyVLA小型VLA消费级GPULeRobot

小型VLA模型:TinyVLA、SmolVLA以及10亿参数以下的情况

AY-Robots ResearchAugust 23, 202619 分钟阅读

TinyVLA和SmolVLA将可用的VLA模型参数量控制在10亿以下。本文提供了来自两篇论文的真实数据、LeRobot的默认设置、测量的延迟,以及在24 GB显卡上运行的成本。

几乎所有视觉-语言-动作模型在文献中提及的都假设使用数据中心显卡。OpenVLA 拥有 70 亿参数。GR00T N1.7Pi0.5大约有 30 亿参数,需要 A100 80 GB 显卡进行微调。如果你的桌面显卡是 4090,那么这类模型就遥不可及了。

有两篇论文指出你可能不需要它。TinyVLA (arXiv 2409.12514,于 2025 年 2 月被 IEEE Robotics and Automation Letters 接受) 通过 4 亿至 13 亿参数的主干网络加上一个扩散动作头构建了一个 VLA。SmolVLA (arXiv 2506.01844,于 2025 年 6 月 2 日提交) 拥有 4.5 亿参数,并提供开放权重、开放数据以及一个可在单张消费级显卡上运行的脚本。以下是两者测量的结果,以及低于 10 亿参数的论点不再成立的地方。

你需要了解什么

  • TinyVLA 提供三种尺寸:总计 4.22 亿参数,其中 1.01 亿可训练;7.4 亿参数,其中 1.38 亿可训练;13 亿参数,其中 1.43 亿可训练。只有前两种低于 10 亿参数。
  • 其表 IV 测量显示,在单张 A6000 显卡上,TinyVLA-1B 的每次动作预测耗时 14 毫秒,而 OpenVLA-7B 为 292 毫秒,缩小版 OpenVLA-1B 为 140 毫秒。
  • 保持这种速度的是头部,而非主干网络:将 TinyVLA-H 的扩散头替换为 ACT 头后,五项真实机器人任务的平均成功率从 94.0 下降到个位数。MLP 头的得分处处为 0。
  • SmolVLA 拥有 4.5 亿参数,其中约 1 亿是动作专家部分,在 481 个社区 LeRobot 数据集和 1060 万帧数据上进行了预训练。它在 LIBERO 上报告的成功率为 87.3,而经过机器人学预训练的 33 亿参数 Pi0 为 86.0;在三项真实 SO-100 任务上为 78.3,而 35 亿参数 Pi0 为 61.7。
  • 如果未经预训练而进行单任务训练,SmolVLA 在这些任务上的成功率降至 40.0,低于 ACT 的 48.3。小模型并非自动简单。
  • TinyVLA 没有集成 LeRobot,并固定使用 CUDA 11.7 wheel 栈。SmolVLA 已集成到 lerobot 中,在此处的 24 GB 层级上每次运行成本约为 1 到 3 美元。

什么才算真正的小型 VLA

模型卡上的参数数量并非单一数字。它可以指总权重、推理时加载的权重,或在期间接收梯度的权重。TinyVLA 同时报告了这两者,并且差距很大:TinyVLA-H 总参数为 1.3 B,但可训练参数为 143 M,因为视觉塔和大部分语言模型保持冻结,而 LoRA 适配器和动作头则会移动。该论文指出可训练部分的占比约为 5%。

模型参数骨干网络动作头来源
TinyVLA-S422 M total, 101 M trainableLlava-Pythia ~400 MDiffusion (droid_diffusion U-Net)arXiv 2409.12514
TinyVLA-B740 M total, 138 M trainableLlava-Pythia ~700 MDiffusionarXiv 2409.12514
TinyVLA-H1.3 B total, 143 M trainableLlava-Pythia ~1.3 BDiffusionarXiv 2409.12514
SmolVLA450 M, ~100 M action expertSmolVLM2-500M-Video-InstructFlow matching expertarXiv 2506.01844
Octo-Small27 MViT-S scale, T5-Base text encoderDiffusionocto-small-1.5 card
ACT~80 MResNet, no language modelDirect chunk regressionAY-Robots catalog
OpenVLA7 BLlama 2 7 B, DINOv2 and SigLIP encodersAutoregressive action tokensarXiv 2406.09246

有两行值得讨论。大约 80 M,比这里的所有其他模型都小,但它没有语言模型,因此它不是 VLA:它学习一个任务,不能被告知执行另一个任务。27 M,通过 T5-Base 文本编码器进行条件化,而不是 LLM 骨干网络。它们都是很好的基线模型,但都无法提供标签所暗示的指令遵循能力。

1 B 阈值是任意的

TinyVLA-H 是带来头条结果的变体,它有 1.3 B 参数,并位于该阈值之上。更好的问题是,模型在训练期间是否能适应 24 GB 内存并在推理时达到您的控制速率。您可以在策略页面上训练这里的五种策略;如果您想将 TinyVLA 的数据与其他模型的数据进行比较,TinyVLA 有一个竞技场条目

TinyVLA:速度源于头部,而非骨干网络

显而易见的解读是,他们将语言模型做得更小,从而使其更快。但论文的消融实验结果却并非如此。将OpenVLA的7B骨干网络替换为大约1B的骨干网络,每次动作预测时间从292毫秒缩短到140毫秒,提升了2倍。TinyVLA-H在参数量相当的情况下,在同一张显卡上运行时间为14毫秒。另外10倍的提升则来自动作头部。

模型每次动作预测时间测量平台
OpenVLA-7B292 mssingle A6000
OpenVLA-1B, backbone swapped for TinyVLA's140 mssingle A6000
TinyVLA-1B (TinyVLA-H)14 mssingle A6000

OpenVLA通过语言模型头部,以自回归方式,为每个动作维度生成离散化的动作token。TinyVLA则附加了一个扩散解码器,可以一次性生成整个动作块。表V展示了TinyVLA-H的架构,并在相同的五个真实机器人任务上仅替换了头部。这是两篇论文中关于流匹配策略所提出的论点最清晰的证据,也是Pi0放弃token解码的原因

TinyVLA-H 上的头部放置网球翻转马克杯堆叠方块关闭抽屉打开盒子
扩散 (droid_diffusion)90.098.398.396.786.7
动作分块Transformer13.38.38.313.323.3
多层感知器00000
TinyVLA 数据涵盖了什么

292 / 140 / 14 毫秒的数据来自表 IV,均在一台 A6000 上测得。这些数据是每次动作预测的,不包括摄像头捕获、预处理以及向伺服系统的串行写入。应将公布的延迟视为下限,绝不能视为控制速率。我们自己的数据也存在同样的限制:请参阅推理延迟

TinyVLA 的得分

基准协议TinyVLA-H基线
MetaWorld,50 项任务,模拟多任务,50 个演示,3 个随机种子按难度分别为 77.6 / 21.5 / 11.4 / 15.8,平均 31.6Diffusion Policy 平均 10.5
真实 Franka Panda,5 项任务每项任务 100 条轨迹,20 次试验平均 94.0OpenVLA 68.3,Diffusion Policy 35.3
双臂 UR5,3 项任务多任务,每项任务 10 次试验76.7 / 36.7 / 30.0OpenVLA 0 / 0 / 0,Diffusion Policy 40.3 / 31.3 / 43.0

双臂行有一个论文本身给出的无聊解释:OpenVLA 在 Open X-Embodiment 上进行了预训练,该数据集完全由单臂数据组成,因此双臂动作空间超出了分布范围,得分也为零。扩散策略基线在三项任务中的两项上击败了 TinyVLA-H。背景信息请参见Open X-Embodiment 综述.

AY-Robots 竞技场排行榜,一个包含 85 个 VLA 模型和 332 个基准测试结果的可排序表格,每个值都链接回其来源论文或模型卡
只有当您能看到每个模型的数据来源时,跨模型基准测试结果才具有可比性。

TinyVLA 仓库,截至 2026 年 8 月

这篇论文写得很好。代码是一个研究成果的发布。该仓库是 github.com/liyaxuanliyaxuan/TinyVLA;其 README 显示代码发布日期为 2025 年 2 月 17 日,最后一次提交是 2025 年 3 月 11 日。对于重现论文来说没问题,但如果您想要一个维护良好的库,那就有问题了。

bash
git clone https://github.com/liyaxuanliyaxuan/TinyVLA
conda create -n tinyvla python=3.10 -y
conda activate tinyvla
pip install --upgrade pip
pip install -r requirements.txt
cd policy_heads && pip install -e .
cd ../llava-pythia && pip install -e .
TinyVLA README 中的安装序列,已于 2026-08-23 对照仓库进行检查。
依赖项固定是耗时陷阱

requirements.txt 将 torch==2.0.1transformers==4.37.1deepspeed==0.9.5peft==0.4.0diffusers==0.11.1numpy==1.24.4 以及 CUDA 堆栈固定到 11.x 轮子:nvidia-cuda-runtime-cu11==11.7.99nvidia-cudnn-cu11==8.5.0.96triton==2.0.0。README 要求 Python 3.10;lerobot 0.6.1 需要 3.12 或更高版本,因此两者不能共享环境。首先确认您的 GPU 代次存在 torch 2.0.1 构建。如果运行因 VRAM 而失败,内存不足检查清单比猜测更快。

TinyVLA 也不读取 LeRobot 数据集。其格式是 ACT 风格的 HDF5:action、language_raw,以及一个包含多视角图像、joint_positions、qpos 和 qvel 的 observations 组。该仓库提供了用于 RLDS 输入的 data_utils/rlds_to_h5py.py,并且每个任务都在 aloha_scripts/constants.py 中手动注册,包含其 dataset_dir、episode_len 和 camera_names。如果您的 剧集 来自 lerobot 或 桌面客户端,则您需要自行完成转换。

bash
# scripts/train.sh, the real flags from the repository
ACTION_HEAD=droid_diffusion

deepspeed --master_port 29600 --num_gpus=8 --num_nodes=1 ./train_tinyvla.py \
  --deepspeed scripts/zero2.json \
  --lora_enable True \
  --lora_module 'vit llm' \
  --lora_r 64 \
  --lora_alpha 256 \
  --non_lora_lr 2e-5 \
  --task_name "example_task_config" \
  --model_name_or_path /path/to/pretrained_vlm \
  --freeze_vision_tower True \
  --freeze_backbone True \
  --bf16 True \
  --max_steps 10000 \
  --per_device_train_batch_size 32 \
  --gradient_accumulation_steps 1 \
  --learning_rate 2e-4 \
  --lr_scheduler_type "cosine" \
  --warmup_ratio 0.005 \
  --save_steps 1000 \
  --action_head_type $ACTION_HEAD \
  --use_state True \
  --window_size 6
摘自 scripts/train.sh。上述每个标志和值都存在于随附文件中。
  • --num_gpus=8 假定一个八卡节点。将其设置为 1 并将批处理大小远低于 32。上游不提供单 GPU 变体,因此该命令无法在 4090 上原样运行。
  • --deepspeed scripts/zero2.json 指向一个不在顶级 scripts 目录中的文件。DeepSpeed 配置位于 llava-pythia/scripts/zero2.json。在首次运行前修正路径。
  • README 要求输出目录名称包含 llava_pythia,如果启用了 LoRA,则还需包含 lora。
  • 骨干网络需要单独下载:lesjie/Llava-Pythia-400M、-700M 或 -1.3B。没有一个单一的基础检查点可以像指向 lerobot/smolvla_base 那样指向 一个策略

SmolVLA:今天下午即可运行的亚十亿参数模型

SmolVLA 在一个维护的库中提出了相同的论点。它基于 SmolVLM2-500M-Video-Instruct 骨干网络,拥有 450 M 参数,其效率来源于可以从 configuration_smolvla.py 中读取的设置,而非其“小巧”的宣称。

configuration_smolvla.py 中的设置默认值作用
num_vlm_layers16仅运行前 16 个语言模型层
expert_width_multiplier0.75动作专家隐藏层大小是 VLM 的 75%
self_attn_every_n_layers2自注意力与交叉注意力交错
chunk_size / n_action_steps50 / 50一次通过发出 50 个动作,所有 50 个动作都被执行
num_steps10流匹配去噪固定为 10 步
tokenizer_max_length48指令被截断为 48 个 token
freeze_vision_encoder / train_expert_onlyTrue / True微调移动的是专家,而非视觉塔
optimizer_lr, warmup, decay1e-4, 1000 steps, to 2.5e-6 over 30000并非论文中的配方:其预训练使用了 200000 步中的 100 步预热

预训练使用了 481 个社区 LeRobot 数据集,22.9 K 幕和 10.6 M 帧,在 4 块 GPU 上运行,200000 步,全局批次大小为 256;论文指出整个项目大约耗费 30 K GPU 小时。一个值得注意的数字是:Hugging Face 的发布博客称有 487 个精选数据集,而论文的表格则显示 481 个。我们采用论文中的数字并指出这一差异。

AY-Robots 上 SmolVLA 模型页面,显示参数数量、24 GB GPU 级别、每动作步的推理延迟以及最少幕数
该平台的 SmolVLA 页面:450 M 参数,每动作步 245 ms,RTX 4090 级别,最少 30 幕。
基准SmolVLA 0.45 BSmolVLA 2.25 BPi0ACT
LIBERO 平均,多任务87.388.7586.0 (3.3 B, robotics-pretrained)-
Meta-World 平均,多任务57.368.2447.9 (3.5 B, robotics-pretrained)-
真实 SO-100,3 个任务,多任务训练78.3-61.7 (3.5 B)-
真实 SO-100,3 个任务,单任务,无机器人预训练40.0--48.3
SO-101 乐高抓取放置,单任务,分布内90--70
SO-101 乐高抓取放置,单任务,分布外50--40
阅读整个表格,而非仅看标题行

LIBERO 是模拟环境,目前所有有竞争力的模型都在八十分左右。真实的 SO-100 行,一个 450 M 的模型以 16.6 分的优势击败了 3.5 B 的模型,这很有趣;它下面的一行是其反证。如果剥离社区预训练和多任务训练,同一个模型会降至 40.0 分,低于 ACT。可以站得住脚的说法是,小模型并非自动更差,而不是说它更好。

一个巧合有所帮助:SmolVLA 论文的 Meta-World 表格将 TinyVLA 自己的发布数据作为基线,因此两个模型首次出现在同一张表格中,SmolVLA-0.45B 为 57.3,而 TinyVLA-H 为 31.6。它还报告 SmolVLA 的训练速度比 Pi0 快约 40%,且内存使用量减少 6 倍。所有这些都来自 SmolVLA 的作者;竞技场条目将每个值链接到其来源。

SmolVLA 的时间开销

AY-Robots 在策略目录中列出 SmolVLA 的每个动作步骤为 245 毫秒,而 ACT 为 20 毫秒。TinyVLA 报告每个动作预测为 14 毫秒。这些数字不可比较,将它们视为可比较是此主题中最常见的错误:有些是单次前向传播的时间,有些则在动作分块摊销后将该传播时间分摊到块中。

  • SmolVLA 每次前向传播发出 50 个动作并执行所有 50 个。在论文中用于真实机器人的 30 fps 下,一次推理大约覆盖 1.7 秒的运动。
  • 异步推理在当前块仍在执行时计算下一个块:平均任务完成时间为 9.7 秒,而同步为 13.75 秒,大约快 30%,并且在固定的 60 秒窗口内完成 19 次抓取放置循环,而同步为 9 次。
  • 成功率是可比的,而不是更好,同步为 78.3%,异步为 73.3%。异步提高了吞吐量,而不是准确性。
  • 分块隐藏了计算延迟,而不是网络延迟,并且它使策略的反应性降低,因为它已提交执行 50 个动作。
远程推理并非免费,且没有任何平台能解决物理限制

AY-Robots可以自动配置一个云端GPU Pod来服务您的策略,同时本地机器人客户端与该端点通信。该Pod带有一个空闲看门狗,因此它会在空闲时自行销毁,而不是默默地产生费用。它无法消除公共互联网的往返延迟。这里五种策略的控制循环在没有任何网络延迟的情况下,每个动作步骤需要20到485毫秒,因此远程推理适用于慢速的抓取放置任务,而不适用于快速的反应式运动。

AY-Robots策略对比表,显示了GR00T N1.7、GR00T N1.5、Pi0.5、SmolVLA和ACT的参数数量、所需GPU层级、每个动作步骤的推理延迟以及每个模型所需的最小训练回合数。
SmolVLA约450 M参数,ACT约80 M参数,是唯二能适应24 GB显卡的模型。其他三个模型需要A100或H100 80 GB显卡。

在单张消费级显卡上微调SmolVLA

手动路径,基于lerobot 0.6.1,截至2026年8月23日的当前PyPI版本。以下所有内容均来自Hugging Face lerobot SmolVLA文档,于同日获取;引导版本更易上手。

  1. 1
    安装带有 SmolVLA 附加项的 lerobot

    SmolVLA 依赖项是可选的附加项,不属于基本安装。不安装它然后疑惑策略类型未知是常见的半小时浪费。

    bash
    git clone https://github.com/huggingface/lerobot.git
    cd lerobot
    pip install -e ".[smolvla]"
  2. 2
    获取足够 episode 的数据集

    文档建议大约 50 个 episode,并指出相同任务的 25 个 episode 不够。AY-Robots 将最低数量设置为 30。记录您自己的,或者从数据集目录开始。

    bash
    # any LeRobotDataset on the Hub works as --dataset.repo_id
    # lerobot/svla_so100_pickplace is the paper's own 50-episode set:
    # 5 cube positions, 10 episodes each
  3. 3
    开始微调

    来自 lerobot 指南的命令,未修改。文档指出在单个 A100 上,20000 步大约需要 4 小时。在 24 GB 显卡上,预计时间会更长,请自行测量。

    bash
    cd lerobot && lerobot-train \
      --policy.path=lerobot/smolvla_base \
      --dataset.repo_id=${HF_USER}/mydataset \
      --batch_size=64 \
      --steps=20000 \
      --output_dir=outputs/train/my_smolvla \
      --job_name=my_smolvla_training \
      --policy.device=cuda \
      --wandb.enable=true
  4. 4
    减小批量大小直到适应

    batch_size=64 是一个文档示例,并非对您的显卡的承诺。文档建议从小批量开始,并在加载时间保持较短的情况下逐渐增加。

    bash
    lerobot-train --help
  5. 5
    在机械臂上部署检查点

    相同的库,一个命令。实时分块标志在文档中被注释掉,它们是低功耗硬件的首选。

    bash
    lerobot-rollout \
      --strategy.type=base \
      --robot.type=so101_follower \
      --robot.port=/dev/ttyACM0 \
      --robot.id=my_blue_follower_arm \
      --robot.cameras="{ front: {type: opencv, index_or_path: 8, width: 640, height: 480, fps: 30}}" \
      --task="Grasp a lego block and put it in the bin." \
      --policy.path=HF_USER/FINETUNE_MODEL_NAME
检查点是交付物

无论您选择哪条路径,最终都会得到一个检查点以及生成它的配置。请同时保留数据集版本、步数和种子。lerobot 默认为种子 1000;GR00T 的微调入口点根本不暴露种子,因此这些运行无法实现位对位复现。训练文档中有详细机制。

将小型 VLA 部署到机械臂上的两种方法

您拥有机器和故障模式。对于 SmolVLA 来说,这很合理:一个 pip 附加项,一个训练命令,一个部署命令。对于 TinyVLA,它是一个研究复现,带有冻结的引脚、损坏的 DeepSpeed 路径以及您自己编写的数据转换。

  1. 获取一张 24 GB 显卡,记录 30 到 50 个 episode,逐帧验证摄像头流。
  2. pip install -e ".[smolvla]”,针对 lerobot/smolvla_base 运行 lerobot-train,然后在连接机械臂的机器上部署检查点。
  3. 对于 TinyVLA:单独的 conda 环境,将数据转换为 HDF5,在 constants.py 中注册任务,修复 zero2.json 路径,将 train.sh 从八个 GPU 削减到一个。
优点
  • 一旦显卡付款,就没有按小时计费。
  • 推理位于伺服电机旁边,这是获得快速控制循环的唯一方法。
  • 您可以修补策略代码,并且 TinyVLA 只能通过这种方式获得。
权衡
  • 4090 显卡排除了所有约 3 B 的策略,因此无法与 GR00T N1.7 或 Pi0.5 进行本地比较。
  • 环境设置才是真正的工作。仅 TinyVLA 的引脚就可能花费一天时间。
  • 没有队列,没有重试,没有检查点存储。在第 14000 步重启意味着重新开始。

小型模型何时是错误的选择

两篇论文在此处都比摘要更为谨慎。TinyVLA 的故障分析很具体:0.4 B 变体因误读指令而失败了三次,作者将其归因于较小 VLM 的语言理解能力有限,并且该模式在 1.3 B 版本中消失了。SmolVLA 从另一方面展示了相同的曲线:相同架构的 2.25 B 版本在 LIBERO 上得分 88.75,在 Meta-World 上得分 68.24,而 0.45 B 模型则分别为 87.3 和 57.3。

选择亚十亿参数 VLA
优势
  • 适用于 24 GB 显卡,可将实验成本从几十美元降至几美元。
  • 速度足够快,可在机械臂旁运行,控制回路中无需网络跳跃。
  • 可在一个人记录的数据上进行微调,几十个片段而非数千个。
  • SmolVLA 的权重、数据列表和代码都是公开的,因此不良结果可调试。
劣势
  • 指令遵循能力较弱:语言参数较少,区分相似指代表达的能力较差。
  • 对未记录的设置,空间和视觉泛化能力较差。
  • 对数据集缺陷更敏感,可依赖的预训练基础较少。
  • 多任务和长周期工作仍然偏爱大型模型,包括 SmolVLA 自身的 2.25 B 变体。

值得进行的比较不是 TinyVLA 与 SmolVLA 之间的比较。而是 SmolVLA 与 ACT 在你自己的任务上进行比较,SmolVLA 论文解释了原因。在没有机器人预训练的情况下进行单任务训练,SmolVLA 在三个 SO-100 任务中平均得分为 40.0,而单任务 ACT 取得了 48.3。将其提升到 78.3 的是社区预训练加上多任务训练,而不仅仅是架构本身。在 SO-101 乐高任务中,两者都是单任务,SmolVLA 确实获胜:分布内得分为 90 对 70。然后是 SmolVLA 与 Pi0.5 如果预算允许。

在此规模下,数据集决定结果

由于预训练较少,无法弥补不良数据,因此,在有缺陷的数据集上获得干净的损失曲线,会使您得到一个自信地重现缺陷的策略。lerobot 文档对结构直言不讳:5 个立方体位置,每个位置 10 个,共 50 个 episode,有效;25 个则无效。如果损失看起来正常但机械臂没有做任何有用的事情,请从损失下降,策略无效策略仅在一种设置下有效收集真正可用的VLA训练数据开始。

五种策略,一张对比表

GR00T N1.7、GR00T N1.5、Pi0.5、SmolVLA 和 ACT,包含实际参数数量、每个动作步骤的推理延迟、所需的 GPU 层级以及在执行任何有用操作之前的最小 episode 数量。

对比策略

一份可供您采取行动的决策表

您的情况从…开始原因
一项任务,良好演示,无语言ACT~80 M,20 毫秒,24 GB 显卡,无需下载基础模型
少量相关任务,每项一个指令SmolVLA450 M,在 lerobot 中,最少 30 个 episode,每次运行 1 到 3 美元
专门复现 TinyVLA 结果TinyVLA-B or TinyVLA-H仓库是唯一途径:隔离环境,转换数据
多任务,多样指令,A100 预算GR00T N1.7 or Pi0.5~3 B,每步 152 毫秒和 485 毫秒,每次运行 4 到 12 美元
尚无机器人操作真实机械臂基于队列的实时机械臂无需注册,也无需硬件

对于最后一行,实时机械臂 流式传输一个物理SO-100,您无需账户即可从浏览器驱动它,并且三种启动方式 涵盖了其余部分。此SO-100 是这里的参考机械臂,零件成本大约在110到150欧元之间,并附有完整的设置指南

10亿参数以下模型之后的发展

缩小参数数量是使VLA变得廉价的一种方式,但这并非是显而易见的制胜法宝。OpenVLA-OFT (arXiv 2502.19645) 保留了70亿参数的主干网络,仅改变了动作的解码方式,报告称动作生成吞吐量增加了26倍,LIBERO从76.5%上升到97.1%。BitVLA (arXiv 2506.07530) 将1比特BitNet b1.58 2B4T主干网络的每个权重都变为三元,报告称内存减少了11.0倍,端到端延迟降低了4.4倍,同时与全精度OpenVLA-OFT性能相当。X-VLA-0.9B (arXiv 2510.10274) 通过流匹配技术,处于10亿参数的水平。

共同点是:延迟存在于动作解码器而非语言模型中。在询问策略有多少参数之前,请先了解它是如何发出动作的。此竞技场 拥有85个模型和332个结果,每个都链接到其来源;在我们的VLA介绍中可以找到更广泛的概述。

我可以在 RTX 4090 上微调 SmolVLA 吗?

可以。SmolVLA 拥有 450 M 参数,AY-Robots 在 RTX 4090 / 24 GB 级别上运行它。lerobot 示例使用 --batch_size=64,这只是一个示例,不能保证适用于您的显卡;文档建议从小批量开始,并在加载时间保持较短的情况下逐渐增加。预计时间会比文档中引用的 A100 上 20000 步大约 4 小时更长。

TinyVLA 在 lerobot 或 AY-Robots 上可用吗?

两者都不可用。TinyVLA 仅存在于其研究存储库中,最后一次提交是 2025 年 3 月 11 日,其格式是 ACT 风格的 HDF5,而不是 LeRobot。AY-Robots 训练 GR00T N1.7、GR00T N1.5、Pi0.5、SmolVLA 和 ACT。如果您想要 TinyVLA,需要自行构建,并且必须首先修复 scripts/train.sh 中的 DeepSpeed 配置路径。

一个 450 M 的模型真的能与 3 B 的模型竞争吗?

根据作者自己的基准测试,是的:在 LIBERO 上,它以 87.3 对 86.0 领先于经过机器人预训练的 3.3 B 的 Pi0;在三个真实的 SO-100 任务上,它以 78.3 对 61.7 领先于同一论文中标记为 3.5 B 的 Pi0。局限性也在这篇论文中指出:在没有机器人预训练的单任务情况下,SmolVLA 降至 40.0,低于 ACT 的 48.3。

在小型 VLA 开始工作之前,我需要多少个 episode?

AY-Robots 将 SmolVLA 的最低要求设置为 30 个 episode,ACT 的最低要求设置为 50 个。lerobot 文档建议大约 50 个,并报告 25 个对于同一任务来说不够。结构与数量同样重要:论文中的数据集使用了 5 个立方体位置,每个位置 10 个 episode。

为什么公布的延迟数字差异如此之大?

它们衡量的是不同的东西。TinyVLA 报告在 A6000 上每次动作预测为 14 ms;AY-Robots 列出 SmolVLA 每次动作步长为 245 ms,ACT 为 20 ms。有些数字涵盖一次前向传播,有些将一次传播分摊到 50 个动作块中,几乎没有一个包含摄像头捕获或写入伺服电机的时间。

云端推理能解决 GPU 问题吗?

部分可以。AY-Robots 自动配置一个 pod 来提供策略服务,同时本地客户端与该端点通信,并带有一个空闲看门狗,使其在空闲时自行销毁,而不是默默地计费。它无法消除公共互联网往返的延迟,而且控制循环本身每次动作步长就已达 20 到 485 ms。这对于慢速的抓取放置任务来说没问题,但对于快速响应的运动则不行。

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started