ChatPaper.aiChatPaper

Wird das Programmieren durch Beispiel durch LLMs gelöst?

Is Programming by Example solved by LLMs?

June 12, 2024
Autoren: Wen-Ding Li, Kevin Ellis
cs.AI

Zusammenfassung

Programming-by-Examples (PBE) zielt darauf ab, einen Algorithmus aus Ein- und Ausgabebeispielen zu generieren. Solche Systeme sind praktisch und theoretisch wichtig: Aus Sicht der Endbenutzer werden sie von Millionen von Menschen eingesetzt, und aus Sicht der KI entspricht PBE einer sehr allgemeinen Form des Few-Shot induktiven Schließens. Angesichts des Erfolgs von Large Language Models (LLMs) bei der Codegenerierung untersuchen wir hier, inwieweit gesagt werden kann, dass LLMs PBE "gelöst" haben. Wir experimentieren in klassischen Bereichen wie Listen und Zeichenketten sowie in einem ungewöhnlichen Grafikprogrammierbereich, der in typischen Vortrainingsdaten nicht gut vertreten ist. Wir stellen fest, dass vortrainierte Modelle bei PBE nicht effektiv sind, aber dass sie durch Feinabstimmung eine wesentlich höhere Leistung erbringen können, vorausgesetzt die Testprobleme sind in der Verteilung. Wir analysieren empirisch, was dazu führt, dass diese Modelle erfolgreich sind oder scheitern, und gehen Schritte in Richtung des Verständnisses, wie eine bessere Generalisierung außerhalb der Verteilung erreicht werden kann. Insgesamt deuten diese Ergebnisse darauf hin, dass LLMs starke Fortschritte bei der Lösung des typischen PBE-Aufgabenspektrums machen und möglicherweise die Flexibilität und Anwendbarkeit von PBE-Systemen erhöhen, während sie gleichzeitig aufzeigen, in welchen Bereichen LLMs noch nicht ausreichend sind.
English
Programming-by-Examples (PBE) aims to generate an algorithm from input-output examples. Such systems are practically and theoretically important: from an end-user perspective, they are deployed to millions of people, and from an AI perspective, PBE corresponds to a very general form of few-shot inductive inference. Given the success of Large Language Models (LLMs) in code-generation tasks, we investigate here the extent to which LLMs can be said to have `solved' PBE. We experiment on classic domains such as lists and strings, and an uncommon graphics programming domain not well represented in typical pretraining data. We find that pretrained models are not effective at PBE, but that they can be fine-tuned for much higher performance, provided the test problems are in-distribution. We analyze empirically what causes these models to succeed and fail, and take steps toward understanding how to achieve better out-of-distribution generalization. Collectively these results suggest that LLMs make strong progress toward solving the typical suite of PBE tasks, potentially increasing the flexibility and applicability of PBE systems, while also identifying ways in which LLMs still fall short.

Summary

AI-Generated Summary

PDF131November 29, 2024