CodeARC: Benchmarking der Schlussfolgerungsfähigkeiten von LLM-Agenten für die induktive Programmsynthese
CodeARC: Benchmarking Reasoning Capabilities of LLM Agents for Inductive Program Synthesis
March 29, 2025
Autoren: Anjiang Wei, Tarun Suresh, Jiannan Cao, Naveen Kannan, Yuheng Wu, Kai Yan, Thiago S. F. X. Teixeira, Ke Wang, Alex Aiken
cs.AI
Zusammenfassung
Die induktive Programmsynthese, auch bekannt als Programmieren durch Beispiele, erfordert die Synthese von Funktionen aus Eingabe-Ausgabe-Beispielen, die auf unbekannte Eingaben verallgemeinern können. Während große Sprachmodell-Agenten vielversprechende Ergebnisse bei Programmieraufgaben gezeigt haben, die durch natürliche Sprache gesteuert werden, ist ihre Fähigkeit zur induktiven Programmsynthese noch wenig erforscht. Bestehende Evaluierungsprotokolle stützen sich auf statische Beispielsätze und zurückgehaltene Tests, bieten jedoch kein Feedback, wenn synthetisierte Funktionen fehlerhaft sind, und spiegeln keine realen Szenarien wie Reverse Engineering wider. Wir schlagen CodeARC, die Code Abstraction and Reasoning Challenge, vor, ein neues Evaluierungsframework, in dem Agenten mit einer verborgenen Zielfunktion interagieren, indem sie diese mit neuen Eingaben abfragen, Kandidatenfunktionen synthetisieren und ihre Lösungen iterativ mithilfe eines Differential-Testing-Orakels verfeinern. Diese interaktive Umgebung ermutigt Agenten, Funktionsaufrufe und Selbstkorrekturen basierend auf Feedback durchzuführen. Wir erstellen den ersten groß angelegten Benchmark für allgemeine induktive Programmsynthese, der 1114 Funktionen umfasst. Unter den 18 evaluierten Modellen schneidet o3-mini mit einer Erfolgsquote von 52,7 % am besten ab, was die Schwierigkeit dieser Aufgabe unterstreicht. Das Feinabstimmen von LLaMA-3.1-8B-Instruct auf kuratierte Synthesepfade führt zu einer relativen Leistungssteigerung von bis zu 31 %. CodeARC bietet eine realistischere und anspruchsvollere Testumgebung für die Bewertung von LLM-basierter Programmsynthese und induktivem Denken.
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.Summary
AI-Generated Summary