VLA: robots que ven, entienden y actúan|INEMA.CLUB-PRO

Clase 2 · 16 min

Ojo, cerebro y mano: por dentro de un VLA

Todo VLA tiene tres partes: una que ve, una que entiende y una que convierte la decisión en movimiento. La parte del movimiento es donde más se diferencian los modelos, y donde el reloj aprieta: el brazo espera un comando cada pocos milisegundos.

Comenzar la lección
Primer plano de la cámara de muñeca y de la garra de un brazo robótico a punto de tomar un vaso.

En esta lección vas a

  1. 1Las tres partes: encoder visual, backbone y action head
  2. 2Tres formas de generar acción: bins, FAST y flow matching
  3. 3Por qué el modelo devuelve un pedazo de acciones (chunk)
  4. 4La jerarquía lento/rápido: S2, S1 y S0

Objetivo: explicar el camino imagen + frase → acciones y por qué existen action chunking y flow matching.

01El camino de la cámara al motor

Desplázate por la página: cada etapa enciende una parte del diagrama.

Desplázate por la página: cada etapa de abajo enciende su parte del diagrama.

  1. 1/5

    Encoder visual

    Transforma cada imagen en una secuencia de vectores que el resto del modelo entiende. Normalmente viene listo desde un VLM preentrenado.

  2. 2/5

    Backbone

    Un VLM que recibe los tokens de la imagen, la instrucción y el estado del robot. Ejemplos de 2026: GR00T N1.7 usa Cosmos-Reason2-2B; RDT2 usa Qwen2.5-VL-7B. De aquí viene el "entiende" del título del curso.

  3. 3/5

    Action head

    Convierte la decisión del backbone en números de motor. Puedes elegir valores de una lista (bins), escribir la trayectoria comprimida en tokens (FAST) o generar la acción continua con flow matching o difusión.

  4. 4/5

    Chunk de acciones

    En lugar de una acción a la vez, el modelo devuelve un pedazo de N acciones. El control ejecuta ese pedazo mientras el modelo calcula el siguiente.

  5. 5/5

    El camino completo

    La cámara se vuelve tokens, el backbone los junta con la frase y el estado, el action head devuelve un chunk de acciones y el motor ejecuta mientras se calcula el siguiente chunk.

En la mayoría de los VLA de 2026 el backbone es un VLM preentrenado, y lo que cambia de un modelo a otro es el action head.

02Tres formas de generar la acción

Haz clic en cada una. La diferencia es velocidad y precisión.

1. Bins

A cada articulación se le divide el rango de movimiento en cajitas (bins), y el modelo elige una cajita como elegiría una palabra. Modelos como OpenVLA (7B, jun/2024) siguen esta idea.

Es simple, pero una acción a la vez y con precisión limitada por el tamaño de la cajita.

03El presupuesto de tiempo del control

Un script de diez líneas que responde: ¿da tiempo de que el modelo piense antes de que acabe el chunk?

orcamento.py
# orcamento.py: cuánto tiempo cubre cada pedazo (chunk) de acciones
hz = 50            # frecuencia del control (comandos por segundo)
chunk = 25         # acciones que el modelo devuelve de una vez
inferencia_ms = 180  # tiempo para que el modelo genere un chunk

periodo_ms = 1000 / hz
dura_chunk_ms = chunk * periodo_ms
acoes_na_espera = inferencia_ms / periodo_ms

print(f"período do controle: {periodo_ms:.0f} ms")
print(f"um chunk de {chunk} ações cobre: {dura_chunk_ms:.0f} ms")
print(f"ações que passam enquanto o modelo pensa: {acoes_na_espera:.0f}")
print("dá tempo de pensar antes do chunk acabar?", "sim" if inferencia_ms < dura_chunk_ms else "não")
Terminal
python3 orcamento.py
Ejemplo del repositorio
$ python3 orcamento.py
período do controle: 20 ms
um chunk de 25 ações cobre: 500 ms
ações que passam enquanto o modelo pensa: 9
dá tempo de pensar antes do chunk acabar? sim

Los 180 ms son el tiempo de una llamada de acción de MolmoAct 2 informado por Ai2 (may/2026). En tu robot, mide el tuyo.

04Práctica: tu presupuesto de tiempo

Haz la cuenta antes de ejecutar el script y después compruébala.

E1 · Ejecutar el script

5 min

Copia orcamento.py, ejecútalo y comprueba que la salida sea igual a la del cuadro.

Listo cuando: tu terminal muestra 20 ms, 500 ms, 9 y "sí".

E2 · Chunk demasiado corto

10 min

Cambia chunk a 8 y mantén 50 Hz y 180 ms. Antes de ejecutar, escribe en papel: cuánto cubre el chunk, cuántas acciones pasan durante la espera y si alcanza el tiempo.

Listo cuando: tu papel y la terminal dicen lo mismo: 160 ms, 9 acciones y "no" (el chunk se acaba antes de la próxima inferencia).

E3 · El chunk más pequeño que funciona

5 min

Todavía a 50 Hz y 180 ms, descubre el chunk más pequeño que alcanza.

Listo cuando: llegaste a 10 acciones (200 ms, mayor que 180 ms) y sabes explicar por qué 9 no basta.

05Prueba lo que aprendiste

La explicación aparece después de tu respuesta.

Pregunta 1 de 4

Un control a 50 Hz con chunk de 25 acciones. ¿Cuánto tiempo cubre el chunk?competencia

06Resumen

Ojo, cerebro y manoEncoder visual, backbone (un VLM) y action head.
La mano es donde cambiaBins, FAST o flow matching/difusión: lista, tokens comprimidos o continuo.
El reloj mandaUn chunk de N acciones a 50 Hz cubre N × 20 ms, y tiene que durar más que la inferencia.

Fuentes de esta clase

Clase anteriorSiguiente clase