Детальная информация
| Название | ИИ-агент для генерации тестов и автоисправления дефектов: выпускная квалификационная работа бакалавра: направление 02.03.02 «Фундаментальная информатика и информационные технологии» ; образовательная программа 02.03.02_02 «Информатика и компьютерные науки» = AI Agent for Test Generation and Automated Defect Repair |
|---|---|
| Авторы | Третьяков Тимофей Михайлович |
| Научный руководитель | Самочадина Татьяна Николаевна |
| Организация | Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности |
| Выходные сведения | Санкт-Петербург, 2026 |
| Коллекция | Выпускные квалификационные работы ; Общая коллекция |
| Тематика | ИИ-агент ; Go ; статический анализ ; AST ; автоматическое исправление кода ; генерация тестов ; LLM ; валидация ; AI agent ; static analysis ; automated program repair ; test generation ; validation |
| Тип документа | Выпускная квалификационная работа бакалавра |
| Язык | Русский |
| Уровень высшего образования | Бакалавриат |
| Код специальности ФГОС | 02.03.02 |
| Группа специальностей ФГОС | 020000 - Компьютерные и информационные науки |
| DOI | 10.18720/SPBPU/3/2026/vr/vr26-3461 |
| Права доступа | Доступ по паролю из сети Интернет (чтение) |
| Дополнительно | Новинка |
| Ключ записи | ru\spstu\vkr\42654 |
| Дата создания записи | 21.08.2026 |
Разрешенные действия
–
Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
| Группа | Анонимные пользователи |
|---|---|
| Сеть | Интернет |
Данная работа посвящена разработке программного прототипа ИИ-агента, предназначенного для автоматизированного анализа Go-проектов, обнаружения типовых дефектов, выбора стратегии их обработки, применения безопасных исправлений, генерации тестов и проверки результата. В ходе работы решались следующие задачи: анализ существующих подходов к статическому анализу и автоматическому исправлению программного кода; исследование возможностей LLM для генерации исправлений; проектирование архитектуры ИИ-агента; реализация модулей анализа, принятия решений, исправления дефектов, генерации тестов, валидации и отчётности; экспериментальная проверка разработанного решения. В результате был реализован гибридный подход, сочетающий детерминированные шаблонные исправления, контролируемое использование больших языковых моделей и ручной анализ рискованных случаев. Экспериментальная проверка разработанного решения подтвердила корректность выбранной методики: система обнаружила и устранила поддерживаемые дефекты, применила шаблонные и LLM-исправления, сгенерировала тесты и достигла покрытия кода 94,40 %. Все принятые изменения прошли сборку, тестирование и валидацию. Для достижения полученных результатов использовались следующие информационные технологии: язык программирования Go, пакеты go/ast, go/parser, go/token и go/types, команды go build, go test и go tool cover, Staticcheck, golangci-lint, OpenRouter API, YAML, JSON, Git, GitLab, Visual Studio Code и технологии искусственного интеллекта для поддержки автоматизированного анализа программного кода.
This work is devoted to the development of a software prototype called AI-agent. The system is designed for automated analysis of Go projects, detection of typical defects, selection of a processing strategy, safe code repair, test generation and validation of applied changes. The research addressed the following objectives: analysis of existing approaches to static code analysis and automated program repair; investigation of large language model capabilities for code-fix generation; design of the AI-agent architecture; implementation of modules for analysis, decision making, defect repair, test generation, validation and reporting; experimental evaluation of the proposed solution. As a result, a hybrid approach was implemented. It combines deterministic template-based fixes, controlled use of large language models and manual review for risky cases. The experimental evaluation confirmed the correctness of the proposed methodology: the system detected and resolved supported defects, applied both template-based and LLM-generated fixes, generated tests and achieved 94.40% code coverage. All accepted changes successfully passed build, testing and validation stages. The following information technologies were used during the research: Go programming language, go/ast, go/parser, go/token and go/types packages, go build, go test and go tool cover commands, Staticcheck, golangci-lint, OpenRouter API, YAML, JSON, Git, GitLab, Visual Studio Code and artificial intelligence technologies for automated static code analysis.
| Место доступа | Группа пользователей | Действие |
|---|---|---|
| Локальная сеть ИБК СПбПУ | Все |
|
| Интернет | Авторизованные пользователи СПбПУ |
|
| Интернет | Анонимные пользователи |
|