“Essa abordagem tem o potencial de mudar radicalmente a forma como o código é mantido em grandes empresas”, escreveu um grupo de autores do Google Core e do Google Ads em um novo “relatório de experiência” descrevendo sua abordagem. “Isso não só pode acelerar o trabalho dos engenheiros, mas também viabilizar esforços que antes eram inviáveis ​​devido ao enorme investimento necessário.”

Em última análise, o objetivo do Google era identificar oportunidades para os LLMs fornecerem valor adicional e escala de suporte sem exigir árvores de sintaxe abstrata (AST) difíceis de manter. Eles são amplamente usados ​​para representar a estrutura de um programa ou trecho de código, mas são determinísticos – ou seja, os resultados já estão identificados – e os casos de uso de migração de código abrangem construções muito mais complexas que são difíceis de representar com ASTs, explicaram os autores. .

“Alcançar o sucesso na migração de código baseada em LLM não é simples”, observaram os autores. “O uso apenas de LLMs por meio de prompts simples não é suficiente para nada além da mais simples das migrações. Em vez disso, como descobrimos ao longo de nossas jornadas e conforme descrito nos estudos de caso deste artigo, é necessária uma combinação de técnicas baseadas em AST, heurísticas e LLMs para alcançar o sucesso. Além disso, implementar as mudanças de forma segura para evitar regressões dispendiosas também é importante.”