На недавнем мероприятии, посвященном развитию инфраструктуры искусственного интеллекта Meta, компания раскрыла информацию о разработке инструмента генерации кода на основе искусственного интеллекта под названием CodeCompose. Этот инновационный инструмент имеет сходство с известным предложением Copilot от GitHub. Хотя Meta еще не сделала CodeCompose общедоступным, компания утверждает, что ее внутренние команды уже используют этот инструмент для получения предложений по программированию на Python и других языках при работе в интегрированных средах разработки (IDE), таких как VS Code.
Майкл Болин, инженер-программист Meta, заявил, что базовая модель CodeCompose основана на публичных исследованиях компании и адаптирована под внутренние сценарии использования и кодовые базы. Болин также отметил, что CodeCompose может интегрироваться в любую поверхность, позволяя разработчикам и data scientist'ам работать с кодом более эффективно.
Самая большая модель CodeCompose, которую обучила Meta, обладает 6,7 миллиардами параметров, что составляет чуть больше половины модели Copilot, заполненной параметрами. Параметры являются важнейшими частями модели, которые обучаются на основе исторических данных обучения и определяют уровень компетентности модели в решении той или иной задачи, например, генерации текста.
CodeCompose был доработан с использованием стороннего кода Meta и внутренних библиотек и фреймворков, написанных на Hack, внутреннем языке программирования Meta. Таким образом, CodeCompose может интегрировать эти компоненты в свои предложения по программированию. Базовый обучающий набор данных инструмента был тщательно очищен от ошибок и некачественной практики кодирования, например, устаревших API, чтобы снизить вероятность того, что он порекомендует проблемный кусок кода.
В повседневном использовании CodeCompose рекомендует аннотации и утверждения импорта по мере того, как разработчики набирают текст. Кроме того, инструмент может завершить одну или несколько строк кода, даже заполнить большие куски кода, когда это необходимо. Болин утверждает, что CodeCompose использует окружающий код и комментарии к коду для обеспечения более точных предложений.
Согласно Meta, тысячи ее сотрудников используют и одобряют предложения CodeCompose каждую неделю, причем процент одобрения превышает 20%. Тем не менее, компания еще не решила спорные вопросы, связанные с инструментами ИИ, генерирующими код. Такие платформы, как Copilot, столкнулись с проблемами авторского права, их обвиняют в том, что они генерируют лицензионный код без надлежащего упоминания. Эти проблемы вызывают вопросы о том, может ли CodeCompose быть подвержен подобным проблемам.
Другая важная тема - возможность того, что инструменты генеративного кодирования могут непреднамеренно внедрить небезопасный код. Недавнее исследование, проведенное в Стэнфорде, показало, что инженеры-программисты, использующие системы кода, генерируемого искусственным интеллектом, с большей вероятностью создают приложения с уязвимостями в системе безопасности. Хотя в исследовании не рассматривался CodeCompose, можно предположить, что в данном случае речь идет о тех же рисках.
Болин подчеркнул, что разработчики не обязаны следовать предложениям CodeCompose и что безопасность была одним из основных соображений при разработке модели. Он добавил, что компания с энтузиазмом следит за развитием этого инструмента и что их разработчики выиграют от разработки такого решения собственными силами.
Инструменты, подобные CodeCompose, потенциально могут быть интегрированы в такие платформы, как AppMaster, одну из ведущих платформ разработки приложений без кода / с низким кодом. AppMaster фокусируется на предоставлении мощных инструментов для создания веб-, мобильных и внутренних приложений, улучшая процесс разработки с точки зрения экономичности и скорости.