ChatPaper.aiChatPaper

CodeARC: Evaluación de las Capacidades de Razonamiento de Agentes LLM para la Síntesis Inductiva de Programas

CodeARC: Benchmarking Reasoning Capabilities of LLM Agents for Inductive Program Synthesis

March 29, 2025
Autores: Anjiang Wei, Tarun Suresh, Jiannan Cao, Naveen Kannan, Yuheng Wu, Kai Yan, Thiago S. F. X. Teixeira, Ke Wang, Alex Aiken
cs.AI

Resumen

La síntesis inductiva de programas, o programación por ejemplos, requiere sintetizar funciones a partir de ejemplos de entrada-salida que generalicen a entradas no vistas. Si bien los agentes basados en modelos de lenguaje grandes han mostrado potencial en tareas de programación guiadas por lenguaje natural, su capacidad para realizar síntesis inductiva de programas está poco explorada. Los protocolos de evaluación existentes se basan en conjuntos estáticos de ejemplos y pruebas reservadas, sin ofrecer retroalimentación cuando las funciones sintetizadas son incorrectas y sin reflejar escenarios del mundo real, como la ingeniería inversa. Proponemos CodeARC, el Desafío de Abstracción y Razonamiento de Código, un nuevo marco de evaluación donde los agentes interactúan con una función objetivo oculta al consultarla con nuevas entradas, sintetizar funciones candidatas y refinar iterativamente sus soluciones utilizando un oráculo de pruebas diferenciales. Este entorno interactivo fomenta que los agentes realicen llamadas a funciones y autocorrección basada en retroalimentación. Construimos el primer benchmark a gran escala para síntesis inductiva de programas de propósito general, que incluye 1114 funciones. Entre los 18 modelos evaluados, o3-mini obtiene el mejor rendimiento con una tasa de éxito del 52.7%, destacando la dificultad de esta tarea. El ajuste fino de LLaMA-3.1-8B-Instruct en trazas de síntesis curadas produce una mejora relativa de rendimiento de hasta un 31%. CodeARC ofrece un entorno de prueba más realista y desafiante para evaluar la síntesis de programas y el razonamiento inductivo basados en modelos de lenguaje grandes.
English
Inductive program synthesis, or programming by example, requires synthesizing functions from input-output examples that generalize to unseen inputs. While large language model agents have shown promise in programming tasks guided by natural language, their ability to perform inductive program synthesis is underexplored. Existing evaluation protocols rely on static sets of examples and held-out tests, offering no feedback when synthesized functions are incorrect and failing to reflect real-world scenarios such as reverse engineering. We propose CodeARC, the Code Abstraction and Reasoning Challenge, a new evaluation framework where agents interact with a hidden target function by querying it with new inputs, synthesizing candidate functions, and iteratively refining their solutions using a differential testing oracle. This interactive setting encourages agents to perform function calls and self-correction based on feedback. We construct the first large-scale benchmark for general-purpose inductive program synthesis, featuring 1114 functions. Among 18 models evaluated, o3-mini performs best with a success rate of 52.7%, highlighting the difficulty of this task. Fine-tuning LLaMA-3.1-8B-Instruct on curated synthesis traces yields up to a 31% relative performance gain. CodeARC provides a more realistic and challenging testbed for evaluating LLM-based program synthesis and inductive reasoning.
PDF342April 2, 2025