LeRobot v0.5.0 и Unitree G1: Установка, настройка, примеры кода | 2026 | AiManual
AiManual Logo Ai / Manual.
09 Мар 2026 Инструмент

LeRobot v0.5.0: полный гайд по установке и работе с гуманоидом Unitree G1

Подробный гайд по работе с LeRobot v0.5.0 для управления гуманоидом Unitree G1. Новые политики, Python 3.12, Transformers v5, интеграция с IsaacLab.

Когда библиотека для ИИ решила, что роботы должны ходить

LeRobot всегда был удобным способом заставить нейросеть смотреть на мир через камеру робота. Но в версии 0.5.0 команда Hugging Face явно перепила энергетиков. Они не просто добавили очередной датасет – они взяли и подключили полноценного гуманоида Unitree G1. Теперь ваши трансформеры могут не только предсказывать токены, но и отдавать команды на движение в 23 суставах полутораметрового робота. Звучит как начало плохого фанфика, а на деле это самый доступный способ залезть в гуманоидную робототехнику без докторской диссертации в кармане.

💡
Если вы пропустили предыдущую версию, в обзоре LeRobot v0.4.0 мы разбирали основы работы с библиотекой. Там не было гуманоидов, зато были манипуляторы и куча данных.

Что изменилось в пятой версии (кроме чувства собственной важности)

Ребята из Hugging Face не стали мелочиться. Поддержка G1 – это главная, но не единственная фича. Вот что еще приехало в обновлении:

  • Нативные политики для гуманоидов. Раньше LeRobot заточали под руки и колесные платформы. Теперь есть специальные архитектуры, которые понимают, что у робота есть две ноги и ему неловко падать.
  • Полная интеграция с Hugging Face Hub. Вы можете не только скачать модель, но и сразу запустить ее в симуляции IsaacLab (да, о нем позже) или на реальном железе. Это как Docker Hub, только для роботов.
  • Переход на Python 3.12 и Transformers v5.0. Все устаревшие костыли выкинули, API почистили. Код теперь выглядит… почти красиво.
  • Готовые конфиги для симуляции в IsaacLab. Тот самый фреймворк от Nvidia, про который мы писали в контексте Arena и Cosmos. Теперь не нужно неделю колдовать с настройками – скачал и запустил.

Внимание на дату: Все инструкции и версии библиотек актуальны на 09 марта 2026 года. Если вы читаете это в 2027-м, велика вероятность, что все сломалось. Проверяйте официальный репозиторий.

1Готовим среду: Python, CUDA и здравый смысл

Прежде чем робот пойдет, нужно подготовить поле. LeRobot v0.5.0 требует Python 3.12. Не 3.11, не 3.10 – именно двенадцатую версию. Если у вас ее нет – время обновляться. Также убедитесь, что у вас стоит свежий инструмент для управления пакетами – uv или poetry. Я буду использовать uv, потому что он быстрее и не заставляет меня медитировать над зависимостями.

# Устанавливаем uv, если еще нет
curl -LsSf https://astral.sh/uv/install.sh | sh

# Создаем виртуальное окружение и активируем
uv venv lerobot_env
source lerobot_env/bin/activate  # На Windows: lerobot_env\Scripts\activate

2Ставим LeRobot и танцуем с торрентами

Официальная установка через pip выглядит просто, но есть нюанс. Для работы с Unitree G1 нужны дополнительные пакеты для симуляции. Рекомендую ставить сразу с флагами для IsaacLab.

# Базовая установка LeRobot
pip install lerobot[g1]==0.5.0

# Дополнительно ставим Transformers v5.0 (если не встало автоматически)
pip install transformers==5.0.0

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

💡
Работа с реальным железом требует не только библиотек, но и аппаратного контроллера от Unitree. Если у вас нет самого робота G1, все примеры ниже можно запустить в симуляции. Для сборки собственного бюджетного робота есть отличный гайд на ROS2, но это совсем другая история.

Первые шаги: заставляем G1 пошевелиться

Допустим, у вас есть доступ к роботу (или запущена симуляция). Самый простой способ проверить связь – использовать готовый скрипт из примеров. Создайте файл test_g1.py.

from lerobot.robots import UnitreeG1
from lerobot.policies import G1WalkPolicy
import torch

# Инициализируем подключение к роботу
# Для симуляции используйте параметр simulation=True
robot = UnitreeG1(simulation=True, ip="localhost")

# Загружаем предобученную политику ходьбы
policy = G1WalkPolicy.from_pretrained("huggingface/g1-walk-base")

# Получаем начальное наблюдение (объект Observation)
obs = robot.get_observation()

# Генерируем действие (крутящие моменты для суставов)
action = policy(obs)

# Отправляем действие на робота
robot.step(action)

print("Робот сделал шаг. Если он упал – это нормально для первой итерации.")

Если все настроено правильно, вы увидите, как гуманоид в симуляторе попытается перенести вес. В реальной жизни этот момент волнителен – вы впервые дали команду сложной машине. И да, скорее всего, она упадет. Не переживайте, для этого и нужны симуляторы.

Чем LeRobot с G1 лучше или хуже других подходов?

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

ИнструментПлюсы для гуманоидовМинусы, которые бесят
LeRobot v0.5.0Готовые предобученные политики, глубокая интеграция с HF Hub, работа в один клик из Python.Жесткая привязка к экосистеме Hugging Face. Хотите кастомную низкоуровневую логику? Придется копать глубже.
ROS2 + контроллеры UnitreeПолный контроль над каждым сервом, совместимость с тысячами пакетов, отлаженная инфраструктура.Настроить стек для сложного поведения на ROS2 – это отдельный квест. Не для быстрых экспериментов.
Nvidia Isaac LabФотореалистичная симуляция, мощные инструменты для обучения с подкреплением, поддержка от Nvidia.Требует серьезных ресурсов (желательно GPU последнего поколения), сложная initial setup.

LeRobot не пытается заменить ROS2. Он решает другую задачу – дать исследователям и разработчикам ИИ максимально быстрый способ проверить гипотезу на реальном гуманоиде. Это как разница между написанием драйвера с нуля и вызовом высокоуровневой API функции.

Реальный пример: учим робота идти к объекту

Допустим, мы хотим, чтобы G1 подошел к стулу, который видит его камера. В LeRobot это собирается из готовых блоков. Вот упрощенная логика.

from lerobot.robots import UnitreeG1
from lerobot.policies import G1VLMPolicy
from transformers import AutoProcessor, VipLlavaForConditionalGeneration
import torch

# Инициализируем робота и модель VLM (Vision Language Model)
robot = UnitreeG1(simulation=True)
model = VipLlavaForConditionalGeneration.from_pretrained("llava-hf/vip-llava-7b-hf")
processor = AutoProcessor.from_pretrained("llava-hf/vip-llava-7b-hf")

# Получаем изображение с камеры робота
image = robot.get_camera_frame()

# Формируем промпт для модели
prompt = "USER:\n\nWhat is the object in front of me? Return only the object name.\nASSISTANT:"
inputs = processor(images=image, text=prompt, return_tensors="pt")

# Генерируем ответ
with torch.no_grad():
    output = model.generate(**inputs, max_new_tokens=20)
answer = processor.decode(output[0], skip_special_tokens=True)

print(f"Модель обнаружила: {answer}")

# Если это стул, запускаем политику движения к цели
if "chair" in answer.lower():
    policy = G1VLMPolicy.from_pretrained("huggingface/g1-vlm-nav")
    # Дальше можно в цикле отправлять действия, пока робот не дойдет
    # Это сильно упрощено, но общая схема понятна

Этот подход объединяет два горячих тренда: Vision-Language модели и робототехнику. Подобные эксперименты раньше требовали команд из 5 инженеров. Теперь можно попробовать в одиночку за вечер. Кстати, про связь VLM и роботов мы подробно писали в статье про Gemini Robotics 1.5.

Важный технический нюанс 2026 года: большинство современных VLM-моделей (та же VIP-LLaVA) оптимизированы под батчевую обработку. При работе в реальном времени с роботом вам придется играться с кэшированием внимания и динамическими размерами тензоров. Иначе задержка между кадром и действием будет неприлично большой.

Кому сейчас нужен LeRobot с Unitree G1?

Библиотека не для всех. Если вы системный инженер, которому нужно заставить робота работать 24/7 на заводе, вам прямая дорога в ROS2 и проверенные промышленные решения. LeRobot v0.5.0 создан для другой аудитории:

  • Исследователи в области ИИ и робототехники, которым нужно быстро протестировать новую архитектуру политик на сложном гуманоиде, не углубляясь в низкоуровневое программирование.
  • Разработчики образовательных курсов. Запустить симуляцию гуманоида с управлением через Python на паре – это круто и наглядно.
  • Энтузиасты, у которых случайно завалялся Unitree G1 (да, предположу, что такие люди читают этот текст). Для них это самый быстрый способ «оживить» железо.
  • Команды, которые экспериментируют с агентными ИИ, как в DeepBrainz-R1 или HomeGenie v2.0, но хотят перенести логику из цифрового мира в физический.

Главный подвох – цена самого робота. Unitree G1 в 2026 году стоит серьезных денег (информацию о точной стоимости лучше уточнять у официальных поставщиков, например, на сайте Unitree). Но для многих симулятора будет достаточно.

Что будет дальше? Спойлер: больше агентности

Судя по roadmap, который мелькает в Issues репозитория, команда LeRobot активно работает над интеграцией с автономными агентами. Мы уже видим это в зачатках с VLM-политиками. Очевидный следующий шаг – позволить роботу не просто идти к объекту, а получать сложные многошаговые инструкции на естественном языке («найди в комнате красную чашку, возьми ее и отнеси на кухню»). Это потребует связки с большими языковыми моделями, способными планировать.

Пока такие сценарии – удел лабораторий вроде Google DeepMind, но LeRobot может democratize этот процесс. Если в v0.6.0 добавят нативную поддержку агентных фреймворков, то управление гуманоидом через текстовый промпт станет рутиной для любого разработчика. Звучит как фантастика, но в 2026 году именно это и происходит.

Мой совет? Начните с симуляции. Поставьте LeRobot, запустите примеры, почувствуйте вкус. Потом, если захочется больше контроля, можно всегда спуститься на уровень ниже – в ROS2 или даже в прошивки контроллеров. Но первый шаг в мир гуманоидной робототехники теперь можно сделать за один вечер. И это чертовски круто.

Подписаться на канал