"Записки научных семинаров ПОМИ"
 Том  540, стр. 233-251 
   
  
Как обеспечить надежный код: использование статического анализатора для
 выявления и устранения дефектов в автоматически порожденном коде
 
   Д. Шайхелисламов,  М. Дробышевский,  А. Белеванцев   
 
Ivannikov Institute for System Programming 
 of the Russian Academy of Sciences;
 Moscow Institute of Physics and Technology  (National Research University); 
HSE University, Moscow, Russia
 
 
 
shaykhelislamov.ds@ispras.ru
 
 
Ivannikov Institute for System Programming 
of the Russian Academy of Sciences; 
Moscow Institute of Physics and Technology
 (National Research University); 
ISP RAS Research Center for Trusted Artificial Intelligence, Moscow, Russia
 
 
drobyshevsky@ispras.ru
 
 
Ivannikov Institute for System Programming 
of the Russian Academy of Sciences;
 Moscow State University, Moscow, Russia
 
 
abel@ispras.ru
 
     
-  Аннотация:  
   
Развитие больших языковых моделей (LLM) значительно расширило возможности 
порождения кода. Недавний опрос на StackOverflow показал, что 70% разработчиков
 используют или планируют использовать инструменты ИИ в разработке кода.
 Однако большинство существующих методов сосредоточены на задачах дообучения 
с учителем, заимствованных из порождения текстов, что часто упускает такие
 важные особенности кода, как возможность компиляции и синтаксическая 
и функциональная корректность. Для решения этой проблемы мы предлагаем новый подход, 
сочетающий предобученные LLMs с инструментами анализа программного обеспечения, 
которые широко используются для обнаружения уязвимостей и проверки кода.
 Наш метод использует подробную обратную связь от компилятора и инструментов
 анализа кода, интегрируя эти специализированные знания в процесс 
порождения подсказок. Мы представляем CodePatchLLM, расширение больших 
языковых моделей, использующее Svace для улучшения порождения кода. 
Это универсальный фреймворк, поддерживающий несколько языков программирования. 
Обширное экспериментальное исследование на наборе данных LeetCode показывает,
 что наш подход превосходит базовую модель CodeLlama, значительно улучшая 
показатели успешности компиляции и функциональной корректности для Java,
 Python и Kotlin. Код CodePatchLLM доступен по адресу 
 https://github.com/dsshay/CodePatchLLM.
 			Библ. -- 55  назв.
 
-  Ключевые слова: большие языковые модели, статический анализатор, качество кода
  [large language models, static analyzer, code quality]
 
 Полный текст(.pdf)