Volver a LeRobot Path

Mejorar y compartir

Unidad 6 de la ruta de aprendizaje de LeRobot. ejecuta el volante de datos, mezcla conjuntos de datos, comparte tu modelo y conjunto de datos en HuggingFace Hub, y planifica los próximos pasos con Pi0Fast y SmolVLA. ~ 1,5 horas.

Unidad 6 de 6 · Mejorar y compartir · ~ 1,5 horas

Transforma tu diagnóstico de fallas de la Unidad 5 en una recopilación de datos dirigida. Mezcla conjuntos de datos, comparte tu trabajo con la comunidad y trace tu camino hacia políticas más capaces.

El volante de datos

La forma más confiable de mejorar una política de aprendizaje de robots es no cambiar el modelo es mejorar los datos. La rueda de vuelo de datos es el bucle de iteración principal para cualquier proyecto serio de aprendizaje de robots:

1 de la Comisión

Evaluar

Hacer 20 ensayos, medir la tasa de éxito, clasificar los fallos por tipo.

2 de la Comisión

Identificar el modo de falla primaria

¿Es la calidad de los datos (demos inconsistentes), el cambio de distribución (posiciones no vistas) o la capacidad del modelo (trayectoria lo suficientemente precisa pero incorrecta)?

3 El

Recopilar datos específicos

Registrar 20 30 demostraciones que cubran específicamente el régimen de fallas. Si la política falla en los objetos en el lado izquierdo del espacio de trabajo, grabar 20 demostraciones de esa posición específica. No grabar más de lo que ya está funcionando.

4 de la Comisión

Reentrenamiento y reevaluación

Combine los nuevos datos con el conjunto de datos existente, retrénalo y vuelva a ejecutar la evaluación de 20 ensayos.

Mezcla de conjuntos de datos

LeRobot puede entrenar en múltiples conjuntos de datos simultáneamente, lo que es útil para combinar los datos de recogida dirigidos con su conjunto de datos original o incluso con conjuntos de datos de la comunidad pública para la misma tarea y tipo de robot.

# Fusión de dos conjuntos de datos en un nuevo conjunto de datos combinado python -m lerobot.scripts.push_dataset_to_hub \ --dataset-dir ~/lerobot-datasets/pick-place-v1 \ --repo-id $HF_USER/pick-place-v2-merged # O entrenar directamente en múltiples IDs de repos python -m lerobot.scripts.train \ --policy-type act \ --dataset-repo-id "$HF_USER/pick-place-v1,$HF_USER/pick-place-targeted" \ --examples-repo-id "1.0,2.0" -- \put-set-direct /robot-pick-v2 # los datos de los parámetros de los datos originales se apuntan a los parámetros #x

Mixing with public datasets: Antes de mezclar en un conjunto de datos de la comunidad, verifique si el tipo de robot y las dimensiones del espacio de acción coinciden con las suyas.

Compartir su modelo en HuggingFace Hub

Compartir el modelo entrenado lo pone a disposición de la comunidad y permite a otros usar su política como punto de partida.

# Empuje su mejor punto de control a HuggingFace Hub python -m lerobot.scripts.push_policy_to_hub \ --checkpoint-path \ ~/lerobot-policy/pick-place-v1/checkpoints/step_050000 \ --repo-id $HF_USER/act-pick-place-so100 # Agregue una tarjeta de modelo (recomendada) # El comando push crea una plantilla README.md rellene con: # - Robot y descripción de tareas # - ID de entrenamiento de repos # - tasa de éxito de evaluación # - Video del tipo de política que se ejecuta en su robot

Compartir su conjunto de datos con la comunidad

Su conjunto de datos (que usted empujó en la Unidad 3) ya está en HuggingFace Hub. Para hacerlo más descubrible y útil para otros:

  • Añadir una tarjeta de conjunto de datos en HuggingFace describir la tarea, el robot, la configuración de grabación y el número de episodios. Esta es la cosa más impactante que puede hacer para la detección de los conjuntos de datos.
  • Etiquete con T2, su tipo de robot (por ejemplo, T3), y su categoría de tareas (por ejemplo, T4).
  • Envíe a la biblioteca de los conjuntos de datos de [RCSV]T7) para su curado e inclusión en el índice comunitario.

Contribuir con las configuraciones de hardware de nuevo a LeRobot

Si agregó una configuración de hardware personalizada para un robot no soportado en la Unidad 1, considere contribuir de nuevo al repositorio de LeRobot. Abra una solicitud de puesta a T5 con su archivo de configuración en T6. Los mantenedores revisan las contribuciones de hardware rápidamente y esto beneficia directamente a todos los futuros usuarios de ese hardware.

Lo que sigue: políticas más eficaces

Ahora tienes el flujo de trabajo completo de LeRobot.

El lenguaje

SmolVLA políticas condicionadas por el idioma

Cambiar de ACT a SmolVLA cuando desea que la política responda a las instrucciones de lenguaje natural ("pick up the blue block") o generalice entre las tareas. Requiere ~ 200+ demostraciones y un formato de respuesta más estructurado. Ver el documento SmolVLA y ejemplos de LeRobot.

Escala

Pi0Fast inferencia de VLA de alta velocidad

Pi0Fast se ejecuta a 100Hz de inferencia (versus 30Hz de ACT), lo que permite tareas de manipulación más rápidas y bucles de control más estrechos. Requiere una GPU en el momento de inferencia, pero produce un comportamiento significativamente más hábil a escala.

Generalización

Políticas de tareas múltiples

Entrenar una política única en múltiples tareas utilizando un conjunto de datos mixtos con diferentes valores de tarea_index por episodio. SmolVLA y Pi0Fast admiten el entrenamiento de tareas múltiples de forma nativa. Ver la receta de tareas múltiples de LeRobot en los ejemplos de GitHub.

Usted completó el camino de LeRobot.

Usted instaló LeRobot, entendió el formato del conjunto de datos, grabó sus propias demostraciones, entrenó una política ACT, la evaluó sistemáticamente y ejecutó el volante de datos. Ese es el flujo de trabajo completo de aprendizaje de robots de código abierto el mismo utilizado por laboratorios de investigación y startups de robótica en todo el mundo.

Pregúntale preguntas en el foro Compartir tu resultado en Showcase

¿Cuáles son las preguntas? Únete a la #HuggingFace Discord #lerobot** los mantenedores y la comunidad son activos y acogedores.