Искусственный интеллект можно использовать бесконечным количеством способов, но самым мощным его бизнес-приложением может стать создание кода, считают опрошенные порталом InformationWeek эксперты.

Генерируемый ИИ код может показаться убийцей карьеры, однако все больше ИТ-руководителей обращаются к ИИ для генерации различных типов рутинного кода, освобождая людей-кодеров, чтобы они могли сосредоточиться на более сложных и полезных задачах.

ИИ может значительно ускорить разработку ПО, считает Прасад Санкаран, президент по инжинирингу ПО и платформ консалтинговой компании Cognizant. «Основываясь на подсказках на естественном языке, ИИ может писать код и тестировать сценарии на различных языках программирования, фреймворках, библиотеках и многом другом, — утверждает он. — У нас от 20 до 30% кода теперь пишут машины — это производительность, которую мы можем транслировать нашим клиентам».

Он также отмечает, что ИИ может генерировать синтетические тестовые данные, уменьшая необходимость использования чувствительных наборов живых данных.

Многочисленные преимущества

По словам Санкарана, преимущества ИИ-генерации кода очевидны: больше продукции, лучшее качество в более короткие сроки и улучшенная способность преодолевать ограничения, связанные с квалифицированными специалистами: «Все это повышает производительность, гибкость и эффективность бизнеса». Он считает, что кодирование с использованием ИИ позволяет членам команды работать быстрее и уделять больше внимания более ценным, творческим видам деятельности, таким как актуальные функции, пользовательский опыт, безопасность, отказоустойчивость и производительность.

Предприятиям с крупными отделами разработки следует ожидать существенного повышения производительности, считает Дэвид Меннингер, исполнительный директор ISG Software Research. «Организации, которые полагаются на поставщиков услуг, создающих для них приложения, должны ожидать снижения тарифов в результате повышения эффективности, связанной с ИИ-генерацией код», — считает он.

Как начать

Как и в случае со многими новыми технологиями, лучше всего начинать с простого, советует Меннингер. Он предлагает начать с создания прототипа: «В этом сценарии качество кода менее критично, и это позволит узнать о возможностях ИИ». Еще одна хорошая отправная точка — преобразование кода, поскольку конечный результат можно сравнить с существующим рабочим ПО.

Деванш Агарвал, инженер по машинному обучению Amazon Web Services, говорит, что ИИ особенно искусен в написании стандартного шаблонного кода. «Например, если я хочу создать API-клиент для вызова определенного API, ИИ может сгенерировать для него стандартный код, — объясняет он. — Если такой код будет писать разработчик, это займет несколько часов. ИИ может сгенерировать идентичный код практически мгновенно. Поскольку это очень стандартный кусок кода, который уже присутствует в Интернете, он, скорее всего, будет правильным».

По словам Агарвала, начать работу может быть удивительно просто. «Моя мама, которая никогда не написала ни строчки кода, смогла это сделать, — утверждает он. — Процесс прост: решите, что вы хотите построить, попросите LLM сгенерировать код и продолжайте просить ее исправить ошибки, пока код наконец не заработает».

Несмотря на относительную простоту ИИ-генерации кода, Санкаран подчеркивает необходимость обучения членов команды наиболее эффективному использованию помощников по кодированию с помощью ИИ, а также учета присущих им рисков и ограничений.

Меннингер рекомендует всегда проверять и тестировать код, генерируемый ИИ, как и любой другой код. «Рассматривайте ИИ в том же свете, что и младшего разработчика. Вы можете дать ему задание, но, конечно, захотите проверить результаты и, возможно, добавить некоторые уточнения или попросить его внести правки», — говорит он.

Потенциальные препятствия

По словам Санкарана, предприятиям необходимо признать присущие технологии ИИ ограничения, в том числе риск того, что члены команды будут слишком сильно полагаться на код, созданный ИИ. Сгенерированные результаты могут быть непоследовательными и подверженными ошибкам, поэтому им необходим человеческий контроль. Сочетание предопределенных планов и шаблонов, а также применение автоматических проверок качества, заложенных в организационную политику и защитные ограждения, может помочь решить эту проблему, обеспечив предсказуемые, последовательные и соответствующие требованиям результаты в заданных границах.

По словам Меннингера, самый большой потенциальный недостаток — это растущее чрезмерное доверие к коду, сгенерированному ИИ. «Может возникнуть тенденция доверять коду только потому, что он был сгенерирован машиной, — объясняет он. — Хорошая новость заключается в том, что с помощью ИИ можно тестировать код как на качество, так и на безопасность, так что, надеюсь, в итоге вы получите код еще более высокого качества, чем сгенерированный вручную и протестированный вручную».

Заключительные размышления

По словам Санкарана, ИИ-помощники по работе с кодом прошли долгий путь и постоянно совершенствуются, предоставляя разработчикам более качественный опыт, более целенаправленные и целостные решения, способствующие автоматизации и повышению производительности на протяжении всего жизненного цикла разработки ПО.

В перспективе агентный ИИ способен сделать разработку ПО более простой, автономной и оркестрованной, утверждает он: «Возьмем, например, агенты, специализирующиеся на понимании требований, написании кода, проверке кода, тестировании, развертывании и т. д. — все они будут работать автономно под контролем человека. Мы приближаемся к тому дню, когда можно будет просто описать нужную нам функциональность... и система сделает все остальное».