Este “Coach Inteligente” Orienta os LLMs na Transição entre Texto e Código

Este “Coach Inteligente” Orienta os LLMs na Transição entre Texto e Código

Créditos da Imagem: Christine Danilof, MIT, ISTOCK

Grandes Modelos de Linguagem (LLMs) são especialistas em usar raciocínio textual para interpretar documentos e fornecer respostas lógicas. No entanto, eles frequentemente tropeçam em problemas matemáticos básicos.

Isso ocorre porque o raciocínio textual não é ideal para resolver tarefas computacionais ou algorítmicas. Embora alguns LLMs possam gerar código — como Python para problemas simbólicos —, eles frequentemente têm dificuldade em determinar quando usar código ou qual tipo seria mais eficaz.

Para ajudar nisso, pesquisadores do MIT desenvolveram o CodeSteer, um “assistente inteligente” que ajuda os LLMs a decidir quando alternar entre a geração de texto e código para resolver um determinado problema.

Prompts Iterativos para Soluções Mais Inteligentes

O CodeSteer, um LLM menor, cria uma sequência de prompts para guiar um modelo maior. Ele revisa as respostas atuais e anteriores do modelo após cada etapa e sugere melhorias até chegar à solução correta.

Em testes, o CodeSteer melhorou a precisão em tarefas simbólicas como multiplicação, Sudoku e empilhamento de blocos em mais de 30%. Também ajudou modelos menos capazes a superar os mais avançados, aprimorando suas habilidades de raciocínio.

Esse desenvolvimento pode aprimorar a capacidade dos LLMs de lidar com problemas complexos que vão além dos limites do raciocínio textual, como traçar caminhos de navegação para robôs em cenários imprevisíveis ou coordenar a logística em cadeias de suprimentos globais.

“Embora haja uma corrida para construir modelos completos, estamos trilhando um caminho diferente”, afirma Chuchu Fan, professor associado de aeronáutica e astronáutica do MIT e pesquisador principal do Laboratório de Sistemas de Informação e Decisão (LIDS). “Há muito tempo, os pesquisadores desenvolvem ferramentas eficazes para resolver problemas específicos. Nosso objetivo é ajudar os LLMs a identificar e aplicar as ferramentas certas e aproveitar a experiência existente para expandir suas capacidades.”

Fan, autor sênior do estudo, colaborou na pesquisa com o aluno de pós-graduação do LIDS, Yongchao Chen; o aluno de pós-graduação da AeroAstro, Yilun Hao; Yueying Liu, da Universidade de Illinois em Urbana-Champaign; e Yang Zhang, pesquisador científico do Laboratório de IA Watson do MIT-IBM. Os resultados serão apresentados na Conferência Internacional sobre Aprendizado de Máquina.

Um “Coach” de LLM

Se você perguntar a um LLM qual número é maior que 9,11 ou 9,9, ele frequentemente erra, baseando-se no raciocínio textual. Mas, quando solicitado a usar código, ele pode gerar e executar um script Python simples para comparar os números corretamente.

Os desenvolvedores originalmente treinam LLMs para entender e responder em linguagem humana, então os modelos tendem a favorecer respostas baseadas em texto, mesmo quando uma solução de codificação seria mais precisa. Embora o ajuste fino tenha ensinado alguns LLMs a escrever código, eles ainda frequentemente produzem versões incorretas ou ineficientes.

Em vez de retreinar um modelo grande como GPT-4 ou Claude, os pesquisadores do MIT optaram por ajustar um LLM menor e mais leve para orientar o modelo maior na decisão de quando alternar entre texto e código. Essa abordagem não modifica o núcleo do modelo maior, preservando suas capacidades originais.

“Nos inspiramos em como o coaching humano funciona”, diz Chen. Um instrutor pode não ser mais habilidoso que um atleta estrela, mas ainda pode fornecer orientações valiosas. A mesma ideia se aplica aos LLMs.

CodeSteer: Um Treinador Inteligente para Orientar Respostas de LLM

Este “treinador”, chamado CodeSteer, funciona em conjunto com o LLM principal. Ele analisa a consulta, decide se uma resposta em texto ou código é mais apropriada e seleciona o melhor tipo de código a ser usado.

O CodeSteer então cria um prompt para o LLM maior, instruindo-o a usar código ou raciocínio textual para responder à consulta. O modelo maior gera uma resposta com base nesse prompt e a retorna ao CodeSteer para avaliação.

Se o resultado estiver incorreto, o CodeSteer continua orientando o modelo, sugerindo estratégias alternativas, como adicionar um algoritmo de busca ou restrições ao código Python, até chegar à resposta correta.

“Muitas vezes, descobrimos que o LLM maior tende a tomar atalhos, produzindo código excessivamente simples ou ineficiente que não consegue lidar adequadamente com o raciocínio simbólico”, explica Chen. “O CodeSteer foi projetado para neutralizar esse comportamento.”

Para dar suporte a isso, um verificador simbólico analisa a complexidade do código e alerta o CodeSteer se a solução for muito básica ou ineficiente. Além disso, o CodeSteer inclui um verificador de auto-resposta que solicita ao LLM a geração de código que verifica a precisão da resposta.

Resolvendo Problemas Desafiadores

Ao desenvolver o CodeSteer, os pesquisadores descobriram que os conjuntos de dados simbólicos existentes não eram adequados para ajuste fino ou avaliação — a maioria dos benchmarks não especificava se uma consulta deveria ser resolvida usando texto ou código.

Para suprir essa lacuna, eles criaram seu próprio conjunto de dados, o SymBench, composto por 37 tarefas simbólicas complexas em domínios como raciocínio espacial, matemática, ordenação e otimização. Em seguida, eles ajustaram o CodeSteer usando esse conjunto de dados para aprimorar seu desempenho.

Nos testes, o CodeSteer superou todos os nove métodos de base e aumentou a precisão média de 53,3% para 86,4%. Ele também demonstrou forte generalização, com bom desempenho em tarefas não vistas e em vários LLMs.

Além disso, modelos de uso geral combinados com o CodeSteer superaram a precisão de modelos especializados de última geração, projetados para raciocínio e planejamento avançados, utilizando significativamente menos poder computacional.

“Nosso método se baseia nos pontos fortes do LLM”, afirma Chen. “Ao ensinar um modelo quando e como usar o código de forma eficaz, podemos impulsionar o desempenho até mesmo de sistemas já potentes.”

Aumentando a Eficiência e Unificando o Raciocínio com a Geração de Código

Olhando para o futuro, os pesquisadores pretendem tornar o CodeSteer mais eficiente, acelerando seu processo iterativo de solicitação de instruções. Eles também estão explorando como ajustar um modelo único e unificado, capaz de alternar entre raciocínio textual e geração de código, eliminando a necessidade de um assistente separado.

“Esta é uma abordagem inteligente e elegante para um grande desafio no uso de ferramentas de LLM”, afirma Jinsung Yoon, pesquisador científico da equipe do Google Cloud AI, que não participou do projeto. “Ele oferece uma maneira simples, porém eficaz, de impulsionar o desempenho do LLM sem retreinar os modelos diretamente. Este trabalho marca um avanço significativo que pode ampliar o uso real dos LLMs, especialmente em tarefas nas quais eles atualmente são insuficientes.”

Chi Wang, cientista sênior da equipe do Google DeepMind, também elogiou o trabalho: “Treinar um modelo menor e especializado para orientar modelos mais avançados é uma ideia poderosa. Esse tipo de colaboração entre ‘agentes’ de IA abre as portas para sistemas mais fortes e flexíveis para a resolução de problemas complexos do mundo real.”

O projeto recebeu apoio do Escritório de Pesquisa Naval dos EUA e do Laboratório de IA Watson do MIT-IBM.


Leia o Artigo Original MIT Massachusetts Institute Of Technology

Leia mais Mão Robótica Ágil Combina Tecnologias Térmicas, Inerciais e de Detecção de força

Share this post