NVIDIA показала агентный рабочий процесс для навигации роботов
NVIDIA описала рабочий процесс COMPASS, в котором ИИ-агент помогает обучать навигацию робота для разных сцен и воплощений. Разработчик задаёт робота, источник сцены, цель навигации и контрольные точки, а агент для программирования проверяет зависимости, готовит ресурсы, запускает дымовые тесты и обучение, диагностирует ошибки и сравнивает контрольные точки. В качестве примера используется Boston Dynamics Spot: рабочий процесс проходит путь от встроенного склада и сцен SAGE-10K до реконструкций Omniverse NuRec. Человек подтверждает принятие сцены, результаты теста в одной среде и продвижение модели.
Навигация превращает восприятие окружающего мира и движение в целенаправленное автономное поведение. Роботу нужно постоянно определять своё положение, интерпретировать меняющуюся обстановку, выбирать маршрут, обходить препятствия и безопасно добираться до цели.
Перенос такой способности на другого робота или в новую сцену требует новых данных, ресурсов симуляции, интерфейсов робота, обучения, диагностики и оценки. Повторять эту работу для каждой пары «робот — сцена» дорого и сложно воспроизводить.
Агентный рабочий процесс сокращает объём ручных действий. Разработчик указывает робота, источник сцены и навигационную цель. Агент для программирования использует навыки из репозитория, чтобы проверить зависимости, подготовить ресурсы, запустить дымовые тесты, начать обучение, найти причины сбоев и сравнить контрольные точки. На ключевых этапах остаются человеческие подтверждения: принятие сцены, тест в одной среде и продвижение контрольной точки.
В учебном примере Spot используется как эталонный робот. Агентный рабочий процесс COMPASS применяют к встроенной сцене и сцене SAGE-10K, а NVIDIA Omniverse NuRec показывает вариант работы с реконструированными окружениями. Рабочий процесс включает дымовое тестирование, остаточное обучение, оценку контрольных точек и подключение к рабочему времени робота, в том числе с необязательной одометрией.

Рисунок 2. Кодирующий агент вызывает навыки COMPASS, чтобы проверить окружение, подготовить сцену, выполнить дымовые тесты и остановиться на контрольных точках, требующих одобрения человека
Источник: developer.nvidia.com
Что такое COMPASS
COMPASS — это политика мобильности для разных воплощений на основе остаточного обучения с подкреплением и синтеза навыков. Это единая программная система для масштабируемого переноса мобильности между роботами, использующая экспертные демонстрации одного воплощения.
Система повторно использует навигационное поведение предварительно обученной политики NVIDIA X-Mobility. Затем для выбранных робота и среды обучается остаточный специалист — политика обучения с подкреплением, которая корректирует базовое действие вместо повторного обучения навигации с нуля. Позже данные нескольких специалистов можно дистиллировать в общую политику для разных воплощений.
Рисунок 1. COMPASS адаптирует базовую политику X-Mobility в специализированные политики для конкретных воплощений и дистиллирует их в политику для разных воплощений
Источник: developer.nvidia.com
Агентный рабочий процесс упакован в виде навыков репозитория COMPASS. В учебном примере для разработки используется Codex. После обучения политика и контроллер робота выполняют навигацию самостоятельно, без агента для программирования.
Эталонный рабочий процесс рассчитан на четвероногого Boston Dynamics Spot. Встроенный склад — основной воспроизводимый путь. SAGE-10K добавляет сгенерированные сцены, а NVIDIA Omniverse NuRec предлагает вариант для реконструированной целевой среды.
Если у робота нет совместимой одометрии и преобразований координат, при развёртывании можно использовать NVIDIA cuVSLAM. Это библиотека визуальной одометрии и одновременной локализации с построением карты, ускоренная средствами CUDA.
Для другой среды NVIDIA рекомендует использовать закреплённый в репозитории программный стек COMPASS и соответствующее оборудование.

Рисунок 3. Четвероногий робот Spot перемещается по зарегистрированному складу COMPASS combined_multi_rack
Источник: developer.nvidia.com
Подготовка репозитория
Сначала нужно подготовить репозиторий и задать агенту для программирования понятный контракт рабочего процесса до начала работы со сценой. На этом этапе скачиваются ресурсы с ограниченным доступом, навык COMPASS делается доступным для Codex, выполняются проверки стека, после чего процесс останавливается на этапе подтверждения для одной среды.
Все блоки `$compass` — это копируемые запросы для диалога Codex из корня репозитория COMPASS, а не команды оболочки. В Claude Code тот же процесс запускается командой `/compass`.
Для Codex сначала нужно открыть навыки репозитория через `.agents/skills`, а затем выбрать COMPASS командой `/skills` или упомянуть `$compass` в запросе. Codex поддерживает символические ссылки на каталоги навыков, поэтому текущий навык можно оставить в папке, где он сопровождается. В Claude Code используется тот же рабочий процесс через `/compass`.
Агент может клонировать репозиторий, собрать проект, скачать ресурсы без секретов и проверить программный стек. При этом разработчик самостоятельно принимает условия доступа к репозиториям и вводит токен Hugging Face вне диалога. Агент не должен запрашивать, показывать или сохранять этот токен в журналах.
Нужно клонировать репозиторий COMPASS и пройти краткий запуск из руководства COMPASS в контейнере, закреплённом репозиторием. До первого запуска следует запросить доступ к закрытым репозиториям Hugging Face `nvidia/COMPASS` и `nvidia/X-Mobility`, создать токен Hugging Face с правом чтения и проверить, что он открывает доступные аккаунту публичные репозитории с ограниченным доступом. Токен следует раскрывать только в текущей оболочке: его нельзя вставлять в запрос агента или добавлять в систему контроля версий.
На этапе подготовки ресурсов зарегистрированные ресурсы симуляции скачиваются в `./assets/usd/`, а предварительно обученная контрольная точка X-Mobility — в `./assets/x_mobility.ckpt`. Ответ 401 или 403 обычно означает, что доступ к репозиторию не настроен полностью или у токена недостаточный уровень разрешений. Сначала нужно исправить аутентификацию и только потом искать проблему в Isaac Lab.
Каждый этап должен оставлять проверяемые свидетельства перед переходом к следующему. Для любой контрольной точки нужно ответить на четыре вопроса: все ли необходимые входные данные присутствуют, появились ли ожидаемые результаты, остались ли нерешённые ошибки и достаточно ли доказательств для продолжения.
После запуска контейнера разработчик открывает агента в корне репозитория и описывает робота, сцену, ожидаемый результат навигации и этапы подтверждения. Для базового рабочего процесса в диалог агента передаётся запрос, который просит навык `$compass` сопоставить заданный сценарий с репозиторием и выполнить нужные проверки. Если запуск завершается ошибкой, `$compass-doctor` проводит проверку состояния только для чтения и сообщает вероятные причины, не изменяя окружение без разрешения.

Рисунок 4. Четвероногий робот Spot в преобразованной внутренней сцене SAGE-10K, подготовленной для валидации COMPASS
Источник: developer.nvidia.com
Выбор сцены
В COMPASS предусмотрены три источника сцен:
Для первой проверки рекомендуется зарегистрированный склад `combined_multi_rack`. Робот, сцена и карта занятости уже добавлены в систему, поэтому этот вариант подходит для проверки установки до перехода к новой сцене.
SAGE-10K содержит 10 000 сгенерированных сцен помещений 50 типов. Это набор сцен, а не политика и не симулятор. Для каждой сцены доступны геометрия, материалы, метаданные планировки и предварительный просмотр. Сцены гостиных и складов готовятся одинаково, поэтому скачивать весь набор не требуется: достаточно выбрать подходящий вариант.
Путь через SAGE-10K включает два человеческих подтверждения. Сначала в NVIDIA Isaac Sim нужно проверить преобразованный файл USD: геометрию, материалы, масштаб и сетки столкновений. После регистрации сцены и создания карты занятости требуется одобрить предварительный просмотр в одной среде перед полным обучением.
Карта занятости показывает свободное и заблокированное пространство. Она нужна для выбора допустимых начальных положений робота и целей навигации.
Рисунок 5. Codex отбирает совместимые сцены SAGE-10K и останавливается для одобрения разработчика
Источник: developer.nvidia.com
Omniverse NuRec используется, когда COMPASS нужно дообучить и оценить в реконструкции предполагаемой среды развёртывания. NuRec преобразует стереоскопические изображения RGB в реконструкцию, совместимую с Isaac Sim, с согласованной визуальной геометрией, сетками столкновений и возможностью дополнительно расширять сцену.
Документированный путь COMPASS для NuRec включает регистрацию отрисованной сцены, проверку предоставленной карты занятости и соглашения о начале координат, проверку зазоров для робота и дымовой тест в одной среде до начала обучения.
Для этого учебного материала NuRec остаётся необязательным вариантом. Практическая часть обучения продолжается на SAGE-10K, чтобы пройти путь одной сцены от подготовки до оценки. Для реконструированной среды предлагается использовать рабочий процесс COMPASS NuRec и руководство NVIDIA Isaac Sim NuRec, включая пример с гостиной. В них описаны подготовка сцены, обучение, оценка, экспорт и развёртывание в ROS 2.
После того как выбранная сцена стала доступна COMPASS, перед масштабированием обучения запускается предварительный просмотр в одной среде. Для SAGE-10K сначала нужно пройти визуальную проверку и подтверждение регистрации сцены.
В предварительном просмотре проверяется, что Isaac Sim запускается, сцена загружается, Spot появляется в допустимом месте, камера передаёт наблюдения, а робот реагирует на команды политики без столкновений с геометрией, падений и нерешённых ошибок симуляции.
Агент для программирования должен обобщить журналы предварительного просмотра и визуальные свидетельства, перечислить блокирующие проблемы и остановиться для решения разработчика. К остаточному обучению переходят после подтверждения, что сцена, робот, наблюдения и интерфейс действий работают вместе ожидаемым образом.

Рисунок 6. Политика NuRec Real2Sim (справа) перемещается вокруг стола к цели по сравнению с синтетической политикой (слева)
Источник: developer.nvidia.com
Остаточное обучение
COMPASS адаптирует предварительно обученную политику X-Mobility к выбранным роботу и сцене. После одобрения дымового теста в одной среде агент может запустить стандартный рабочий процесс остаточного обучения с подкреплением.
Пример использует Spot и встроенный склад. Если выбирается путь с созданной сценой, ключ среды нужно заменить на зарегистрированную сцену SAGE-10K.
Остаточное обучение может длиться долго. Агенту следует запускать его в постоянной сессии или через управляемый планировщик, сохранять журналы и контрольные точки в настроенный каталог результатов и сообщать о ходе процесса, не удерживая открытой интерактивную сессию.
До запуска нужно зафиксировать:
Если запуск прерван, необходимо убедиться, что последняя контрольная точка записана полностью, и проверить поддерживаемые варианты продолжения обучения.
Параметр `--num_envs` выбирают с учётом доступной памяти GPU. Для дымового теста используется только одна среда. Во время обучения нужно отслеживать компоненты награды, продвижение к цели, контакты и падения, завершения эпизодов, производительность и использование памяти GPU.
Контрольные точки сохраняются периодически. Оценивать их следует в одинаковых условиях, не считая лучшей автоматически последнюю итерацию. COMPASS поддерживает распределённое обучение на нескольких GPU для более крупных запусков. Продолжительность зависит от оборудования, сложности сцены, количества сред и критериев остановки.
При сбоях рекомендуется сначала использовать диагностический рабочий процесс COMPASS и только потом менять окружение или конфигурацию обучения. Ошибки аутентификации направляются на проверку доступа к Hugging Face, проблемы загрузки сцены и столкновений — на подготовку сцены, ошибки камеры или интерфейса действий — на этап дымового теста, а нехватка памяти — на настройку числа сред или многопроцессорного обучения на нескольких GPU.
Нужно сохранять конфигурацию обучения, команду запуска, ревизию репозитория, регистрацию сцены, карту занятости, свидетельства дымового теста, журналы, контрольные точки и манифест артефактов. Перед изменением зависимостей, ресурсов сцены, наград или параметров обучения требуется одобрение разработчика.

Рисунок 7. На этапе вывода политика COMPASS использует входные данные RGB, одометрию и точку цели, а также, опционально, данные карты и маршрута, чтобы выдавать команды линейной и угловой скорости для контроллера робота
Источник: developer.nvidia.com
Оценка контрольных точек
Следующий этап определяет, готова ли остаточная контрольная точка к продвижению. Базовую политику и кандидатов на основе остаточного обучения сравнивают в одинаковых условиях, а результаты размечают с учётом того, какие данные получены стандартной оценкой, а какие — дополнительным анализом.
Стандартная оценка COMPASS включает три показателя:
Дополнительные сведения — продвижение к цели, поведение при контактах, тайм-ауты и стабильность команд — нужно помечать как производный анализ или пользовательскую инструментализацию.
Контрольную точку продвигают только после того, как сопоставимые результаты проходят проектные требования по навигации и безопасности и разработчик одобряет упаковку модели.
Подключение к роботу
После завершения разработки обученная политика подключается к рабочему времени робота. Агент координирует разработку и проверку, но не управляет роботом во время выполнения.
Этап подготовки ресурсов COMPASS скачивает предварительно обученную контрольную точку X-Mobility для дымового теста и остаточного обучения. Обучение создаёт остаточную контрольную точку для выбранных робота и сцены. Экспорт и развёртывание упаковывают обученную политику для инференса; базовая и остаточная политики не превращаются в два компонента ROS 2, которые разработчик должен соединять вручную.
В эталонной интеграции ROS 2 компонент `compass_inference` получает изображения с передней камеры, навигационную цель или маршрут, а также скорость робота, рассчитанную по одометрии. Эти данные преобразуются во входы экспортированной политики.
Компонент публикует продольную линейную и угловую скорости в `/cmd_vel`. Рекуррентное состояние и предыдущее действие остаются внутренними данными реализации инференса и не являются внешними входами интеграции ROS.
Перед развёртыванием нужно проверить системы координат, частоты обновления, нормализацию, ограничения команд, поведение при остановке и контроллер физического робота.
cuVSLAM подходит для робота, которому требуется оценка состояния по камере в среде без GPS или с нестабильным GPS и у которого нет совместимой проверенной одометрии и преобразований. Одометрия cuVSLAM может использоваться навигатором COMPASS, но карта cuVSLAM не передаётся в навигационную политику как вход.
cuVSLAM не участвует в обучении политики COMPASS и не требует навыка агента. Его запускают как отдельный компонент ROS 2 с совместимыми версиями, подключают или перенаправляют его одометрию в `/chassis/odom`, добавляют необходимое преобразование `odom` в `base_link`, а затем проверяют калибровку, временные метки, имена топиков и соглашения о системах координат.
Для настройки и диагностики этого компонента во время разработки можно использовать необязательные навыки `$cuvslam-onboard` и `$cuvslam-troubleshoot`.
Если робот ещё не зарегистрирован, `$compass-newembodiment` проводит разработчика через настройку робота, регистрацию среды, сопоставление действий и визуальный дымовой тест в одной среде. Подключение нового воплощения — отдельная инженерная задача по сравнению с обучением специалиста для уже зарегистрированного робота, но в обоих случаях используются одинаковые проверки и подтверждения.
Учебный процесс завершается на оценке контрольной точки. Экспорт в ONNX, JIT или TensorRT, интеграция с ROS 2 и развёртывание на физическом оборудовании требуют отдельных проверок для конкретных робота и среды выполнения.
Качество сцены, продолжительность обучения и показатели контрольной точки зависят от воплощения, окружения, структуры награды и доступных вычислительных ресурсов. Поэтому в рабочем процессе не задаётся универсальный порог успеха.
Рекомендуемый порядок — начать с эталонного пути и затем менять по одному компоненту за раз.
Ежедневные новости об ИИ
Каждый день отбираем важные новости об ИИ, роботах и метавселенных и рассказываем главное — без хайпа и воды. Если хотите понимать, что происходит в ИИ раньше остальных, — подписывайтесь.
Только важное — каждый день
В Telegram