LeRobot documentation

ACT (Action Chunking com Transformers)

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

and get access to the augmented documentation experience

to get started

ACT (Action Chunking com Transformers)

ACT é uma política leve e eficiente para aprendizado por imitação, especialmente adequada para tarefas de manipulação de alta precisão. É o primeiro modelo que recomendamos quando você está começando com o LeRobot, devido ao seu tempo de treinamento rápido, aos requisitos computacionais baixos e ao seu forte desempenho.

Assista a este tutorial da equipe LeRobot para aprender como o ACT funciona: Tutorial do ACT do LeRobot

Visão geral do modelo

Action Chunking with Transformers (ACT) foi introduzido no artigo Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware de Zhao et al. A política foi projetada para permitir tarefas de manipulação precisas e ricas em contato usando hardware acessível e dados de demonstração mínimos.

Por que o ACT é ótimo para iniciantes

O ACT se destaca como um excelente ponto de partida por várias razões:

  • Fast Training: Treina em poucas horas em uma única GPU
  • Leve: Apenas ~80M de parâmetros, o que o torna eficiente e fácil de trabalhar
  • Eficiente em dados: Frequentemente atinge altas taxas de sucesso com apenas 50 demonstrações

Arquitetura

O ACT utiliza uma arquitetura baseada em transformers com três componentes principais:

  1. Esqueleto de visão: o ResNet-18 processa imagens de múltiplas perspectivas de câmera
  2. Encoder Transformer: Sintetiza informações de recursos da câmera, posições das articulações e uma variável latente aprendida
  3. Decoder de Transformer: Gera sequências de ações coerentes usando atenção cruzada

A política recebe como entrada:

  • Várias imagens RGB (por exemplo, de câmeras de pulso, câmeras frontais/superiores)
  • Posições atuais das juntas do robô
  • Uma variável de estilo latente z (aprendida durante o treinamento, definida como zero durante a inferência)

E gera um bloco de k sequências de ações futuras.

Requisitos de instalação

  1. Instale o LeRobot seguindo nosso Guia de Instalação.
  2. O ACT está incluído na instalação base do LeRobot, portanto, nenhuma dependência adicional é necessária!

Treinamento de ACT

O ACT funciona perfeitamente com o pipeline de treinamento padrão do LeRobot. Aqui está um exemplo completo para treinar o ACT no seu conjunto de dados:

lerobot-train \
  --dataset.repo_id=${HF_USER}/your_dataset \
  --policy.type=act \
  --output_dir=outputs/train/act_your_dataset \
  --job_name=act_your_dataset \
  --policy.device=cuda \
  --trackio.enable=true \
  --policy.repo_id=${HF_USER}/act_policy

Dicas de Treinamento

  1. Comece com os padrões: os hiperparâmetros padrão do ACT funcionam bem para a maioria das tarefas
  2. Duração do treinamento: Espere algumas horas para 100 mil etapas de treinamento em uma única GPU
  3. Tamanho do lote: Comece com tamanho de lote 8 e ajuste com base na memória da sua GPU

Treinar usando o Google Colab

Se o seu computador local não possui uma GPU potente, você pode utilizar o Google Colab para treinar seu modelo seguindo o notebook de treinamento ACT.

Avaliando o ACT

Quando o treinamento estiver concluído, você pode avaliar sua política ACT no seu robô com lerobot-rollout. O comando abaixo executa a política por 60 segundos sem gravar nada (--task pode ser omitido para ACT). Consulte Implantação da Política para estratégias que gravam episódios de avaliação.

lerobot-rollout \
  --strategy.type=base \
  --policy.path=${HF_USER}/act_policy \
  --robot.type=so101_follower \
  --robot.port=/dev/ttyACM0 \
  --robot.cameras="{ front: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30}}" \
  --display_data=true \
  --task="Your task description" \
  --duration=60
Update on GitHub