COBOLAssist: Analyzing and Fixing Compilation Errors for LLM-Powered COBOL Code Generation
Este artigo apresenta o COBOLAssist, um framework baseado em modelos de linguagem grandes (LLMs) que utiliza correções iterativas guiadas por feedback de compilação para diagnosticar e resolver erros em código COBOL gerado automaticamente, elevando significativamente as taxas de sucesso de compilação e a correção funcional em sistemas legados.
Artigo original sob licença CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo
Imagine que o mundo dos computadores é como uma cidade antiga e gigante. Nessa cidade, a maioria dos prédios importantes (bancos, seguros, governos) foi construída há 50 ou 60 anos usando um material de construção muito específico e antigo chamado COBOL.
O problema é que os mestres pedreiros que sabiam construir com esse material estão se aposentando e ninguém novo aprendeu a técnica. Agora, queremos usar uma nova ferramenta mágica: Inteligência Artificial (IA) para escrever e consertar esses prédios antigos.
Mas, assim como uma criança tentando construir uma casa de cartas com um livro de instruções que ela não entende totalmente, a IA comete muitos erros. Ela esquece de fechar portas, usa pregos onde deveriam ser parafusos ou coloca o telhado antes das paredes.
Aqui está o que os autores desse artigo fizeram, explicado de forma simples:
1. O Problema: A IA "alucina" no COBOL
Os pesquisadores descobriram que, quando pedimos para IAs modernas (como o GPT-4) escreverem código em COBOL, elas falham muito. Não é apenas um erro de digitação; é como se a IA não entendesse a "gramática" rígida e estranha dessa linguagem antiga.
Eles analisaram os erros e viram três tipos principais de bagunça:
- A Casa Inacabada (Código Incompleto): A IA começa a construir um cômodo (um bloco de código) e esquece de colocar a porta de saída ou o telhado final. O prédio fica aberto e o construtor (o compilador) não sabe onde termina.
- A Arquitetura Errada (Erros de Sintaxe): A IA coloca uma janela onde deveria ser uma parede, ou usa o mesmo nome para dois cômodos diferentes. Em COBOL, a estrutura é muito rígida; se você errar a ordem, o prédio desaba.
- O Material Errado (Erros de Tipo): A IA tenta colocar água (texto) dentro de um copo feito para segurar areia (números). O COBOL é muito chato com isso e não deixa misturar.
2. A Solução: O "COBOLAssist" (O Inspetor de Obras)
Como a IA não consegue fazer tudo certo de primeira, os autores criaram um sistema chamado COBOLAssist.
Pense no COBOLAssist como um inspetor de obras muito rigoroso que trabalha em equipe com a IA. O processo funciona assim:
- A IA tenta construir: Ela escreve o código.
- O Inspetor chega: O sistema tenta "construir" o prédio (compilar o código). Se houver erro, o inspetor não apenas diz "está errado". Ele entrega um relatório detalhado (a mensagem de erro do computador) dizendo exatamente onde está o problema: "Na linha 41, você esqueceu de fechar a porta do quarto!".
- A IA corrige: A IA recebe esse relatório, entende o erro e tenta consertar o código.
- Repetição: Eles fazem isso em loop. O inspetor aponta o erro, a IA conserta, o inspetor verifica de novo.
3. Os Resultados: De "Ruim" para "Excelente"
Os testes foram impressionantes. Antes de usar o inspetor (COBOLAssist), as IAs conseguiam construir prédios que ficavam de pé (código compilado com sucesso) apenas em 41% dos casos (no melhor modelo).
Depois de usar o sistema de feedback do inspetor:
- A taxa de sucesso subiu para 95%!
- Basicamente, quase todos os prédios que a IA tentava construir agora ficavam de pé e seguros.
4. O Que Ainda é Difícil?
Mesmo com o inspetor, algumas coisas ainda são difíceis para a IA.
- Erros de "Sentido": Às vezes, o prédio está de pé (o código funciona), mas a cozinha não tem pia. A IA consegue consertar a estrutura, mas às vezes ainda erra a lógica do que o programa deve fazer.
- Estruturas Complexas: Se o prédio tiver muitos andares e túneis interligados (código muito complexo e aninhado), a IA às vezes se perde e esquece de fechar um dos muitos andares, mesmo com o relatório de erro.
Resumo da Ópera
Este artigo mostra que, embora a Inteligência Artificial ainda não seja um "mestre pedreiro" nato para a linguagem antiga COBOL, ela pode se tornar uma excelente aprendiz se tivermos alguém (o sistema COBOLAssist) para apontar os erros específicos e permitir que ela tente de novo.
É como ensinar uma criança a andar de bicicleta: ela vai cair várias vezes, mas se você segurar o banco e dizer "vire para a esquerda agora", ela logo aprende a pedalar sozinha. Isso é crucial para manter as economias do mundo funcionando, já que nossos bancos e governos ainda dependem desses "prédios antigos" de COBOL.
Afogado em artigos na sua área?
Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.