Contents — find the section you need
Muitos modelos de Visão-Linguagem-Ação (VLA) representam imagens, linguagem e ações como uma única sequência de tokens e predizem o próximo token um de cada vez. Anunciado pela Physical Intelligence em 2024, o π0 (pi-zero) altera o próprio mecanismo de geração de ações: em vez de tokenizar ações de forma autorregressiva, ele gera um bloco contínuo de ações com correspondência de fluxo condicional. Este artigo examina o projeto descrito no artigo “π0: A Vision-Language-Action Flow Model for General Robot Control” (Black, Brown, Driess et al., Physical Intelligence, arXiv:2410.24164) passo a passo.
Este artigo é baseado nas descrições do artigo original (arXiv:2410.24164) e do artigo do PaliGemma (arXiv:2407.07726).
0. O que você aprenderá
- O que π0 muda em comparação com modelos VLA autorregressivos como RT-2 e OpenVLA
- Como a estrutura VLM do PaliGemma e o "Especialista em Ações" dedicado funcionam em conjunto
- Como a correspondência de fluxo condicional gera ações, incluindo a integração de Euler no momento da inferência
- Como o treinamento heterogêneo entre diferentes corpos em sete tipos de robôs é tratado
- Por que o pré-treinamento e o pós-treinamento são separados em um processo de duas etapas
1. Conclusão primeiro: o que é π0?
π0 é um modelo de controle de robôs de propósito geral que combina um Modelo de Visão-Linguagem pré-treinado (PaliGemma) com um Especialista em Ações dedicado, que gera sequências contínuas de ações por meio de correspondência de fluxo condicional. Um único modelo recebe imagens da câmera, uma instrução em linguagem natural e o estado das juntas do robô, e então gera uma sequência de ações que abrange até 50 passos futuros de uma só vez. Ele foi pré-treinado com dados de sete plataformas robóticas diferentes, pode executar algumas tarefas sem nenhum exemplo prévio e foi projetado para se adaptar a novas tarefas por meio de ajustes finos com relativamente poucos dados.
2. Por que gerar ações com correspondência de fluxo?
Os primeiros VLAs, como RT-2 e OpenVLA, discretizam valores de ações contínuas (ângulos das juntas, velocidades etc.) em intervalos predefinidos e os atribuem a tokens de vocabulário do modelo de linguagem que, de outra forma, não seriam usados. Isso permite que imagens, linguagem e ações sejam tratadas como uma única sequência de tokens. A abordagem é simples de implementar, mas tem duas limitações. Primeiro, como as ações são geradas um token por vez, sequências de ações de alta frequência e alta dimensionalidade podem ser lentas de produzir. Segundo, a discretização é uma aproximação grosseira do espaço de ações, dificultando a representação de movimentos suaves e precisos, como dobrar um tecido ou despejar um líquido, onde a deformação e o contato são importantes.
O π0 resolve ambos os problemas evitando a tokenização de ações e usando correspondência de fluxo, uma família de modelos de difusão, para gerar um bloco de ação contínuo de 50 passos em uma única passagem pela representação da ação. O artigo apresenta explicitamente esse design como uma forma de lidar com tarefas altamente complexas e blocos de ação em frequências de até 50 Hz.
3. O que entra?
π0 recebe três tipos de entrada:
- Imagens o_t: imagens RGB de múltiplas câmeras (até três câmeras, dependendo da configuração)
- Instruções de linguagem: uma descrição da tarefa em linguagem natural, como "dobre a camisa"
- Propriocepção q_t: um vetor de estado, como os ângulos das juntas do robô
Esses dados são tratados em conjunto como uma observação o_t = [I_t^1, \dots, I_t^n, \ell_t, q_t]. O número de câmeras e os graus de liberdade das juntas variam entre as configurações do robô, portanto, é necessário preenchimento e mascaramento para alinhar as dimensões, conforme descrito abaixo.
4. O que é previsto?
A saída é um bloco de ações A_t = [a_t, a_{t+1}, \dots, a_{t+H-1}] contendo H=50 ações a partir do momento atual. Diferentemente de um modelo autorregressivo que produz um token de ação por vez, π0 gera o bloco inteiro de uma só vez. A geração desse bloco por meio de correspondência de fluxo é a ideia central do π0.
5. Arquitetura básica
O π0 executa um VLM pré-treinado (PaliGemma) juntamente com um pequeno "Especialista em Ações" especializado na geração de ações. Os dois Transformers operam em paralelo nas mesmas camadas.
Figura 1 — PaliGemma (imagem e linguagem) e o Action Expert (estado e ação ruidosa) usam conjuntos de parâmetros separados, embora compartilhem as mesmas camadas do Transformer por meio de atenção causal em blocos. O campo vetorial do Action Expert é acumulado com 10 etapas de integração de Euler para gerar um bloco de ação de 50 etapas.
6. Detalhes técnicos dos componentes
Backbone PaliGemma e Action Expert
O backbone VLM é inicializado a partir do PaliGemma, anunciado pelo Google em 2024. O PaliGemma combina um codificador de visão SigLIP-So400m com um modelo de linguagem Gemma-2B em um VLM de 3 bilhões de parâmetros. A intenção é transferir o conhecimento visual e linguístico aprendido por meio de pré-treinamento em escala de internet para a geração de ações do robô.
Além do PaliGemma (com cerca de 3 bilhões de parâmetros), o π0 adiciona um Especialista em Ações com aproximadamente 300 milhões de parâmetros: um Transformer menor com largura de 1024 e dimensão MLP de 4096. No lado do PaliGemma, os valores correspondentes são largura de 2048, profundidade de 18 camadas e dimensão MLP de 16384. O modelo π0 completo, portanto, possui cerca de 3,3 bilhões de parâmetros.
O ponto importante é que não se tratam de duas redes completamente independentes operando em paralelo. Elas utilizam conjuntos de parâmetros diferentes para diferentes tipos de tokens, embora compartilhem as mesmas camadas do Transformer. O PaliGemma lida com tokens de imagem e linguagem, enquanto o Especialista em Ações lida com tokens de estado e ações ruidosas; a informação é transmitida entre elas por meio de atenção causal em blocos nas camadas compartilhadas. Os tokens de ação podem interagir bidirecionalmente dentro de seu bloco, mas a restrição de treinamento os impede de antecipar informações futuras. Isso se assemelha a uma ideia de mistura de especialistas e permite que um modelo combine a saída de linguagem discreta (treinada com entropia cruzada) e a saída de ação contínua (treinada com uma perda de correspondência de fluxo).
Geração de ações com correspondência de fluxo condicional
π0 gera ações com correspondência de fluxo condicional, que pertence à família de métodos generativos baseados em difusão. Durante o treinamento, o bloco de ação real A_t e o ruído gaussiano \epsilon \sim \mathcal{N}(0, I) são misturados linearmente ao longo de um parâmetro de tempo \tau \in [0,1] para criar a ação ruidosa A_t^\tau.
A direção alvo a seguir para se mover A_t^\tau em direção à ação real A_t é definida da seguinte forma.
O Especialista em Ações é treinado como uma rede v_\theta(A_t^\tau, o_t) que prevê este campo vetorial alvo a partir da observação o_t e da ação ruidosa A_t^\tau. A perda é o erro quadrático entre os campos vetoriais previsto e alvo.
No momento da inferência, a amostragem começa a partir de ruído puro A_t^{\tau=0} = \epsilon. Um método de Euler progressivo integra o campo vetorial previsto de \tau=0 a \tau=1, montando o bloco de ação final.
O artigo utiliza \delta = 0.1, ou 10 etapas de integração, para ir de \tau=0 para \tau=1. Enquanto a geração de tokens autorregressivos em RT-2/OpenVLA repete a decodificação sequencial para o comprimento do bloco de ação, o π0 refina todo o bloco ao longo de 10 etapas de atualização. O número de atualizações, portanto, não cresce com o comprimento do bloco, o que é a fonte prática de sua vantagem de velocidade.
Aprendizado entre diferentes plataformas — treinando um modelo em diferentes robôs
Os dados de treinamento do π0 abrangem sete plataformas de robôs diferentes: UR5e, UR5e bimanual, Franka, Trossen bimanual, ARX e AgileX bimanual, Trossen móvel e ARX móvel, e Fibocom móvel. O número de câmeras é de 2 a 3, enquanto o número de graus de liberdade varia de 7 a 17, dependendo do robô.
Para representar esses dados heterogêneos em um único modelo, π0 aplica a seguinte normalização:
-
O vetor de estado q_t e o vetor de ação a_t são preenchidos até o grau de liberdade máximo nos dados de treinamento (18 dimensões). Robôs com menos graus de liberdade usam preenchimento com zeros para as entradas não utilizadas.
-
Para robôs com menos de três câmeras, os slots de imagem ausentes são mascarados para que o mecanismo de atenção ignore essas posições.
-
Como a contagem de amostras varia substancialmente de acordo com a combinação de tarefa e robô, a amostragem é ponderada por n^{0.43} para uma combinação com n amostras. Isso reduz a dominância de tarefas com grande volume de dados.
-
O conjunto de treinamento completo contém cerca de 900 milhões de passos de tempo, ou aproximadamente 10.000 horas: dados próprios da Physical Intelligence de 68 tarefas e sete robôs, combinados com conjuntos de dados públicos, incluindo Open X-Embodiment (OXE), Bridge v2 e DROID.
Receita de treinamento em duas etapas — pré-treinamento e pós-treinamento
O treinamento do π0 é dividido em duas etapas principais. O pré-treinamento utiliza o conjunto de dados completo, amplo e diversificado. Ele usa nomes de tarefas e anotações de segmentos que dividem as execuções em unidades de vários segundos para construir um conhecimento fundamental abrangente. O pós-treinamento utiliza dados selecionados e de alta qualidade, focados em uma tarefa específica subsequente, para transformar esse conhecimento fundamental no comportamento desejado.
O artigo apresenta uma razão específica para essa divisão: “Se treinássemos apenas com dados de alta qualidade, o modelo não aprenderia a se recuperar de falhas”. Os dados de execução variados no pré-treinamento, que nem sempre são perfeitos, proporcionam ao modelo experiência em recuperação quando as coisas dão errado. Os dados de alta qualidade no pós-treinamento refinam a capacidade de executar a tarefa alvo com a precisão desejada.
Por que usar correspondência de fluxo em vez de um modelo de difusão convencional?
Modelos de difusão padrão, como o DDPM (Modelos Probabilísticos de Difusão com Remoção de Ruído), assumem um caminho não linear que adiciona e remove ruído gradualmente e, frequentemente, exigem dezenas ou centenas de etapas iterativas. A correspondência de fluxo condicional em π0, por sua vez, usa um caminho de probabilidade linear-gaussiano que conecta o ruído \epsilon e a ação real A_t com uma linha reta ( A_t^\tau = \tau A_t + (1-\tau)\epsilon ). Como o caminho é reto, o campo vetorial a ser aprendido é mais simples e um pequeno número de etapas de integração (10 em π0) pode alcançar a ação alvo com precisão útil. O artigo apresenta isso como uma escolha prática para gerar blocos de ação de alta frequência e alta dimensionalidade em velocidade próxima ao tempo real.
7. Como o π0 difere de outros métodos de geração de ações VLA
A geração de ações VLA pode ser agrupada em três grandes famílias.
| Aspecto | Tokenização autorregressiva (RT-2, OpenVLA) | Cabeçalho de difusão (como o Octo) | Correspondência de fluxo (π0) |
|---|---|---|---|
| Representação da ação | Valores de ação discretizados previstos como tokens um de cada vez | Valores contínuos gerados por meio de um processo de difusão, condicionados à saída do Transformer | Valores contínuos gerados por meio de correspondência de fluxo |
| Número de iterações de geração | Escala com o comprimento do bloco; blocos mais longos são mais lentos | Depende do número de etapas de difusão | Um pequeno número de etapas de integração; o π0 usa 10 |
| Adequação para movimentos de alta frequência e precisão | A discretização pode se tornar um gargalo | Saída suave é possível, mas vários estágios adicionam latência | Gera blocos de alta frequência (até 50 Hz) relativamente rápido |
| Simplicidade de implementação | Simples: basta estender o vocabulário do modelo de linguagem | Requer um cabeçalho de difusão dedicado | Requer um Especialista em Ações dedicado e um projeto de campo vetorial |
| Custo computacional | Grande sobrecarga de decodificação sequencial | Moderado a alto, dependendo das etapas de difusão | Relativamente leve, pois usa poucas etapas |
| Dificuldade de implementação | Relativamente baixa; a infraestrutura LLM existente é reutilizável | Moderada | Alta; o compartilhamento de parâmetros e o projeto de perda abrangem dois tipos de saída |
A tokenização autorregressiva é simples de implementar, mas a decodificação sequencial aumenta a latência à medida que o bloco de ação cresce. Um cabeçalho de difusão produz valores contínuos suaves, mas requer um processo de geração em vários estágios. O π0 se situa entre essas abordagens: ele lida com valores contínuos enquanto gera todo o bloco de ação em um número fixo e pequeno de etapas de integração. Na perspectiva da aprendizagem por imitação, BC (Behavior Cloning) e DAgger descrevem como aprender um mapeamento da observação para a ação, enquanto π0 é uma implementação desse mapeamento usando um VLM grande e uma cabeça generativa dedicada. Veja “Imitation Learning and Inverse Reinforcement Learning” para os fundamentos.
8. Dificuldades / ambientes desafiadores
As avaliações relatadas no artigo mostram tendências gerais, em vez de uma garantia universal. Em diversas tarefas reais (dobrar camisas, limpar uma mesa, ensacar compras e tirar pão da torradeira), o modelo base pré-treinado, sem ajuste fino, apresenta taxas de sucesso substancialmente maiores do que modelos de referência existentes, como OpenVLA e Octo. π0 se aproxima especialmente da confiabilidade em tarefas como dobrar camisas, onde OpenVLA e Octo ficam muito atrás. No entanto, a diferença também reflete a escala e a diversidade dos dados de pré-treinamento, sendo difícil isolar uma vantagem que pertença exclusivamente à correspondência de fluxo.
O artigo também identifica uma limitação direta: quanto mais próxima uma tarefa estiver daquelas representadas no pré-treinamento, maior será o benefício; tarefas muito distantes dessa distribuição dependem mais da qualidade e quantidade dos dados de pós-treinamento. Para tarefas longas e com múltiplas etapas, como montar uma caixa ou embalar ovos, o sucesso relatado pode ser relativamente alto, mas algumas áreas ainda ficam aquém das taxas quase perfeitas observadas em tarefas mais simples de ação única.
De maneira mais geral, o preenchimento com zeros para aprendizado entre diferentes ambientes não se estende automaticamente a um robô com uma configuração de graus de liberdade completamente nova que estava ausente no treinamento. Além disso, o número de etapas de integração da correspondência de fluxo (10) é fixo, limitando a precisão com que os usuários em tempo de inferência podem ajustar a relação entre velocidade e precisão.
9. Como escolher na prática
Para um robô de manipulação de propósito geral que precisa lidar com muitas tarefas com um único modelo, o π0 é um ótimo ponto de partida: seu design suporta alguns comportamentos de simulação sem simulação (zero-shot) e ajustes finos com uma quantidade relativamente pequena de dados. A Physical Intelligence disponibilizou os pesos e o código em código aberto através do repositório openpi, reduzindo a barreira para experimentação com um robô personalizado.
Para tarefas como dobrar tecido ou despejar líquido, onde o contato e trajetórias suaves são importantes, um modelo de correspondência de fluxo (ou um modelo de cabeça de difusão como o Octo) pode ser mais adequado do que uma VLA autorregressiva que depende de tokens de ação discretos.
Se o objetivo for apenas executar tarefas simples de pegar e colocar com baixa latência, os 3,3 bilhões de parâmetros do π0 podem ser excessivos. Um modelo de imitação leve e específico para a tarefa, como uma pequena rede baseada em BC, pode oferecer um melhor equilíbrio entre custo de implementação e custo operacional.
Se um robô específico executar um conjunto fixo de tarefas, treinar um modelo mais restrito com dados específicos da tarefa pode ser mais eficiente do que usar um modelo pré-treinado amplo como o π0. A escolha entre um modelo geral e um modelo especializado depende da diversidade das tarefas-alvo e da quantidade de dados que podem ser coletados.
Para versões mais recentes, como π0.5, π0.6 e π0.7, o panorama mais amplo do VLA e a competição no benchmark LIBERO, consulte “Tendências Tecnológicas do VLA”. Para os fundamentos da aprendizagem por imitação, aprendizagem por reforço inversa e o problema de deslocamento de covariáveis no BC/DAgger, consulte “Aprendizagem por Imitação e Aprendizagem por Reforço Inversa”.
10. Resumo em três linhas
-
π0 executa um PaliGemma VLM (3B) e um Action Expert dedicado (300M) nas mesmas camadas do Transformer, gerando blocos de ação contínuos com correspondência de fluxo condicional.
-
Ele prevê o campo vetorial alvo u = \epsilon - A_t a partir de A_t^\tau = \tau A_t + (1-\tau)\epsilon, e então usa 10 passos de integração de Euler para gerar um bloco de ação de 50 passos no momento da inferência. Essa é a principal diferença em relação à tokenização autorregressiva, cuja decodificação se torna mais lenta à medida que o bloco cresce.
-
Ele treina em sete tipos de robôs com preenchimento com zeros e amostragem ponderada, e então separa dados de pré-treinamento diversos de dados de pós-treinamento de alta qualidade para equilibrar generalidade e desempenho específico da tarefa.
Referências
- π0: Um Modelo de Fluxo Visão-Linguagem-Ação para Controle Geral de Robôs (arXiv:2410.24164)
- Artigo π0, texto completo no arXiv
- PDF oficial do π0 (Physical Intelligence)
- Blog oficial do π0: Physical Intelligence
- PaliGemma: Um VLM 3B versátil para transferência (arXiv:2407.07726)
- Repositório GitHub do Physical Intelligence no OpenPI
Um modelo que gera ações pode operar um robô desconhecido sem adaptação?
A configuração das juntas, a representação da ação, as observações e a interface de dados de treinamento devem ser compatíveis. Ser um modelo base não implica compatibilidade sem ajustes.
Comentários
Entre na sua conta para continuar.
Ainda não há dados.