Robbyant de Ant Group ha lanzado LingBot-VLA 2.0, un modelo básico de Visión-Languaje-Acción (VLA) para robots. El lanzamiento incluye un informe técnico, un código base Apache-2.0 y un punto de control 6B. El equipo de investigación apunta a una brecha bien conocida: los modelos VLA a menudo funcionan en laboratorios, pero tropiezan en su implementación. LingBot-VLA 2.0 avanza la versión anterior en tres ejes prácticos. Estos son la generalización, un espacio de acción ampliado y el modelado de dinámica predictiva.
¿Qué es LingBot-VLA 2.0?
LingBot-VLA 2.0 es una política de robot generalista construida sobre una columna vertebral de visión y lenguaje. Convierte imágenes de la cámara y una instrucción de lenguaje en acciones de robot. El modelo público es lingbot-vla-v2-6b, un punto de control de “profundidad nativa” 6B. Utiliza Qwen3-VL-4B-Instruct como columna vertebral de VLM. Dos modelos de profesores, LingBot-Depth y DINO-Video, supervisan la formación mediante destilación.
Una llamada de inferencia tarda unos 130 ms en una NVIDIA GeForce RTX 4090D. Esa medición utiliza 10 pasos de eliminación de ruido. El experto en acción utiliza un diseño de combinación de expertos (MoE) para escalar.
Canalización de datos: 60.000 horas en 20 configuraciones
La generalización comienza con los datos. El equipo de investigación selecciona aproximadamente 60.000 horas de datos previos al entrenamiento. Esto cubre 50.000 horas de trayectorias de robots y 10.000 horas de vídeos de humanos egocéntricos. Los datos del robot abarcan 20 configuraciones de robot, desde plataformas de un solo brazo hasta humanoides completos. El conjunto bruto es mayor: unas 90.000 horas de robot y 20.000 horas de egocéntrico. Una tubería rediseñada filtra muestras ruidosas hasta el conjunto de alta calidad.
El filtrado es explícito y mensurable. El equipo de investigación calcula la sacudida de tercer orden junto con las puntuaciones Z de velocidad y aceleración por realización. Se eliminan los episodios con una suavidad anormal o más del 95% de señales estáticas. Los vídeos se comparan con los estados reproducidos utilizando el URDF de cada robot. Los anotadores eliminan el desenfoque, la oclusión, los fotogramas caídos y la desalineación de múltiples vistas. Los clips egocéntricos pasan un filtro VLM, luego la reconstrucción de la postura de la mano egocéntrica SLAM y MANO.
La anotación se automatiza con un modelo de visión y lenguaje. Qwen3.6-27B segmenta cada vídeo en subtareas temporalmente contiguas. Cada subtarea obtiene una acción atómica de un vocabulario cerrado de 18 categorías. Ese vocabulario contiene 15 acciones primitivas más tránsito, inactividad y otras. A lo largo del corpus, el movimiento y el tránsito dominan por frecuencia.
Representación de acción unificada
Diferentes robots exponen diferentes articulaciones, por lo que LingBot-VLA 2.0 las unifica. Utiliza un vector canónico de 55 dimensiones tanto para estados como para acciones. El diseño es fijo en todas las realizaciones del conjunto de datos.
Cada postura del efector final del brazo utiliza coordenadas XYZ más un cuaternión de rotación, lo que da 7 dimensiones por brazo. Los robots que carecen de una parte del cuerpo simplemente rellenan las dimensiones correspondientes. Esto permite que un modelo controle brazos, manos, pinzas, cinturas, cabezas y bases móviles.
Experto en acción del Ministerio de Educación
El experto en acción reemplaza su red de retroalimentación con escasas capas de MoE. Cada capa MoE mantiene un experto compartido junto con varios expertos enrutados. Solo los principales expertos enrutados se activan por token, por lo que el cómputo activo permanece limitado. Cada experto es un SwiGLU MLP con un ancho intermedio más pequeño.
El enrutamiento sigue una estrategia sin pérdidas auxiliares basada en sigmoide inspirada en DeepSeek-V3. Un sesgo por experto corrige el desequilibrio de carga sin agregar una pérdida de equilibrio de carga. La confianza en el enrutamiento aún proviene de las puntuaciones de afinidad imparciales originales del modelo. Bajo parámetros activos coincidentes, el modelo MoE alcanza una pérdida de entrenamiento menor que una línea de base densa. También alcanza un error de acción de validación más bajo en las tareas GM-100.
Destilación de consulta dual para dinámica predictiva
La ejecución real necesita anticipación, no sólo reacción al marco actual. LingBot-VLA 2.0 agrega dos consultas que se pueden aprender a los tokens visuales y de texto. Qt apunta a la observación actual y Qt+T apunta a una observación futura. El horizonte T es igual al tamaño del fragmento de acción.
Dos profesores supervisan estas consultas. LingBot-Depth proporciona señales geométricas explícitas mediante la predicción de profundidad. DINO-Video proporciona antecedentes semánticos fundamentados temporalmente. DINO-Video se basa en la columna vertebral DINOv3 con atención temporal causal por bloques y 3D-RoPE. Está entrenado en 5 millones de videoclips que abarcan datos de Internet, egocéntricos y robóticos. En la evaluación LARYBench, DINO-Video lidera en tres de cuatro métricas.
Resultados de referencia
Robbyant evalúa el modelo en un entorno generalista en el punto de referencia bimanual GM-100 (Great March 100). Una única política se entrena conjuntamente en nueve tareas por realización. Los resultados se informan como puntuación de progreso/tasa de éxito.
En cuanto a la manipulación móvil a largo plazo, el modelo se prueba en dos entornos. En el dominio (ID) utiliza la distribución de entrenamiento, mientras que OOD perturba la pose y los objetos.
Las ganancias son mayores en tareas que necesitan una conexión a tierra precisa del objeto. En el llavero Agilex Retrieve, el éxito pasa de 60.0 a 100.0 en comparación con la versión 1.0. Algunas tareas todavía muestran una brecha entre el progreso y el éxito. Esa brecha apunta a fallas en el paso final preciso de colocación o liberación.
Empezando
El repositorio incluye scripts de instalación, descarga e implementación. El siguiente ejemplo descarga los pesos publicados.
La implementación de robots reales ejecuta el servidor de políticas con inferencia compilada.
La capacitación posterior utiliza conjuntos de datos de LeRobot v2.1 o v3.0. El ejemplo proporcionado ajusta RoboTwin 2.0 en 50 tareas. El enrutamiento puede utilizar pérdida auxiliar secuencial con pérdida z o una configuración sin pérdidas. La configuración también expone el optimizador Muon, con AdamW como predeterminado.
Casos de uso con ejemplos
El espacio de acción ampliado se asigna a escenarios de implementación concretos.
Manipulación móvil en la cocina: Astribot S1 clasifica frutas y bebidas en un frigorífico. Esto necesita el movimiento de la base, la apertura de la puerta y la colocación de objetos juntos. Limpieza de superficies: Cobot Magic-ARX X5 limpia la espuma de una estufa con una esponja. Esto encadena el agarre, la limpieza y el reposicionamiento de la herramienta. Empaque y clasificación bimanual: las tareas del GM-100 incluyen empaque de huevos, empaque de herramientas y clasificación de bloques. Control manual diestro: Unitree G1, Fourier GR-2 y AgiBot A2 usan manos de 12 grados de libertad, no pinzas.
Explicador dinámico interactivo
Explorador interactivo LingBot-VLA 2.0
Tres vistas del modelo: el espacio de acción compartido de 55 dimensiones, los estudios de ablación GM-100 y puntuaciones de referencia. Cada valor se toma palabra por palabra del informe técnico y del repositorio.
01Espacio de acción unificado55-D · 20 realizaciones
02Laboratorio de ablación4 estudios GM-100
03Punto de referencia GM-1004 modelos
Un vector fijo de 55 D codifica estados y acciones para cada robot. Elija una encarnación para ver qué grupos de partes del cuerpo controla; los grupos no utilizados se rellenan.
Encarnación
Controlado por esta encarnación
Acolchado (diseño compartido)
Nota: La Tabla 1 informa únicamente la DoF del brazo y el cuerpo, por lo que aquí la cintura, la cabeza y la movilidad se muestran como un solo grupo corporal. No se reclama ningún relleno por dimensión.
Cada estudio aísla una opción de diseño en cuatro tareas del robot real GM-100. Cambie la configuración para comparar la tasa de éxito; se llama la configuración enviada.
Entorno generalista: una política entrenada conjuntamente en nueve tareas GM-100 por realización. Las puntuaciones se promedian en esas nueve tareas.
LingBot-VLA-2.0 está resaltado. Las cifras coinciden con la Tabla 5 del informe.
‘+v+’
‘;} función renderEmb(){ var e=EMB[+sel.value]ee=e[2]cuerpo=e[4]>0, esEgo=e[1]===’Egocéntrico’; var act={arm:true,eef:!isEgo,grip:(ee.indexOf(‘Gripper’)>-1),hand:(ee.indexOf(‘Hand’)>-1), cintura:cuerpo,cabeza:cuerpo,mob:cuerpo,res:false}; if(isEgo){act.grip=false;act.hand=true;act.waist=false;act.head=false;act.mob=false;} $$(‘#strip .grp’).forEach(function(g){g.classList.toggle(‘act’,!!act[g.dataset.k]);}); var eeTxt=ee===’Pinza/Mano’?’Pinza/Mano’:ee; $(‘#embstats’).innerHTML=st(‘Tipo’,e[1])+st(‘Efector final’,eeTxt)+st(‘Arm DoF’,e[3])+ st(‘Cuerpo DoF’,e[4])+st(‘DoF total’,e[5],1)+st(‘Frecuencia de política’,e[6]+’Hz’); } sel.onchange=renderEmb; sel.valor=11; renderEmb(); /* ===== RENDERIZADORES COMPARTIDOS ===== */ function bars(host,rows,hotIdx){ host.innerHTML=”; filas.forEach(function(r,i){ var div=document.createElement(‘div’);div.className=”row”+(i===hotIdx?’ hola’:”); div.innerHTML=’
‘+r[0]+’
‘+r[1].toFixed(1)+’
‘; host.appendChild(div); var f=div.querySelector(‘.fill’); requestAnimationFrame(función(){f.style.width=Math.max(1.5,r[1])+’%’;}); }); } función segBtns(host,items,active,cb){ host.innerHTML=”; items.forEach(function(it,i){ var b=document.createElement(‘button’);b.className=”chip”+(i===active?’ on’:”);b.textContent=it; b.onclick=function(){cb(i);};host.appendChild(b); }); } /* ===== PANEL 2 : ABLACIÓN ===== */ var TAREAS=[‘Barcode’,’Scoop Rice’,’Ketchup’,’Microwave Bowl’,’Avg’]; var ABL={ ‘Objetivo de acción’:{best:1,nota:’Las acciones conjuntas relativas convierten la regresión global en regresión de movimiento local. Eso reduce la varianza y eleva el éxito promedio de 33,7 a 55,0.’, establece:[[‘Absolute (abs)’,[13.3,22.7,55.0,43.8,33.7]],[‘Relative (rel)’,[58.7,42.7,41.7,76.8,55.0]]]}, ‘Espacio de acción’:{mejor:1,nota:’EEF y las acciones conjuntas obtienen una puntuación promedio similar (56,0 frente a 55,0). El mejor espacio depende de la física de la tarea, no sólo de las estadísticas de distribución.’, establece:[[‘EEF’,[24.0,60.0,81.7,58.3,56.0]],[‘Joint’,[58.7,42.7,41.7,76.8,55.0]]]}, ‘Normalización’:{best:2,nota:’MeanStd mantiene el mayor rango dinámico efectivo y preserva mejor los movimientos correctivos de cola larga, alcanzando un éxito promedio de 55,0.’, establece:[[‘MinMax’,[48.0,26.7,61.7,53.6,47.5]],[‘Q01-Q99’,[42.7,44.7,63.3,39.1,47.4]],[‘MeanStd’,[58.7,42.7,41.7,76.8,55.0]]]}, ‘Loss’:{best:1,note:’L2 se ajusta a la región de alta densidad de objetivos correctivos pequeños. Mejora el éxito medio sobre L1 de 46,4 a 55,0.’, establece:[[‘L1’,[45.0,28.7,61.7,50.0,46.4]],[‘L2’,[58.7,42.7,41.7,76.8,55.0]]]} }; var ablKeys=Object.keys(ABL),curStudy=ablKeys[0],curSet=1; función renderAbl(){ var s=ABL[curStudy]; segBtns($(‘#ablStudy’),ablKeys,ablKeys.indexOf(curStudy),function(i){curStudy=ablKeys[i];curSet=ABL[curStudy].mejor;renderAbl();}); $(‘#ablSetLab’).textContent=”Configuración · “+curStudy; segBtns($(‘#ablSet’),s.sets.map(función(x){return x[0];}),curSet,function(i){curSet=i;renderAbl();}); var vals=s.conjuntos[curSet][1]; barras ($(‘#ablBars’),TASKS.map(función(t,i){retorno [t,vals[i]];}),4); var elegido=(curSet===s.best)?’ Esta es la configuración con la que se envía LingBot-VLA 2.0.’:”; $(‘#ablNote’).innerHTML=s.note+elegido; cambiar el tamaño(); } renderAbl(); /* ===== PANEL 3 : BENCHMARK ===== */ var MODELOS=[‘GR00T N1.7′,’π0.5′,’LingBot-VLA-1.0′,’LingBot-VLA-2.0’]; var BM={ ‘AgileX Cobot Mágico’:{prog:[36.3,59.1,58.2,66.2],éxito:[17.8,32.2,30.0,34.4]}, ‘Galaxea R1Pro’:{prog:[16.4,27.4,32.7,34.6],éxito:[5.6,8.9,15.6,15.6]} }; var bmKeys=Object.keys(BM),curPlat=bmKeys[0],curMet=”prog”; función renderBm(){ segBtns($(‘#bmPlat’),bmKeys,bmKeys.indexOf(curPlat),función(i){curPlat=bmKeys[i];renderBm();}); segBtns($(‘#bmMet’),[‘Progress score’,’Success rate’],curMet===’prog’?0:1,function(i){curMet=i?’succ’:’prog’;renderBm();}); $(‘#bmCap’).textContent=(curMet===’prog’?’Puntuación de progreso’:’Tasa de éxito’)+’ (%)’; var valores=BM[curPlat][curMet]; barras ($(‘#bmBars’),MODELS.map(función(m,i){retorno [m,vals[i]];}),3); cambiar el tamaño(); } renderBm(); /* ===== REDIMENSIONAMIENTO AUTOMÁTICO ===== */ function resize(){ var h=R.offsetHeight+40; try{parent.postMessage({type:’lbv2-resize’,height:h},’*’);}catch(e){} } window.addEventListener(‘load’,resize); if(window.ResizeObserver){new ResizeObserver(resize).observe(R);} setTimeout(resize,300); })();