Язык программирования «Пайтон» стал очень популярным в эпоху больших данных и машинного обучения, поскольку он удобен для пользователя. Благодаря библиотекам простых в использовании инструментов, интуитивному и четкому синтаксису обучение не занимает много времени.
«Однако Python безумно неэффективен, — сказала профессор Эмили Бергер из Университета штата Массачусетс в Амхерсте. — Он легко может работать в 100-1000 раз медленнее, чем другие языки, а некоторые задачи в Python могут выполняться в 60 000 раз медленнее».
Недостаток этот известен программистам, и для его обхода они используют так называемые профилировщики, которые проверяют программы и сообщают, в каких частях быстродействие падает. Увы, существующие профилировщики не раскрывают причину проблем, только указывают на проблемные места.
Команда Бергер создала Scalene как первый профилировщик, который не только находит недостатки в коде «Пайтона», но и предлагает варианты улучшения. За эту задачу отвечает искусственный интеллект, пишет Science Daily.
Профилировщик ищет проблемы в трех основных зонах, ответственных за медленную работу: центральном процессоре, графическом процессоре и памяти. Как только проблемная зона выявлена, генеративная модель — аналогичная той, которую использует бот ChatGPT — подсказывает, как оптимизировать отдельные строки или даже куски кода.
«Компьютеры уже не становятся более быстрыми, — сказала Бергер. — Будущий прирост в скорости — в меньшей степени заслуга совершенного аппаратного обеспечения, а в большей — более быстрого и эффективного программирования».
Программу-профилировщик Scalene можно сказать с GitHub.
Подразделение Google DeepMind AI разработало систему искусственного интеллекта (ИИ) AlphaCode, которая может генерировать код и решать задачи, предлагаемые на чемпионатах по программированию. Для этого нейросеть обучили двум языковым навыкам: пониманию постановки задачи и поиску её решения. Но программистов AlphaCode пока не заменит.