← Вернуться к списку

ИИ-агент обрастает руками и ногами: Strands + LeRobot связывают робототехнику — Natural Language напрямую управляет реальными машинами

itadol5j

ИИ-агент обрастает руками и ногами: Strands + LeRobot связывают робототехнику, Natural Language напрямую управляет реальными машинами

В чём главная проблема ИИ-агентов последних двух лет?

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

Сейчас этот разрыв начинает закрываться.

В экосистеме AWS открыт исходный код Strands Robots SDK, который оборачивает возможности Hugging Face LeRobot, симуляции MuJoCo, инференса политик, мультироботной mesh-сети Zenoh и другие в Strands AgentTools. Официальная формулировка предельно прямая: strands-robots gives a Strands Agent hands.

Если перевести на человеческий: у ИИ-агентов начали отрастать руки и ноги.

Что именно представили на этот раз

Проект называется strands-robots, код лежит в strands-labs/robots, пакет на PyPI тоже называется strands-robots. Его ключевая возможность — фабрика Robot(), превращающая симулированного или реального робота в инструмент, которым Strands-агент может пользоваться.

Минимальный пример очень показателен:

from strands import Agent
from strands_robots import Robot

robot = Robot(“so100”)
agent = Agent(tools=[robot])
agent(“Pick up the red cube”)

По умолчанию Robot(“so100”) запускает симуляцию MuJoCo — не нужны ни GPU, ни реальное железо. Чтобы переключиться на физического робота, нужно явно указать mode=”real”:

robot = Robot(“so100″, mode=”real”, port=”/dev/ttyACM0″)

Такой дизайн по умолчанию очень важен: сначала симуляция, потом реальная машина. Одна случайная фраза на естественном языке не приведёт в движение настоящие сервоприводы.

Что такое LeRobot: экосистема Hugging Face в мире робототехники

Чтобы понять Strands Robots, нужно сначала понять LeRobot.

LeRobot — это библиотека обучения реальных роботов от Hugging Face. Её цель — унифицировать модели, датасеты и инструменты робототехники в экосистеме PyTorch и снизить порог входа в робототехнику.

Официальная позиция ясна:

  • предоставлять модели, датасеты и инструменты для реальной робототехники
  • давать большему числу людей доступ к робототехническим датасетам и предобученным моделям
  • охватывать имитационное обучение, обучение с подкреплением, VLA-модели
  • поддерживать как реальное железо, так и симуляционные среды

Одна из важнейших вещей в LeRobot — формат LeRobotDataset. Он организует робототехнические данные — видео, состояния, действия — в стандартную структуру, обычно MP4 или изображения плюс Parquet. Благодаря этому данные можно загружать на Hugging Face Hub и переиспользовать в цепочках обучения, оценки и развертывания.

Иными словами, LeRobot даёт робототехническому обучению «фундамент из данных и моделей».

Но фундамент — это ещё не полный рабочий процесс. На практике нужно ещё разбираться с симуляцией, портами железа, камерами, калибровкой, инференсом политик, координацией нескольких роботов и аварийной остановкой. Именно этот слой и закрывает Strands Robots.

Strands Robots не заменяет, а упаковывает

ИИ-агент обрастает руками и ногами: Strands + LeRobot связывают робототехнику, Natural Language напрямую управляет реальными машинами

У многих, кто увидит Strands + LeRobot, первая реакция будет: не новый ли это робототехнический фреймворк?

Нет.

Это скорее слой-обёртка, превращающий робототехническую цепочку в инструменты, доступные агенту. LeRobot по-прежнему отвечает за большую часть данных, политик и аппаратных интерфейсов; MuJoCo — за симуляцию; GR00T, ACT, Pi0, SmolVLA, Diffusion — остаются источниками политик; Zenoh — за peer-to-peer mesh.

Ценность Strands Robots в том, что он сжимает все эти разрозненные компоненты в один рабочий процесс агента:

  • запись демонстрационных данных
  • запись в LeRobotDataset
  • загрузка или переиспользование данных Hugging Face Hub
  • запуск симуляции в MuJoCo
  • вызов локальных или удалённых политик
  • развертывание на реальных роботах
  • координация нескольких роботов через mesh
  • широковещательный E-STOP при необходимости

Раньше для этих шагов приходилось писать кучу клеевого кода. Теперь они могут стать AgentTools и управляться одним Strands-агентом.

Цепочка в одном предложении: от естественного языка к механическому движению

Официальная схема цепочки очень наглядна:

инструкция на естественном языке → Strands-агент → инструмент Robot → Policy Provider → Action Chunk → симуляция MuJoCo или реальное железо → обратный поток observations

Ключевой момент цепочки: агент не управляет моторами напрямую, а через policy provider генерирует action chunk, который затем исполняется симуляцией или железом.

Поддерживаемые источники политик включают:

  • NVIDIA GR00T
  • LeRobot ACT
  • Pi0 / Pi0.5
  • SmolVLA
  • Diffusion Policy
  • классические планировщики движения (motion planner)
  • MPC
  • скриптовые контроллеры (scripted controller)
  • политики-заглушки (mock policy)

Это значит, что Strands Robots не ставит на какую-то одну модель, а прячет разные политики за единым абстрактным интерфейсом. Сегодня вы можете проверить процесс на mock policy, завтра переключиться на локальную модель LeRobot, послезавтра подключить инференс-сервис GR00T.

Более 50 роботов, 8 больших категорий

Официально Strands Robots перечисляет более 50 роботов в 8 категориях:

  • манипуляторы: SO100, SO101, Koch, OMX, Panda, UR5e, xArm7 и другие
  • гуманоиды: Unitree G1, Unitree H1, Reachy2, Talos, Cassie и другие
  • мобильные роботы: Spot, Unitree Go2, Stretch, LeKiwi, EarthRover и другие
  • захватные руки (dexterous hands): Shadow Hand, Allegro Hand, Leap Hand, Robotiq 2F85 и другие
  • двурукие системы: ALOHA, bi_openarm, Trossen WXAI
  • летательные аппараты: Crazyflie, Skydio X2
  • эмоциональные/интерактивные роботы: Reachy Mini
  • мобильные манипуляционные роботы: Google Robot

Часть роботов может управляться на реальном железе через LeRobot: SO100, SO101, Koch, OMX, HopeJR, ALOHA, bi_openarm, Reachy2, Unitree G1, LeKiwi, EarthRover.

Что важнее: все роботы доступны в симуляции. Для разработчика это значит, что можно сначала дёшево прогнать процесс в симуляции и лишь потом решать, покупать ли железо.

Mesh-координация нескольких роботов + аварийная остановка

ИИ-агент обрастает руками и ногами: Strands + LeRobot связывают робототехнику, Natural Language напрямую управляет реальными машинами

Мультироботность и безопасность управления — вопросы, которые невозможно обойти, подключая агента к физическому миру.

В Strands Robots встроена mesh-сеть Zenoh. Каждый робот автоматически становится пиром: можно взаимодействовать с другим роботом через tell(), рассылать команды через broadcast() и экстренно останавливаться через E-STOP.

Mesh можно мостить в AWS IoT Core, а через плагин device-connect — разворачивать более продвинутые device-aware сети устройств.

Подход к безопасности тоже прописан чётко:

  • по умолчанию симуляция; переключение режима требует явного mode=”real”
  • три отдельных действия-инструмента: состояние, исполнение, остановка
  • E-STOP независим от обычного потока управления
  • перед реальными действиями — прерывание на подтверждение человеком

В промышленных сценариях это не опциональные настройки. Убери хоть одну — возможна авария.

Терминологическое уточнение: кто это сделал

Интеграцию открыла AWS (Apache 2.0), публикация вышла в блоге hugggingface.co. Strands — это опенсорсный Agent SDK от AWS (Apache 2.0) с поддержкой Python и TypeScript и полноценным агентским фреймворком. LeRobot — проект Hugging Face. Их пересечение — это и есть strands-robots.

Как начать

Если хотите просто попробовать симуляцию, начните с extra MuJoCo:

uv pip install “strands-robots[sim-mujoco]”

Если нужно реальное железо и локальные политики LeRobot:

uv pip install “strands-robots[sim-mujoco,lerobot]”

Если хотите поставить всё сразу:

uv pip install “strands-robots[all]”

Базовая установка лёгкая: только numpy, opencv-headless, Pillow и тому подобное. Разные возможности ставятся отдельными extra: sim-mujoco — для симуляции, lerobot — для реального железа и локальных политик, groot-service — для инференса NVIDIA GR00T, mesh — для мультироботной сети Zenoh, mesh-iot — для сценариев с AWS IoT Core fleet.

Такое разделение довольно прагматично: зависимости не валятся на вас все разом.

Не переоценивайте: это не «embodied-интеллект в один клик»

ИИ-агент обрастает руками и ногами: Strands + LeRobot связывают робототехнику, Natural Language напрямую управляет реальными машинами

Здесь нужно вылить ведро холодной воды.

Strands Robots — это круто, но не кнопка, превращающая ИИ в робототехника.

С реальным железом всё ещё придётся столкнуться с:

  • определением портов
  • связью с сервоприводами
  • настройкой камер
  • калибровкой манипуляторов
  • согласованием схем данных
  • доступностью чекпоинтов
  • GPU / Docker / инференс-сервисы
  • разрывом sim2real между симуляцией и реальностью
  • границами безопасности мультироботных систем

Например, локальному инференсу GR00T могут понадобиться NVIDIA GPU, Docker, чекпоинты и правильная конфигурация данных. А физический SO-101 не начнёт сам ловить красный кубик от одного mode=”real” — всё ещё нужны камера, калибровка, политика и безопасная среда.

Настоящая ценность: меньше клеевого кода

Главное в этом релизе — не внезапный скачок возможностей моделей, а то, что инженерная цепочка наконец-то сомкнулась.

Самая больная точка разработки роботов обычно не научные статьи, а то, что системы не разговаривают друг с другом:

  • формат датасетов — один
  • скрипты симуляции — одни
  • управление реальным железом — своё
  • инференс политик — своё
  • связь между роботами — своё
  • и безопасная остановка — опять своё

Strands Robots сводит всё это в AgentTools.

Это очень практично и для исследовательских, и для стартап-команд. Можно сначала гонять симуляцию SO100 на локальном ноутбуке — без железа, без GPU, без прав на Hub; а после отладки процесса постепенно подключать реальный SO101, GR00T, чекпоинты Hugging Face и мультироботный mesh.

Бюджет и риски высвобождаются поэтапно, а не давятся разом в первый же день — железо, данные, обучение, деплой.

Почему это важно для агентов

Инструменты агентов раньше были в основном цифровыми: файлы, браузер, базы данных, API, терминал, интерпретатор кода.

Strands Robots выталкивает границу инструментов в физический мир: роботы, камеры, сервоприводы, симуляционные среды, политики действий, межмашинная связь.

Это значит, что спектр возможностей агентов начинает расширяться от «обработки информации» к «физическому исполнению».

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

Отношения с ROS

ИИ-агент обрастает руками и ногами: Strands + LeRobot связывают робототехнику, Natural Language напрямую управляет реальными машинами

Кто-то спросит: это попытка заменить ROS?

В краткосрочной перспективе — нет. ROS — проверенный фундамент робототехнических систем: узлы, топики, сервисы, launch-файлы, экосистема драйверов очень глубоки. Strands Robots — скорее слой оркестрации агентов, ориентированный на «организацию робототехнических задач большой моделью через интерфейс инструментов».

Более вероятная картина будущего: на нижнем уровне по-прежнему ROS, вендорские SDK и контроллеры для железа и сложных робототехнических систем, а агентский уровень через инструменты вроде Strands Robots связывает планирование задач, вызов политик, запись данных, валидацию в симуляции и координацию роботов.

То есть он не отбирает шасси, а забирает вход в верхнеуровневый рабочий процесс.

Итоги

Настоящий смысл связки Strands + LeRobot не в том, что одна фраза делает манипулятор умным, а в том, что у ИИ-агентов появляется стандартный интерфейс инструментов в физический мир.

LeRobot даёт данные, модели и аппаратные интерфейсы для обучения роботов; MuJoCo — безопасную симуляцию; GR00T, ACT, Pi0, SmolVLA, Diffusion — политики; Zenoh mesh — связь между роботами; Strands Robots упаковывает всё это в AgentTools.

В этом его ценность: не революция в один клик, а минус целая гора клеевого кода.

Раньше у ИИ-агентов были мозги и рот — теперь отрастают руки и ноги.

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

И это самый честный шаг embodied-интеллекта от презентаций к лабораторному столу.