7 pontos por GN⁺ 2025-05-10 | 1 comentários | Compartilhar no WhatsApp
  • LegoGPT é um projeto inovador que gera estruturas de LEGO estáveis e realmente montáveis apenas com entrada de texto
  • O dataset StableText2Lego foi construído para oferecer mais de 47.000 estruturas de LEGO fisicamente estáveis e descrições detalhadas
  • O algoritmo aplica validação rápida e rollback baseado em física para remover automaticamente estruturas irreais
  • Os designs de LEGO gerados podem ser montados na prática tanto por humanos quanto por robôs e ainda suportam a expressão de diversas cores e texturas
  • O sistema abre novas possibilidades em várias áreas, como prototipagem criativa de design, educação e aplicações em robótica

Introdução ao projeto

  • LegoGPT é a primeira abordagem que, com base em prompts de texto fornecidos pelo usuário, gera de forma totalmente automatizada estruturas de LEGO realmente montáveis e fisicamente estáveis
  • O projeto foi construído com um grande dataset de estruturas de LEGO e descrições detalhadas, gerando resultados que mantêm estabilidade, diversidade e qualidade estética mesmo no processo de montagem real
  • Foi verificado experimentalmente que os resultados de geração de estruturas de LEGO podem de fato ser montados manualmente por pessoas ou automaticamente por um braço robótico

Dataset StableText2Lego

  • O dataset StableText2Lego voxeliza formas a partir de malhas 3D do ShapeNetCore e aplica diversos métodos de posicionamento de bricks, adotando apenas estruturas que passaram na verificação de estabilidade física
  • Durante o processo de geração dos dados, cada estrutura é renderizada em 24 ângulos, e com base nisso o GPT-4o gera automaticamente descrições detalhadas
  • O dataset assim construído inclui mais de 47.000 estruturas de LEGO com formas, estruturas e texturas variadas, além de mais de 28.000 objetos 3D únicos

Pipeline do LegoGPT

  • As estruturas de LEGO são tokenizadas em sequências de texto de baixo para cima, em modo raster-scan
  • Ao parear cada sequência de bricks com descrições em linguagem natural, é feito o fine-tuning de um modelo baseado em LLaMA-3.2-Instruct-1B para aprender o mapeamento entre descrição e sequência de bricks
  • Na etapa de inferência, o LegoGPT gera a estrutura de LEGO gradualmente, prevendo e adicionando bricks um a um a partir do prompt de texto
  • Sempre que um brick é adicionado, são feitas validações de formato, existência na biblioteca de bricks e colisões e, após a geração da estrutura completa, a estabilidade física é verificada novamente
  • Se a estrutura final estiver instável, o sistema remove o brick instável e todos os bricks adicionados depois dele, fazendo rollback até um estado estável para regenerar

Exemplo de geração de estruturas de LEGO passo a passo

  • "barco esguio com casco longo e estreito"
  • "estante com prateleiras horizontais"
  • "banco com braços e sem encosto"
  • Cada exemplo é gerado passo a passo a partir de um prompt de texto, resultando em uma estrutura de LEGO que reflete claramente as características visuais

Montagem automática com robôs

  • O modelo de LEGO gerado foi aplicado à montagem real com um braço robótico e demonstrado em vídeo acelerado em 8x
  • Exemplos como "barco esguio com casco longo e estreito" e "guitarra assimétrica de 6 cordas" mostram a viabilidade prática da montagem robótica

Modelos de LEGO gerados com textura e cor

  • O sistema oferece designs de LEGO capazes de expressar textura, material e efeitos estéticos específicos em prompts de linguagem natural como "banco coberto de musgo", "material cyberpunk com gradiente neon" e "prateleira de escritório vitoriano"
  • Também é possível gerar projetos de LEGO que refletem apenas pelo texto cores variadas e efeitos metálicos, como em "Sunburst Les Paul with amber finish"

Citação e apoio à pesquisa

  • São informados os dados do artigo, os autores e as instituições que apoiaram a pesquisa, como a Packard Foundation e o Amazon Faculty Award
  • O projeto foi conduzido com diversos apoios acadêmicos e industriais, incluindo a Microsoft Research PhD Fellowship de um dos principais pesquisadores

Referências do projeto e template

  • O template do site foi aproveitado com base no layout dos projetos Custom Diffusion e DreamFusion

1 comentários

 
GN⁺ 2025-05-10
Comentários do Hacker News
  • Usamos validação eficiente e rollback baseado em física para aumentar a estabilidade dos resultados, podando previsões de tokens impossíveis de acordo com as leis da física e as restrições de montagem. Uma das coisas mais interessantes no uso de IA é como ela gera e otimiza possibilidades dentro de restrições específicas de domínio programadas manualmente. Por exemplo, uma IA de semáforos precisa obrigatoriamente de restrições rígidas para evitar colisões. Dentro dessas restrições, a IA pode experimentar livremente ideias de otimização. No fim, o ponto central é como projetar o espaço do problema e as restrições. Neste caso, são os blocos de LEGO, suas combinações e sua estabilidade
    • Isso é um exemplo clássico de metaheurísticas, algo que já existe há décadas. Há vários algoritmos e até uma introdução mais leve que vale consultar https://cs.gmu.edu/~sean/book/metaheuristics/
    • Hoje em dia, versões simples disso já estão brilhando nos LLMs. Se você usar o modo JSON Schema para bloquear estados inválidos na origem e soltar o modelo dentro de um espaço limitado, dá para garantir pelo menos que ele só produza resultados válidos. É uma espécie de conceito de segurança de tipos. A lógica de validação e correção também pode ser aplicada a vários cenários de verificação. Espero ver mais usos assim
    • Para esse tipo de problema, eu esperaria um modelo baseado em MILP ou CLP. As restrições definem o espaço de busca, e o algoritmo do solver explora esse espaço
    • Acho que também poderia haver interesse em aprendizado por reforço. Se o sistema receber recompensa negativa, ele pode começar a seguir regras de segurança. Ainda assim, em produção, as proteções devem continuar existindo https://en.wikipedia.org/wiki/Reinforcement_learning
    • Não li como eles aplicam as restrições. Algo parecido também é usado para forçar saídas estruturadas como JSON em LLMs. O llama.cpp até suporta correspondência com gramáticas personalizadas
    • Concordo totalmente com isso. Quando você restringe a geração com física, legalidade e limitações de ferramentas, o modelo fica menos parecido com um simples preditor de palavras e mais com um motor de busca e verificação. Fica mais próximo de síntese de programas. O valor real está em definir com precisão o espaço do problema para prender o modelo dentro de uma "caixa" onde ele só possa produzir resultados realmente úteis
    • Um experimento divertido seria: pedir a um LLM para "dizer APPLE", mas definir o logit de todos os tokens relacionados a Apple como -infinito, de modo que ele não possa usar essa palavra. A saída acabaria sendo algo como "Banana. Brincadeira. Banana. Ah, errei porque é gostosa. Vou tentar de novo: Orange. Ah, agora foi grape. Não, aquele vegetal crocante carrot"
    • Também acho que é nessa área que a IA realmente brilha. Os humanos definem as regras — leis da física, segurança no trânsito etc. — e a IA encontra a melhor solução em um espaço de busca enorme
    • Acho que feedback de erro é a verdadeira chave para abrir possibilidades reais. Por exemplo, se você der a um bot de texto-para-SQL o feedback de erro do provedor SQL, ele passa a gerar consultas muito melhores
    • Existe uma ideia parecida em química combinatória, então talvez desse para chamar isso de AI Chemistry https://en.wikipedia.org/wiki/Combinatorial_chemistry
  • Esse projeto tem uma boa chance de receber uma notificação jurídica dos advogados da LEGO. Para jogar pelo seguro, seria melhor não usar a palavra LEGO e usar Bricks ou Klemmbausteine (alemão) no lugar. Muita gente já entrou em conflito com o jurídico da LEGO, e é realmente exaustivo
    • Como eles realmente usam blocos LEGO, não há risco de enganar ninguém. O ponto ambíguo é não deixar claro que não têm relação com a LEGO. Por outro lado, como não parecem buscar monetização, também parece fraco o argumento de que estariam prejudicando a LEGO, então o risco me parece baixo
    • Até youtubers e pequenos sites de hobby às vezes recebem notificações de remoção só pelo contexto em que usaram a palavra
    • Enquanto isso, a Amazon vende sem cerimônia o Boy and Tiger Adventure Blocks Set, que copia tanto LEGO quanto Calvin & Hobbes https://amazon.com/Adventure-Rotatable-Compatible-Characters-Stocking/…
    • Como isso é pesquisa acadêmica, eu acharia que entra em uso justo
    • Penso a mesma coisa! Vai dar problema logo
    • Fico me perguntando por que as pessoas agem como a Nintendo em vez de acolher a comunidade como a Sega
  • Esse resultado não me impressiona muito. Usa poucos tipos de blocos e o resultado final ainda parece bem distante do que pretendia representar. Dá a impressão de que um algoritmo manual faria melhor
    • A parte mais legal dessa pesquisa não está no realismo visual da foto, mas na combinação entre entendimento de linguagem e possibilidade física de montagem
    • Só as texturas falsas é que fazem isso parecer plausível. Se tivessem usado apenas blocos coloridos, seria só um amontoado
    • Considerando que é um modelo 1B ajustado finamente, é bem interessante
    • O que eu realmente queria era uma IA para eu mandar uma foto da minha caixa de peças e ela gerar instruções de montagem com base nas peças que eu tenho. Isso já seria tecnicamente possível hoje, mas exigiria treinar um modelo especializado
  • No iPhone, se você rola até a posição do GIF, ele começa a tocar automaticamente, o que torna a navegação no site muito incômoda
    • Fico pensando quando todo mundo vai aprender que autoplay nunca deveria ser usado
    • Em compensação, no Firefox desktop eu nem percebi que havia GIFs sendo exibidos e não consegui entender o que a imagem queria mostrar
    • Dá para corrigir isso colocando o atributo playsinline na tag video https://developer.mozilla.org/en-US/docs/…. É uma pena que o padrão no iOS seja assim
  • Eu não quero automatizar a montagem de LEGO. A graça é justamente montar! O que eu queria automatizar é o depois da montagem: arrumar, separar por cor e formato e guardar tudo de forma organizada. Seria bom se os cientistas começassem resolvendo os problemas de que o mundo realmente precisa. Aí sim existe valor real e dinheiro
    • Há um caso de classificação de 2 toneladas de Lego, além de um artigo e links sobre a primeira máquina de classificação automática de Lego com IA https://jacquesmattheij.com/sorting-two-metric-tons-of-lego/, https://brothers-brick.com/2019/12/…
    • A dificuldade de resolver problemas do mundo real é que, na academia, a cultura gira toda em torno de publicar artigos
    • A verdadeira inovação não é automatizar a parte divertida, e sim fazer desaparecer a parte chata
    • Entrei para dizer exatamente isso. O verdadeiro problema do Lego é limpeza e organização
  • Projeto realmente muito legal! Ver o processo de montagem em GIF é viciante demais. Para quem estava procurando informações sobre o dataset, estou compartilhando aqui https://huggingface.co/datasets/AvaLovelace/StableText2Lego. Ele inclui mais de 47.000 estruturas de LEGO e cobre mais de 28.000 objetos 3D únicos em 21 categorias do ShapeNetCore. Também dá para ver no GitHub como fazer inferência local https://github.com/AvaLovelace1/LegoGPT/?tab=readme-ov-file
  • Em "a basic sofa", se você seguir a animação na ordem mostrada, há peças ficando suspensas no ar. Isso dá uma pista das limitações da forma como o modelo gera os designs. Se a ideia fosse usar robôs para montar automaticamente os projetos gerados, acho que esse design causaria um problemão
    • Vim comentar exatamente isso. O resultado final parece ok, mas a sequência de montagem na animação tem muitos problemas. Primeiro seria preciso fazer o piso de duas camadas para que o andar de cima fixe as peças de baixo. Só depois daria para prender as pernas
  • É engraçado ver um robô de US$ 50.000 montando alguns dólares em Lego. Parece cena de uma casa de repouso para robôs
    • Daqui a 10 anos, talvez existam montadores robóticos muito mais rápidos que humanos
    • É por esse tipo de motivo que, na Ásia, ainda é comum montar coisas à mão
    • Todo mundo diz que Lego é caro, mas é só comprar um robô que monta Lego para descobrir o que realmente é caro
  • Não parece ir muito além de pegar um modelo 3D, voxelizar e converter em tijolos. Para sair algo realmente legal, seria preciso usar criativamente vários tipos de blocos além de 2x2 e 2x4. Fico curioso sobre qual seria o melhor algoritmo para gerar automaticamente MOCs (montagens originais) bonitas. Estou pensando em fazer uma competição no Kaggle de US$ 50 mil; queria opiniões a respeito