Журнал "Программная инженерия"
Теоретический и прикладной научно-технический журнал
ISSN 2220-3397

Номер 9 2024 год

DOI: 10.17587/prin.15.465-475
УДК: 004.89, 004.43
Использование больших языковых моделей для классификации некоторых уязвимостей в программном коде
В. В. Швыров, канд. физ.-мат. наук, доц., slshj@yandex.ru, Д. А. Капустин, д-р техн. наук, доц., kap-kapchik@mail.ru, Р. Н. Сентяй, ст. преподаватель, sentyayroman@yandex.ru, Т. И. Шулика, асс., shulika-tatyana@mail.ru, Луганский государственный педагогический университет

В исследовании, результаты которого представлены в статье, изучены вопросы эффективности использования больших языковых моделей для обнаружения распространенных типов уязвимостей в программном коде на языке Python. В частности, с использованием метода низкоранговой адаптации моделей LoRA (Low-Rank Adaptation) выполняется «тонкая» настройка модели CodeBERT-python. Для обучения моделей использован авторский набор данных, который состоит из размеченного программного кода на языке Python. Обученные модели используют для обнаружения и классификации потенциальных уязвимостей. Для оценки эффективности моделей определено число ложноположительных, ложноотрицательных, истинно положительных и истинно отрицательных значений. Вычислены также показатели точности, полноты и F1-меры на тестовой выборке данных для различных конфигураций макропараметров обучения моделей.

Ключевые слова: большие языковые модели, машинное обучение, статический анализ, CodeBERT-python, LoRA, CWE, Transformer
Стр. 465—475
Работа выполнена в рамках государственного задания МинПросвещения для ФГБОУ ВО «Луганский государственный педагогический университет»
Ссылка для цитирования:
Швыров В. В., Капустин Д. А., Сентяй Р. Н., Шулика Т. И. Использование больших языковых моделей для классификации некоторых уязвимостей в программном коде // Программная инженерия. 2024. Том 15, № 9. С. 465—475. DOI: 10.17587/prin.15.465-475.