A geração de código usando Modelos de Linguagem de Grande Escala (LLMs) emergiu como uma importante área de pesquisa, mas gerar código preciso para problemas complexos em uma única tentativa ainda é um grande desafio. Mesmo desenvolvedores humanos qualificados geralmente precisam de múltiplas iterações de tentativa e erro para resolver problemas complexos de programação. Embora os LLMs tenham demonstrado capacidades de codificação impressionantes, sua capacidade de autodepuração para analisar códigos incorretos e fazer as correções necessárias ainda é limitada. Essa limitação é evidente em modelos de código aberto como StarCoder e CodeLlama, que apresentam desempenho de autocorreção muito inferior em comparação com modelos como GPT-3.5-Turbo.
As abordagens existentes para melhorar a geração de código e as capacidades de depuração em LLMs seguiram vários caminhos diferentes. Os LLMs demonstraram sucesso significativo em todas as tarefas relacionadas ao código, incluindo geração de código, depuração, teste de programa e integração. Esses modelos usam pré-treinamento extensivo em vários conjuntos de dados para compreender padrões e gerar código contextualmente relevante. No entanto, a maior parte do trabalho existente centra-se mais na geração única do que no desenvolvimento iterativo. Outros métodos como ILF, CYCLE e auto-organização exploraram métodos de otimização supervisionada, enquanto soluções como OpenCodeInterpreter e EURUS tentaram criar conjuntos de dados de interação dinâmica de alta qualidade usando modelos avançados para fins de otimização.
Pesquisadores da Purdue University, AWS AI Labs e da University of Virginia propuseram o LEDEX (curso de autodepuração e explicação de código), uma nova estrutura de treinamento projetada para melhorar as habilidades de autodepuração dos LLMs. A estrutura baseia-se na observação de que um processo sequencial de definição de código defeituoso seguido de refinamento permite que os LLMs analisem e melhorem o código defeituoso de uma maneira melhor. A LEDEX usa um pipeline automatizado para coletar conjuntos de dados de alta qualidade para codificação e refinamento. Além disso, combina métodos de ajuste fino supervisionado (SFT) e métodos de aprendizagem por reforço (RL), utilizando trajetórias bem-sucedidas e fracassadas com um sistema de recompensa especial que avalia o significado do código e a qualidade do refinamento.
A LEDEX usa uma arquitetura holística que consiste em coleta de dados, validação e processos de treinamento em vários estágios. A estrutura começa reunindo conjuntos de dados de descrição e otimização de código, executando consultas em modelos pré-treinados ou ativados por instruções. Essas respostas passam por uma rigorosa validação baseada no desempenho para filtrar e reter apenas descrições e dados de desenvolvimento de alta qualidade. O conjunto de dados coletado serve então como entrada para otimização supervisionada que melhora muito os recursos do modelo em depuração e otimização de código. LEDEX usa problemas de programação de MBPP, APPS e CodeContest para treinar os dados. Para expandir o conjunto de dados de soluções incorretas, a estrutura incentiva LLMs pré-treinados, como StarCoder e CodeLlama com 3 exemplos, para gerar 20 soluções por problema.
O LEDEX é testado usando três modelos de fundo: StarCoder-15B, CodeLlama-7B e CodeLlama-13B, com dados de treinamento inicial coletados do GPT-3.5-Turbo. A classe SFT mostra uma melhoria significativa, atingindo um aumento de até 15,92% nas métricas pass@1 e 9,30% nas métricas pass@10 nos quatro conjuntos de dados de referência. A próxima etapa do RL melhora ainda mais o desempenho com melhorias adicionais de até 3,54% para pass@1 e 2,55% para pass@10. Notavelmente, o modelo LEDEX agnóstico é demonstrado pelo teste CodeLlama-7B, que alcança uma melhoria significativa (8,25% em pass@1 e 2,14% em pass@10) mesmo quando treinado em dados coletados no CodeLlama-34B ou no próprio, o que prova que a operação independente do GPT-3.5-Turbo.
Concluindo, os pesquisadores introduziram o LEDEX, uma estrutura abrangente e escalável que combina coleta automatizada de dados, processos de validação, SFT e RL com novos designs de recompensa para melhorar significativamente a capacidade do LLM de identificar e corrigir erros de código. A natureza da estrutura do modelo anônimo é comprovada por sua implementação bem-sucedida com GPT-3.5-Turbo e CodeLlama, enquanto seu rigoroso processo de validação de dados garante a qualidade das definições e desenvolvimento do código. Os testes humanos validam ainda mais a eficácia da estrutura, garantindo que os modelos treinados pela LEDEX produzam descrições de código de alta qualidade que auxiliam efetivamente os desenvolvedores na compreensão e solução de problemas de código.
Confira eu Papel. Todo o crédito deste estudo vai para os pesquisadores deste projeto. Além disso, não se esqueça de nos seguir Twitter e junte-se ao nosso Estação telefônica de novo LinkedIn Gracima. Não se esqueça de participar do nosso SubReddit de 60k + ML.
🚨 Tendências: LG AI Research Release EXAONE 3.5: Modelos de três níveis de IA bilíngue de código aberto oferecem seguimento de comando incomparável e insights profundos de conteúdo Liderança global em excelência em IA generativa….
Sajjad Ansari se formou no último ano do IIT Kharagpur. Como entusiasta da tecnologia, ele examina as aplicações da IA com foco na compreensão do impacto das tecnologias de IA e suas implicações no mundo real. Seu objetivo é transmitir conceitos complexos de IA de maneira clara e acessível.
🧵🧵 [Download] Avaliação do relatório do modelo de risco linguístico principal (ampliado)