Решает ли программирование по примеру LLM?
Is Programming by Example solved by LLMs?
June 12, 2024
Авторы: Wen-Ding Li, Kevin Ellis
cs.AI
Аннотация
Программирование через примеры (PBE) нацелено на создание алгоритма на основе примеров ввода-вывода. Такие системы имеют как практическое, так и теоретическое значение: с точки зрения конечного пользователя они применяются миллионами людей, а с точки зрения искусственного интеллекта PBE соответствует очень общей форме малообучаемого индуктивного вывода. Учитывая успех крупных языковых моделей (LLM) в задачах генерации кода, мы здесь исследуем, насколько LLM можно считать "решившим" PBE. Мы проводим эксперименты в классических областях, таких как списки и строки, а также в необычной области графического программирования, плохо представленной в типовых предварительных данных. Мы обнаружили, что предварительно обученные модели неэффективны в PBE, но могут быть донастроены для значительно более высокой производительности, при условии, что тестовые задачи находятся в пределах распределения. Мы эмпирически анализируем, что приводит к успеху и неудачам этих моделей, и предпринимаем шаги к пониманию того, как достичь лучшей обобщаемости вне распределения. В целом эти результаты свидетельствуют о том, что LLM делают значительный прогресс в решении типичного набора задач PBE, потенциально увеличивая гибкость и применимость систем PBE, а также выявляя области, в которых LLM все еще не удовлетворяют.
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