Детальная информация
| Название | Разработка LLM-агента для автоматизации первичной обработки результатов статического анализа исходного кода: выпускная квалификационная работа магистра: направление 02.04.01 «Математика и компьютерные науки» ; образовательная программа 02.04.01_03 «Искусственный интеллект и машинное обучение» = Development of an LLM-agent for automating the initial processing of source code static analysis results |
|---|---|
| Авторы | Гаврилов Антон Игоревич |
| Научный руководитель | Силиненко Александр Витальевич |
| Организация | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
| Выходные сведения | Санкт-Петербург, 2026 |
| Коллекция | Выпускные квалификационные работы ; Общая коллекция |
| Тематика | статический анализ исходного кода ; ложноположительные срабатывания ; большие языковые модели ; LLM-агенты ; мультиагентная архитектура ; разработка безопасного ПО ; static source code analysis ; false positives ; large language models ; LLM agents ; multi-agent architecture ; secure software development |
| Тип документа | Выпускная квалификационная работа магистра |
| Язык | Русский |
| Уровень высшего образования | Магистратура |
| Код специальности ФГОС | 02.04.01 |
| Группа специальностей ФГОС | 020000 - Компьютерные и информационные науки |
| DOI | 10.18720/SPBPU/3/2026/vr/vr26-4856 |
| Права доступа | Доступ по паролю из сети Интернет (чтение) |
| Дополнительно | Новинка |
| Ключ записи | ru\spstu\vkr\45029 |
| Дата создания записи | 04.09.2026 |
Разрешенные действия
–
Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
| Группа | Анонимные пользователи |
|---|---|
| Сеть | Интернет |
Объектом исследования является процесс первичной обработки результатов статического анализа исходного кода. Предметом исследования являются методы автоматизации первичной обработки результатов статического анализа с использованием LLM-агентов. Целью работы является разработка LLM-агента, выполняющего автоматизированную классификацию срабатываний статического анализатора с формированием обоснования на естественном языке. В ходе работы исследованы принципы работы существующих инструментов статического анализа исходного кода; проанализированы современные методы применения искусственного интеллекта, машинного обучения и обработки естественного языка к анализу исходного кода программного обеспечения; сформулированы функциональные и нефункциональные требования к LLM-агенту. На основе требований разработана мультиагентная архитектура, состоящая из Координатора, формирующего план анализа и выносящего вердикт; Критика, верифицирующего решение Координатора, и субагентов, выполняющих изучение кодовой базы в изолированных контекстных окнах. В результате работы на языке Python с использованием библиотеки LangGraph реализован программный прототип <<ReChecker>>. Исходный код прототипа опубликован в открытом доступе. Эффективность прототипа подтверждена экспериментальной оценкой на наборе из 506 размеченных срабатываний Clang Static Analyzer по трём крупным открытым проектам - веб-серверу Apache, ядру ОС FreeBSD, интерпретатору языка PHP. Область применения результатов работы - автоматизация процессов разработки безопасного ПО, прежде всего для систем повышенной ответственности: средств защиты информации, значимых объектов критической информационной инфраструктуры и встраиваемого программного обеспечения.
The object of research is the process of initial processing of source code static analysis results. The subject of research is methods for automating the initial processing of static analysis results using LLM-agents. The goal of the work is to develop an LLM-agent that performs automated classification of static analyzer warnings and produces natural-language justifications for its verdicts. In the course of the work, the principles of operation of existing source code static analysis tools were investigated; modern methods of applying artificial intelligence, machine learning, and natural language processing to software source code analysis were analyzed; functional and non-functional requirements for the LLM-agent were formulated. Based on the requirements, a multi-agent architecture was designed, consisting of the Coordinator, which forms the analysis plan and issues the verdict; the Critic, which verifies the Coordinators decision; and sub-agents, which examine the codebase in isolated context windows. As a result of the work, a software prototype "ReChecker" was implemented in Python using the LangGraph library. The prototype source code has been published as open source. The effectiveness of the prototype was confirmed by experimental evaluation on a dataset of 506 labeled Clang Static Analyzer warnings from three large open-source projects - the Apache web server, the FreeBSD operating system kernel, and the PHP language interpreter. The application area of the results is the automation of secure software development processes, primarily for high-responsibility systems: information security tools, significant objects of critical information infrastructure, and embedded software.
| Место доступа | Группа пользователей | Действие |
|---|---|---|
| Локальная сеть ИБК СПбПУ | Все |
|
| Интернет | Авторизованные пользователи СПбПУ |
|
| Интернет | Анонимные пользователи |
|