Code to Control: LLM cria controladores Python em tempo real
Code to Control separa a estrutura do programa de seus parâmetros: o modelo escreve o controlador, e uma busca sem derivadas ajusta os valores pelo feedback do ambiente.
O que aconteceu
O artigo Code to Control: Synthesizing Parameterized Reactive Controllers foi submetido ao arXiv em 30 de setembro de 2026, com o identificador arXiv:2609.38733v1, na categoria Computer Science > Artificial Intelligence. O resumo não informa os nomes dos autores nem as instituições responsáveis.
A ideia central é dividir o trabalho em duas partes. Um LLM gera a estrutura do controlador, escrita em Python. Uma busca sem derivadas (derivative-free search) fica responsável por ajustar os parâmetros desse programa para controle contínuo, usando o feedback que vem do próprio ambiente. A estrutura e os parâmetros são tratados como camadas separadas do mesmo problema.
O resultado dessa divisão é que os controladores, depois de aprendidos, não precisam de inferência de LLM nem de planejamento no momento da decisão. Eles executam como políticas puras. Segundo o protocolo de timing adotado pelos autores, essa escolha de ação é mais rápida do que a de uma política treinada com PPO, o algoritmo de aprendizado por reforço próximo de política usado como referência em boa parte da literatura.
Os testes passaram por três frentes: uma suíte de jogos do Atari, o jogo Flappy Bird e tarefas do simulador MuJoCo. O Code to Control superou métodos de síntese de programa baseados em planejamento. Também se manteve competitivo com deep reinforcement learning, com uma diferença relevante: consumiu menos interações com o ambiente durante o treinamento. O método transferiu conhecimento para mudanças substanciais na dinâmica do ambiente e escalou para tarefas complexas de locomoção.
Contexto
Abordagens recentes que usam LLMs para controle seguem dois caminhos conhecidos. O primeiro chama o modelo de linguagem para selecionar a ação a cada passo. O segundo sintetiza world models que exigem planejamento em toda decisão. Os dois caminhos carregam o mesmo problema: latência. Cada passo depende de uma computação pesada, o que restringe o uso em aplicações que precisam responder em tempo real.
O Code to Control ataca exatamente essa restrição. Em vez de consultar o modelo continuamente, ele paga o custo do LLM uma vez, na fase de síntese da estrutura, e depois transfere o esforço para uma busca numérica de parâmetros. O controlador final é código Python comum, executável sem chamadas a servidores de inferência.
Por que importa
A latência é o gargalo prático de sistemas que combinam LLMs com controle. Robótica industrial, drones, personagens de jogos e qualquer laço de decisão com restrição de tempo real sentem esse custo direto. Se a política final roda sem inferência de modelo, o orçamento de tempo de cada passo passa a caber em hardware modesto.
Há também o custo econômico. Rodar um LLM a cada decisão significa pagar por tokens em cada frame, e o valor escala com a frequência do laço de controle. Um controlador que virou código elimina essa conta recorrente. A redução no número de interações com o ambiente, destacada no resumo, aponta para a mesma direção: menos tempo de simulação gasto no treinamento e menos necessidade de infraestrutura paralela.
O terceiro ponto é a transferência. O resumo afirma que os controladores se mantêm funcionais sob mudanças substanciais na dinâmica do ambiente. Isso é relevante porque, em cenários reais, atrito, massa e resposta de motores variam entre unidades idênticas de fábrica.
Impacto
Para quem trabalha com aprendizado por reforço, o resultado coloca uma alternativa na mesa. O PPO segue como baseline forte, e o Code to Control não o supera em qualidade de política, apenas fica competitivo gastando menos interações e vencendo na velocidade de seleção de ação sob o protocolo de tempo do estudo.
Para a área de agentes baseados em LLM, o recado é que nem toda tarefa de decisão precisa do modelo no laço. O modelo vira ferramenta de autoria, não de execução. Isso muda o desenho de arquiteturas que hoje penduram um LLM no meio do caminho crítico.
A escala até tarefas complexas de locomoção, testada em MuJoCo, indica que o método não ficou restrito a ambientes com espaço de ação discreto como os jogos do Atari e o Flappy Bird.
O que muda
O trabalho desloca a pergunta central. Em vez de perguntar como fazer um LLM decidir mais rápido, ele pergunta como usar o LLM para escrever um programa que decide sem ele. A busca sem derivadas faz o papel que o ajuste fino de pesos costuma ocupar, só que sobre parâmetros de um código já estruturado.
Na prática, isso cria uma política auditável. Um controlador em Python pode ser lido, revisado e versionado, diferente de uma rede neural com milhões de pesos.
O que vem agora
O resumo não detalha os próximos passos, a lista completa de tarefas avaliadas nem o cronograma de liberação de código. O artigo está disponível no arXiv em PDF e em uma versão HTML experimental. Os números por tarefa, os baselines exatos e as condições do protocolo de timing precisam ser conferidos no texto completo, que também deve trazer os nomes dos autores e a afiliação institucional.
Fontes
- arXiv cs.AI, Code to Control: Synthesizing Parameterized Reactive Controllers (arXiv:2609.38733v1) — https://arxiv.org/abs/2609.38733
