Анализ ML-инфраструктуры: от конвейера до модели
CodeGraph помогает держать под контролем ML-инфраструктуру: понимать, как идут данные, проверять код, созданный ИИ, и аккуратно вычищать завершённые эксперименты без ручных раскопок.
Почему ML-инфраструктура быстро становится непрозрачной
Проблема обычно не в одной модели, а в большом количестве сервисов, скриптов и связей между ними
Завершённые эксперименты засоряют кодовую базу
Каждый эксперимент оставляет код: этапы предобработки, конструирование признаков, циклы обучения. Через год 30-40% кодовой базы — заброшенные ветки экспериментов, которые никто не решается удалить.
45% AI-сгенерированного кода содержит уязвимости
Copilot и Claude генерируют код быстро, но не знают контекст вашей системы. Небезопасные десериализации, отсутствие валидации, утечки данных — уязвимости попадают в рабочую среду незамеченными (Veracode 2025).
Непрозрачность конвейера данных
Данные проходят через десятки функций в разных файлах: загрузка, очистка, трансформация, аугментация, нормализация. Ручная трассировка «откуда берутся данные для обучения?» занимает дни.
Как CodeGraph помогает AI/ML-команде
Граф свойств кода позволяет проследить, как устроен ML-стек, где проходят данные и какие части системы больше не нужны
Трассировка потоков данных
Межпроцедурный анализ прослеживает путь данных от источника (CSV, S3, база данных) через трансформации до использования в модели. Полный путь с файлами и строками — не абстрактный граф, а конкретный код.
Обнаружение мёртвого кода
Граф вызовов выявляет недостижимые функции: заброшенные циклы обучения, неиспользуемые этапы предобработки, неиспользуемые модули конструирования признаков. Многоуровневая фильтрация (V25–V29) сокращает ложные срабатывания.
Верификация AI-сгенерированного кода
190 YAML-правил покрывают OWASP Top 10. Анализ потоков данных верифицирует каждый путь от источника до приёмника. Только реальные уязвимости с доказательствами.
Что команда получает на практике
Возможности для ML-команд
От инфраструктуры данных до проверки изменений и сопровождения больших ML-кодовых баз
Мультиязычный ML-стек в едином графе
Python для ML, C/C++ для производительных вычислений, Go для развёртывания моделей — GoCPG анализирует каждый язык и строит единый CPG. Зависимости через FFI, ctypes, pybind11 видны в графе.
21 сценарий анализа
От онбординга до аудита безопасности. Для ML-команд актуальны: анализ архитектуры, обнаружение мёртвого кода, рефакторинг, анализ зависимостей, аудит безопасности AI-кода.
Структурный поиск паттернов
YAML-правила с CPG-ограничениями. Примеры: «найди все функции, которые читают данные из S3, но не проверяют формат», «найди циклы обучения без сохранения чекпоинтов».
Локальный и изолированный контур
ML-код содержит проприетарные алгоритмы и данные. CodeGraph полностью разворачивается в локальном контуре. Docker / Kubernetes. Локальные LLM для изолированных сред. Код не покидает инфраструктуру.
CI/CD интеграция
GitHub Actions, GitLab CI. Анализ для каждого запроса на слияние: проверка кода, созданного ИИ, поиск уязвимостей, обнаружение мёртвого кода. Экспорт в SARIF 2.1.0 для интеграции с IDE.
Вопросы об AI/ML-инженерии
CodeGraph помогает проследить путь данных через инфраструктурный код, проверить AI-сгенерированные изменения и безопасно удалить завершённые эксперименты. Платформа анализирует Python и многоязычный стек на уровне CPG, показывает зависимости между модулями и даёт доказуемые пути данных без ручных раскопок.
Да. CodeGraph анализирует Python-код на уровне CPG — строит граф вызовов, потоки данных, зависимости. Это работает с любыми Python-библиотеками: PyTorch, TensorFlow, JAX, scikit-learn. CodeGraph не анализирует веса моделей или вычислительные графы фреймворков, но полностью покрывает инфраструктурный код: циклы обучения, загрузка данных, конвейеры предобработки, API-сервисы моделей.
CodeGraph проверяет код, созданный ИИ, через CPG: анализ потоков данных выявляет уязвимости, которые AI-ассистенты часто вносят — небезопасные десериализации, SQL-инъекции, отсутствие валидации входных данных. 190 YAML-правил из коробки покрывают OWASP Top 10. Результат — конкретные пути от источника до приёмника, а не сопоставление шаблонов.
Да. CodeGraph строит граф потоков данных через весь код: от чтения данных (CSV, S3, база данных) через трансформации (pandas, Spark) до записи результатов. Межпроцедурный анализ прослеживает данные через цепочки вызовов в разных файлах и модулях. Это не замена Airflow/MLflow для отслеживания происхождения данных, а дополнение на уровне исходного кода — показывает, какой именно код обрабатывает данные на каждом этапе.
CodeGraph анализирует граф вызовов и находит недостижимый код: функции обучения, которые никто не вызывает, заброшенные этапы предобработки, неиспользуемые конструирование признаков модули. Многоуровневая фильтрация ложных срабатываний (V25–V29) сокращает шум: class-aware reachability, фильтр вложенных функций, исключение полностью мёртвых модулей. Результат: точный список кода, который можно безопасно удалить.
Нет. Статический анализ кода (парсинг, построение CPG, граф вызовов, анализ потоков данных) работает на CPU. GPU не требуется. LLM-компонент (ответы на вопросы о коде) может использовать GPU для локальных моделей, но также поддерживает облачные API (GigaChat, YandexGPT) без локального GPU.
ML-проекты часто используют Python + C/C++ (через ctypes, pybind11, Cython) или Python + Go (через CGO). GoCPG анализирует каждый язык и строит CPG. 11 языков поддерживаются нативно. Кросс-языковые зависимости видны через единый граф — можно проследить вызов от Python-обёртки до C-реализации.
Да. CodeGraph формирует доказательства соответствия: журнал аудита всех запросов, DLP-защита от утечки кода через LLM, RBAC с разделением прав. Для AI-систем, попадающих под требования 152-ФЗ (обработка ПДн) и ГОСТ Р 56939 (безопасная разработка), CodeGraph предоставляет верифицированные отчёты об уязвимостях с классификацией CWE.
Да. CodeGraph проектировался для больших кодовых баз. GoCPG обрабатывает моно-репозитории с миллионами строк кода. Инкрементальные обновления: после первого парсинга обновляются только изменённые файлы. DuckDB обеспечивает запросы за 2-3 мс даже на больших графах.
Разборы на Хабре для AI/ML-инженерии
Материалы для команд, которые хотят понять риски AI-кода, конвейеры данных и многоязычную ML-инфраструктуру до демо.
Почему граф кода важен, когда система растёт быстрее документации
Материал про потерю инженерного контекста полезен и для ML-команд: когда пайплайны растут быстрее документации, команда тоже начинает зависеть от отдельных экспертов.
Читать на ХабреВсе статьи автора по теме CodeGraph
Если хотите пройти по всей серии про CPG, кодовую аналитику и качество инженерной среды, откройте все статьи автора и выберите релевантный разбор.
Открыть серию на ХабреПоказать анализ AI/ML-кодовой базы и конвейера данных
Покажем, как CodeGraph разбирает ваш ML-стек: конвейер данных, завершённые эксперименты, многоязычные зависимости и проверку кода, созданного ИИ.
Обновлено: 7 апреля 2026