IBM разработала новый инструмент искусственного интеллекта под названием Code Assistant для IBM Z, который может преобразовывать устаревший код COBOL в современный код Java. Цель состоит в том, чтобы помочь предприятиям модернизировать свои приложения для мэйнфреймов.
COBOL — один из старейших языков программирования, основанный в 1959 году. Согласно опросу 2022 года, сегодня в производственных системах все еще используется более 800 миллиардов строк кода COBOL по сравнению с 220 миллиардами строк в 2017 году. Тем не менее, COBOL известен как сложный язык для работы и неэффективен по сравнению с более современными языками, такими как Java. Миграция систем COBOL на Java была сложной и дорогостоящей для крупных организаций. Когда в 2012 году Commonwealth Bank of Australia заменил свою основную платформу COBOL на Java, проект занял 5 лет и обошелся более чем в 700 миллионов долларов.
Новый Code Assistant от IBM призван предоставить решение на базе искусственного интеллекта, которое поможет решить эту проблему модернизации COBOL. Как объяснил главный научный сотрудник IBM Research Ручир Пури, «IBM создала новую, современную генеративную модель кода ИИ для преобразования устаревших программ COBOL в корпоративный Java с высокой степенью естественности в сгенерированном коде».
Code Assistant использует генерирующую код модель искусственного интеллекта под названием CodeNet для преобразования COBOL в Java. CodeNet был обучен на 1,5 триллионах токенов и имеет 20 миллиардов параметров. Он использует большое контекстное окно из 32 000 токенов, «чтобы охватить более широкий контекст для более эффективного преобразования COBOL в Java», — заявил Пури.
Несмотря на то, что существуют инструменты для преобразования COBOL в Java, Пури сказал, что Code Assistant предназначен для того, чтобы не жертвовать возможностями COBOL и снизить затраты при создании поддерживаемого кода. Он объяснил, что «если возможности «понимания» и «рефакторинга» системы рекомендуют, чтобы данная подслужба приложения оставалась в COBOL, она будет сохранена в таком виде, а другие подслужбы будут преобразованы в Java».
Тем не менее, Пури предупреждает, что, как и любая система искусственного интеллекта, Code Assistant может не идеально обрабатывать каждый уникальный шаблон использования COBOL. Он посоветовал: «Очень важно, чтобы код сканировался с помощью современных сканеров уязвимостей для обеспечения безопасности кода».
Новый инструмент Code Assistant будет представлен на конференции IBM TechXchange в сентябре 2023 года и, как ожидается, станет общедоступным в 4 квартале 2023 года. В настоящее время около 84% заказчиков мэйнфреймов IBM используют COBOL, поэтому модернизация этого кода с помощью ИИ может открыть новые возможности гибридного облака. IBM рассматривает ИИ, генерирующий код, как ключ к своему будущему росту, и запустила аналогичные инициативы, такие как fm.model.code для генерации кода из простых английских подсказок.