DeepMind научили решать несложные задачи из спортивного программирования: из условия в код
Публичный постDeepMind уже обучали AlphaGo выигрывать в Го. Буквально вчера анонсировали, что теперь научили новый AlphaCode решать задачи по олимпиадному программированию (доступен препринт). Проверили на задачах с Codeforces — действительно решает, можете глянуть посылки трёх пользователей.
На входе — текст условия на английском и пара примеров. Всё как у обычных участников, только убрали форматирование условия. На выходе — готовый код решения на C++/Python. Иногда решает не с первой попытки, но и у людей на соревновании есть несколько попыток. В посте на Codeforces пишут, что модель получила бы рейтинг порядка 1300 — это в конце верхней половины всех активных за полгода участников соревнований.
Обращаю внимание, что ни о каком "среднем программисте", как пишут некоторые издания, речи и не идёт. Только про решение соревновательных задачи с чётко поставленными задачами и ограничениями. Например, вот сложная для модели (но решила), а вот простая (и решение модели). Кстати, обе эти задачи с Div. 3 раунда (самый простой) на задачах муниципального этапа Всероссийской олимпиады школьников по информатике в Саратове этого года.
По-моему, довольно круто, даже если модель в среднем решает только задачи уровня Div.2 A-B и с вероятностью 50:50. Они, конечно, для опытных спортивных программистов тривиальные и скучные, но и там есть где неправильно понять условие, не разобраться с легендой, не придумать решение, не разобрать крайний случай, придумать слишком медленное решение или просто посадить баг в коде.
А вот тут разбирают чуть подробнее, как эта штука работает, но я со статьёй не сверял.
А OpenAI между тем научили сеть решать задачи с IMO.
А тут не в том ли дело, что обучающая выборка была тоже спарсенным кодфорсом и литкодом?
А чему тут удивляться?
Это уже давно реализовано в Github Copilot и доступно многим.
Берете условие задачи с Leetcode, копируете его в себе в комментарий файла, добавляете сигнатуру функции и Copilot решает все за вас.