LeRobot documentation

LaWAM

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.7.0).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

LaWAM

lawam es el adaptador de LeRobot para LaWAM, un modelo de acciones latentes para políticas de robots conscientes de la dinámica. Combina un backbone Qwen3-VL, un modelo de acciones/mundo latente y una cabeza de acciones de flow-matching, mientras expone las interfaces estándar de LeRobot para políticas, entrenamiento y evaluación.

Recursos:

RecursoEnlaceUsado para
Página del proyectorlinf.github.io/LaWAMResumen del método
ArtículoarXiv:2606.15768Detalles de la cita y del método
CódigoRLinf/LaWAMCódigo original de entrenamiento y evaluación
Preentrenamiento nativolawam-pretrain-lerobotInicialización del ajuste fino de LeRobot
SFT nativo de LIBEROlawam-libero-sft-lerobotEvaluación de LIBERO
Puntos de control de origenlawam-checkpointsArtefactos de la versión original de LaWAM
Conjunto de datos LIBEROjialei02/libero_merged_no_noops_20hzLIBERO SFT

Instalación

Instale LeRobot con el extra LaWAM:

pip install -e ".[lawam]"

Instale las dependencias del benchmark LIBERO y fije MuJoCo en 3.3.2 al reproducir la evaluación LIBERO de LaWAM publicada:

pip install -e ".[lawam,libero]" "mujoco==3.3.2"

Las tasas de éxito del benchmark LIBERO son sensibles a la versión del simulador MuJoCo. Las versiones más recientes de MuJoCo pueden reducir de manera significativa las tasas de éxito medidas en LIBERO, incluso para políticas distintas a LaWAM. Se trata de un problema de compatibilidad del entorno de evaluación y no de un problema del adaptador de LaWAM. Utilice mujoco==3.3.2 para reproducir exactamente los resultados publicados de LaWAM en LIBERO y en el paper.

Los checkpoints de LaWAM utilizan el formato nativo model.safetensors de LeRobot. El estado completo del LAM, el adaptador VLM y la cabecera de flujo se restaura a través de policy.path; los archivos .pt originales de LaWAM no se cargan mediante el adaptador. Las arquitecturas LAM y DINOv3 se representan directamente mediante LaWAMConfig y no requieren descargas de checkpoints separadas.

Mantenga policy.base_vlm configurado con el ID de modelo portable del Hub. La configuración de caché estándar de Hugging Face, como HF_HOME, controla dónde se almacenan localmente los archivos de Qwen sin añadir rutas específicas de la máquina a la configuración de la política o del procesador.

Ajuste fino

Ajuste fino a partir de la política LaWAM preentrenada nativa:

lerobot-train \
  --policy.path=jialei02/lawam-pretrain-lerobot \
  --dataset.repo_id=jialei02/libero_merged_no_noops_20hz \
  --dataset.image_transforms.enable=false \
  --rename_map='{"observation.images.wrist_image":"observation.images.image2"}' \
  --policy.action_horizon=8 \
  --policy.n_action_steps=8 \
  --policy.clip_normalized_actions=true \
  --policy.pre_snap_gripper_action=true \
  --policy.binarize_gripper_action=true \
  --policy.repo_id=your_org/lawam_sft

El adaptador utiliza las estadísticas del conjunto de datos de LeRobot para la normalización de acciones y estados antes de construir los lotes de entrenamiento de LaWAM. Las acciones de pose utilizan una normalización min-max, mientras que la receta de LIBERO fija explícitamente el canal de la pinza a valores binarios 0/1 para cumplir con el contrato de entrenamiento nativo de LaWAM. Esto mapea tanto las convenciones de conjuntos de datos -1/+1 como 0/1 a los mismos objetivos del modelo. El punto de control preentrenado conserva sus valores de preentrenamiento de action_horizon=24 y n_action_steps=24; la receta de SFT de LIBERO sobrescribe ambos a 8 mientras preserva chunk_size=50 como la longitud de secuencia de Flow rellena. El entrenamiento utiliza el FPS actual del conjunto de datos para la codificación de tiempo natural de LaWAM, y el procesador persiste esa frecuencia como alternativa para la evaluación. policy.num_video_frames controla la ventana de fotogramas de observación.

Las recetas de preentrenamiento de LaWAM y SFT de LIBERO publicadas no utilizan aumentación aleatoria de imágenes. El procesador de políticas aplica únicamente el redimensionamiento determinista y la normalización de ImageNet requeridos por los backbones de Qwen y LAM. Las transformaciones de imagen a nivel de conjunto de datos de LeRobot siguen disponibles para recetas de entrenamiento diseñadas por separado.

Los puntos de control de LaWAM publicados utilizan internamente un espacio de acción/estado relleno de 32 dimensiones. Mantenga policy.flow_action_dim=32 y policy.flow_state_dim=32 a menos que haya entrenado un punto de control con dimensiones de flujo diferentes.

Evaluación

Evalúe el punto de control SFT nativo de LIBERO a través del evaluador estándar:

lerobot-eval \
  --policy.path=jialei02/lawam-libero-sft-lerobot \
  --env.type=libero \
  --env.task=libero_object \
  --eval.n_episodes=10

El repositorio de Hub incluye la configuración de la política y las tuberías completas de preprocesamiento y posprocesamiento, incluidas las tensores de normalización y el procesamiento del agarre de LIBERO.

Para una ejecución reproducible del benchmark LIBERO con el checkpoint SFT de LIBERO publicado, evalúe todos los conjuntos y los IDs de tareas en una sola invocación:

lerobot-eval \
  --policy.path=jialei02/lawam-libero-sft-lerobot \
  --policy.device=cuda \
  --env.type=libero \
  --env.task=libero_spatial,libero_object,libero_goal,libero_10 \
  --env.task_ids='[0,1,2,3,4,5,6,7,8,9]' \
  --eval.n_episodes=50 \
  --output_dir=outputs/lawam_libero

Informe las tasas de éxito en las 10 tareas de cada suite. Utilice al menos 50 episodios por tarea al informar las cifras de la prueba de referencia.

Resultados de referencia para el punto de control SFT de LIBERO publicado, con 50 episodios por tarea. Estos números se generaron con MuJoCo 3.3.2. Como verificación del entorno, la tarea 5 de libero_spatial mejoró de 18/50 éxitos con MuJoCo 3.8.1 a 47/50 éxitos con MuJoCo 3.3.2.

SuiteÉxitosEpisodiosTasa de éxito
libero_spatial49250098.4%
libero_object49850099.6%
libero_goal49050098.0%
libero_1049050098.0%
overall1970200098.5%

Selección de cámara

Los checkpoints de LaWAM almacenan de forma explícita los roles de las cámaras principales y de muñeca, en lugar de inferir la semántica a partir de nombres como image2. Al construir una nueva política multi-cámara de LaWAM, configure ambos roles:

--policy.primary_image_features='["observation.images.front"]' \
--policy.wrist_image_features='["observation.images.wrist"]'

policy.lam_image_feature selecciona la cámara principal cuyos fotogramas temporales son consumidos por el modelo de acción latente. Por defecto, es la primera cámara principal configurada y se escribe explícitamente cuando se guarda la configuración de la política.

Campos de tiempo de ejecución

Campos de política específicos de LaWAM más comunes:

CampoDescripción
base_vlmID del modelo portable Qwen/Qwen3-VL Hub almacenado en la configuración de la política publicada.
action_horizonNúmero de acciones predichas por bloque, hasta chunk_size.
flow_action_dimDimensión de acción rellena internamente utilizada por la cabeza de flujo de LaWAM.
flow_state_dimDimensión de estado relleno interna utilizada por la cabeza de flujo de LaWAM.
embodiment_idID de encarnación de LaWAM utilizado cuando el conjunto de datos de LeRobot no proporciona uno.

Cita

@misc{chen2026lawam,
  title = {LaWAM: Latent World Action Models for Efficient Dynamics-Aware Robot Policies},
  author = {Chen, Jialei and Wang, Kai and Chen, Kang and Chen, Shuaihang and Gao, Feng and Tang, Wenhao and Li, Zhiyuan and Liu, Weilin and Yao, Zhuyu and Li, Boxun and Xu, Yuanbo and Yu, Chao},
  journal = {arXiv preprint arXiv:2606.15768},
  year = {2026},
  archiveprefix = {arXiv},
  primaryclass = {cs.RO},
}
Update on GitHub