O experimento viral de Surya Narreddi — um modelo de linguagem pintando aquarelas via código JavaScript — acaba de ganhar uma versão aberta, documentada passo a passo por Sergio Paniego na Hugging Face. O pipeline, datasets, scripts de RL e modelos treinados estão publicados, permitindo a reprodução do processo completo de geração de arte via RLHF, agora com transparência e acesso à comunidade.

Da viralização ao reprodutível aberto

Em 23 de agosto, Surya Narreddi publicou um vídeo em que uma LLM pintava aquarelas usando a biblioteca p5.brush, que adiciona ferramentas de desenho natural ao p5.js. O vídeo rapidamente ultrapassou 1,5 milhão de visualizações, impulsionado pelo contraste entre o traço solto, imperfeito, e o padrão de perfeição média dos modelos de imagem atuais. Narreddi explicou parte do processo em um blog post, mas sem liberar artefatos ou pipeline completo.

Paniego decidiu então reconstruir o experimento por meio da engenharia reversa, publicando cada componente: dataset de referência, ambiente de RL, scripts de treino e modelos resultantes. O objetivo foi demonstrar que RLHF pode ser usado para otimizar preferências estéticas — indo além de tarefas com resposta objetiva, como matemática ou código testável.

Pipeline: RLHF sobre estética e código legível

O pipeline roda integralmente na Hugging Face. O modelo base é Qwen/Qwen3.5-35B-A3B, ajustado via LoRA e RLHF. O ambiente de RL (OpenEnv) executa o código gerado pelo modelo — cerca de 150 linhas de JavaScript — e avalia o resultado segundo uma recompensa composta:

  • Gate (5%): o sketch compila e não burla restrições.
  • Comprimento (5%): incentiva códigos mais longos (e potencialmente mais expressivos).
  • Pairwise Judge (60%): avaliação do estilo comparado a referências, usando Qwen3-VL-30B-A3B-Instruct.
  • HPSv3 (30%): modelo aberto de preferência humana, treinado em escolhas estéticas.

A cada episódio, o modelo gera um sketch com restrição a apenas 10 funções da biblioteca. A avaliação estética é feita por modelos vision-language e por scorers derivados de escolhas humanas, aproximando a recompensa de um “gosto coletivo”. O pipeline permite customizar a mistura de recompensas, facilitando experimentos em RLHF subjetivo.

Todos os scripts, ambientes e modelos estão abertos na Hugging Face — basta duplicar os Spaces do ambiente e do scorer, ajustar variáveis de ambiente e rodar um comando para iniciar o treino.

Limites e potencial

A abordagem é menos sobre produzir imagens “perfeitas” e mais sobre explorar a estética enquanto processo. O código gerado é legível, editável e reproduzível — cada brushstroke é explícito, diferente das caixas-pretas dos modelos de imagem tradicionais. O projeto remete à fase inicial da arte generativa em IA, quando o objetivo era explorar o meio e não apenas otimizar métricas.

Por outro lado, o pipeline ainda não libera todos os artefatos do experimento viral original (as composições de maior complexidade), e a avaliação estética por modelos de preferência é um campo em aberto — os scorers, embora treinados em escolhas humanas, ainda carecem de validação ampla.

Para quem serve

A ferramenta é relevante para pesquisadores e engenheiros interessados em RLHF além de tarefas objetivas, para artistas digitais que desejam controlar e entender o processo de geração, e para quem explora interseções entre código, arte e IA. Não é plug-and-play: exige domínio de RL, deploy na Hugging Face e leitura dos scripts.

Por que importa

O projeto sinaliza que RLHF pode ser aplicado a domínios subjetivos, como estética, com pipeline transparente e auditável. Ao publicar todos os artefatos e scripts, acelera a pesquisa aberta e reduz a distância entre experimentos virais e reprodutibilidade real. Para o ecossistema brasileiro, é referência de como estruturar projetos abertos em IA criativa — e um convite para engenheiros e artistas colaborarem em novas formas de “pintar com código”.

Tags
  • #huggingface
  • #rlhf
  • #p5.js
  • #arte generativa
  • #openenv