Приватная ИИ-система для документирования кода

Закрытая ИИ-система для автоматической подготовки технической документации по Java- и JavaScript-коду с локальным анализом исходного кода, описанием классов, методов, зависимостей и бизнес-логики без передачи данных во внешние сервисы.

Краткий обзор проекта

У клиента была корпоративная программная система, основная часть которой была написана на Java и JavaScript. Со временем кодовая база выросла до нескольких тысяч файлов, но единая техническая документация по ней так и не была создана.

Это осложняло ввод новых разработчиков в проект, сопровождение системы, работу с изменениями и ответы на запросы, связанные с внутренними проверками и требованиями безопасности. Документировать код вручную было слишком долго и дорого, особенно с учетом объема проекта и сложности бизнес-логики.

При этом клиент не мог использовать внешние облачные ИИ-сервисы, поскольку кодовая база содержала проприетарную бизнес-логику и должна была оставаться внутри контролируемой инфраструктуры. Поэтому было необходимо разработать приватное решение, которое анализировало бы код локально и позволяло быстро формировать документацию в едином формате.

  • Регион: Европа
  • Индустрия: Корпоративное ПО
  • Сроки: ~2 месяца

Задача

Клиенту нужно было автоматизировать подготовку технической документации для большой закрытой кодовой базы и сохранить контроль над исходным кодом.

Основными задачами проекта стали:

  • Автоматическая подготовка документации для Java- и JavaScript-кода
  • Обработка около 3100 файлов исходного кода
  • Описание классов, методов, зависимостей и ключевой бизнес-логики
  • Приведение документации к единой структуре для всех репозиториев
  • Сокращение ручной работы разработчиков при документировании кода
  • Ускорение процесса онбординга новых инженеров в проект
  • Исключение передачи исходного кода во внешние ИИ-сервисы
  • Развертывание обработки кода в приватной инфраструктуре
  • Снижение затрат на запуск языковой модели и обработку больших объемов данных

Решение

Команда СКЭНД разработала систему для автоматической подготовки документации к закрытым Java- и JavaScript-проектам. Решение обрабатывало репозитории пакетами, анализировало исходные файлы и формировало технические описания, которые использовались во внутренней базе знаний и в работе инженерных команд.

Система разбирала структуру кода, выявляла классы, методы, зависимости и связи между компонентами. Затем языковая модель, обученная на задачах анализа кода, формировала понятное описание: назначение модулей, ответственность методов, используемые данные и взаимодействие частей системы.

Вся ИИ-обработка выполнялась локально на приватной GPU-инфраструктуре. Для запуска модели использовался Ollama, а за анализ кода и генерацию документации отвечала Qwen2.5 Coder. Такой подход позволил не передавать исходный код во внешние сервисы и одновременно контролировать затраты на обработку больших объемов данных.

Документация формировалась в едином стиле, близком к практикам Javadoc и JSDoc, что упрощало чтение, поиск информации и дальнейшее сопровождение системы.

Ключевые возможности

  • Автоматическая подготовка технической документации для Java- и JavaScript-проектов
  • Пакетная обработка тысяч файлов исходного кода
  • Анализ классов, методов, зависимостей и бизнес-логики
  • Единый формат документации для разных репозиториев
  • Локальный запуск языковой модели без использования внешних ИИ-сервисов
  • Документирование внутренней кодовой базы без передачи файлов за пределы инфраструктуры клиента
  • Использование GPU-сервера для ускорения работы модели
  • Снижение расходов на обработку большого объема файлов
  • Документация в стиле Javadoc и JSDoc
  • Материалы для внутренней базы знаний и быстрого ввода новых разработчиков в проект

Технологический стек

  • Языки проектов: Java, JavaScript;
  • Фреймворки проектов: Spring Boot, React;
  • Запуск языковой модели: Ollama;
  • Языковая модель: Qwen2.5 Coder;
  • Инфраструктура: сервер с NVIDIA H100 GPU;
  • Обработка кода: пакетный разбор исходных файлов и автоматическая подготовка документации;
  • Формат документации: Javadoc, JSDoc.

Результаты

Клиент получил приватную ИИ-систему для автоматической подготовки технической документации к закрытой кодовой базе. Решение обработало более 3100 файлов исходного кода и помогло привести документацию по Java- и JavaScript-проектам к единому формату.

Документирование впоследствии стало занимать меньше времени у разработчиков, а новым инженерам стало проще разбираться в архитектуре, бизнес-логике и связях между компонентами. При этом исходный код не передавался во внешние облачные сервисы: вся обработка выполнялась в приватной инфраструктуре клиента.

В результате клиент получил:

  • Автоматическую документацию для более чем 3100 файлов исходного кода
  • Единый формат технических описаний для Java- и JavaScript-проектов
  • Сокращение объема ручной работы для разработчиков
  • Ускорение процесса ввода новых инженеров в проект
  • Локальную ИИ-обработку без передачи кода во внешние сервисы
  • Контроль затрат на запуск языковой модели
  • Базу для дальнейшего сопровождения и развития корпоративной системы

Нуждаетесь в разработке похожего проекта?

Свяжитесь с нами

Мы любим новые проекты! Напишите нам, и мы ответим вам в ближайшее время.

Спасибо, что написали нам! Ваше сообщение было успешно отправлено. Мы обязательно ответим на него в ближайшее время. Пожалуйста, проверьте, получили ли Вы от нас письмо-подтверждение на указанную Вами почту.