Главная/Блог/Гайд/Разработка приложений NVIDIA Holoscan с…
Гайд4 мин чтения · 20 августа 2026 г.

Разработка приложений NVIDIA Holoscan с помощью AI-агентов и CLI

Как инженеры и AI-кодинговые агенты совместно создают приложения для периферийных вычислений, используя Holoscan CLI, навыки (skills) и документацию HoloHub.

Разработка приложений NVIDIA Holoscan с помощью AI-агентов и CLI

В эпоху, когда искусственный интеллект проникает во все сферы разработки программного обеспечения, вопрос не в том, заменит ли AI инженеров, а в том, как эффективно выстроить симбиоз между человеческим опытом и машинной производительностью. Особое место в этом процессе занимают сложные системы реального времени, такие как NVIDIA Holoscan. Эта платформа предназначена для создания приложений на периферии сети (edge computing) — от медицинской визуализации до робототехники, где задержка и надежность критичны. В недавнем исследовании команда NVIDIA продемонстрировала, как можно использовать общие AI-кодинговые агенты для построения полноценного приложения сегментации эндоскопических инструментов, опираясь на те же инструменты, документацию и примеры, которые доступны обычному разработчику.

Этот процесс не был автоматизирован «в лоб». Вместо того чтобы полагаться на случайные генерации, инженеры задавали четкие цели и ограничения, а AI-агент выполнял итеративную разработку, тестирование и оптимизацию. Результатом стала не просто рабочая программа, а отлаженный конвейер с измеримой производительностью, низким временем отклика и возможностью воспроизведения результатов. Давайте разберем этот процесс детально, чтобы понять, как структурировать взаимодействие человека и машины при работе с такими сложными фреймворками, как Holoscan.

Схема рабочего процесса разработки с участием AI и инженера
Схема рабочего процесса разработки с участием AI и инженера

01Инструментарий: Holoscan, HoloHub и CLI

Чтобы понять контекст разработки, необходимо разобраться в экосистеме. NVIDIA Holoscan — это платформа для создания приложений ИИ в реальном времени на периферии. Она предоставляет набор операторов (operators) для обработки данных, управления потоками и интеграции моделей глубокого обучения. Однако разработка с нуля — задача трудоемкая. Здесь на помощь приходит HoloHub — репозиторий с примерами приложений и компонентов, демонстрирующий лучшие практики.

Ключевым связующим звеном между разработчиком, агентом и платформой является Holoscan CLI (Command Line Interface). Он вызывается через обертку ./holohub и предоставляет единый интерфейс для выполнения операций разработки. Агент может обнаруживать доступные операции через CLI, а инженер может проверять и повторять те же команды. Это обеспечивает прозрачность процесса: если агент что-то сделал, разработчик видит точную команду, которая привела к результату.

Кроме того, в процесс были интегрированы так называемые Skills (навыки). Это специализированные инструкции, которые направляют агента через процесс разработки HoloHub, например, holohub-app-lifecycle (жизненный цикл приложения) и holohub-debug-build-run (отладка, сборка и запуск). Эти навыки действуют как менторы, подсказывающие агенту правильную последовательность действий, что значительно снижает вероятность ошибок.

💡
Важно знать. Рабочий процесс является агностичным к конкретному агенту. В данном эксперименте использовался Codex с режимом GPT-5.6 sol max, но принципы применимы к другим моделям. Главное — наличие доступа к CLI, документации и примерам кода.

02Итерация 0: Декомпозиция цели

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

Глобальная цель в данном случае звучала так: создать приложение для сегментации эндоскопических инструментов в реальном времени с визуализацией масок, статистическим анализом и телеметрией. Эта цель была разбита на последовательность вопросов, ответы на которые должны были стать результатами каждой итерации:

  • Правильно ли настроена среда разработки для запуска существующего приложения локально?
  • Можно ли запустить существующую модель и видео в отдельном приложении?
  • Предоставляет ли визуализация осмысленную информацию?
  • Можно ли измерить задержку (latency) повторяемым способом?
  • Можно ли улучшить пропускную способность рендеринга без регрессии функционала?

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

Панель мониторинга сегментации эндоскопических инструментов
Панель мониторинга сегментации эндоскопических инструментов

03Итерация 1: Создание минимально жизнеспособного приложения (MVP)

На первом этапе инженер задал агенту четкий результат, ограничив использование модели и данных. Промпт звучал следующим образом: использовать $holohub-app-lifecycle для создания нового Python-приложения HoloHub для отображения отслеживания эндоскопических инструментов. Необходимо переиспользовать модель сегментации MONAI, образцы данных, предобработку и вывод. Визуализация должна включать маску, покрытие, временную шкалу и меры неопределенности в виде полированного оверлея HoloViz. Обучение модели или изменение ее весов запрещалось.

Агент начал с анализа доступных ресурсов. Он изучил документацию по жизненному циклу приложений, примеры из HoloHub (особенно полезными оказались примеры monai_endoscopic_tool_seg, endoscopy_tool_tracking и surgical_scene_recon), а также документацию CLI. Затем агент выполнил серию действий:

  1. Проанализировал паттерны эндоскопии, сегментации, HoloViz и тестирования.
  2. Запустил команду ./holohub create для генерации стандартного каркаса приложения.
  3. Реализовал граф приложения, режимы выполнения, тесты и документацию, используя существующие операторы Holoscan.
  4. Собрал и запустил приложение через Источник: NVIDIA Developer ↗