Рабочие процессы Notebook
Этот каталог разделяет каждую модель на два Notebook, которые можно запускать независимо:
- Обычное обучение: начинается с обычного набора данных и базовой модели, затем запускается замкнутая оценка.
- Защищённое обучение: воспроизводит рецепт обучения, который мы использовали для защищённых результатов, и запускает ту же замкнутую оценку.
Оба режима пишут в разные выходные каталоги и не перезаписывают друг друга: checkpoint, журналы, видео и результаты оценки хранятся раздельно. Цикл обучения внутри Notebook — реальные ячейки Python; длительное обучение показывает компактный индикатор прогресса, который обновляется каждые 100 шагов. Пошаговые метрики пишутся в notebook_train_metrics.jsonl, время начала, окончания и общая длительность каждого запуска, а также checkpoint — в training_run_summary.json; отдельная строка вывода на каждый шаг не создаётся.
Обычное обучение
| Модель | Notebook | Основное содержание |
|---|---|---|
| SmolVLA | 14_smolvla_end_to_end.ipynb | Базовое обучение, checkpoint, замкнутая оценка, видео |
| Pi0 | 15_pi0_end_to_end.ipynb | Базовое обучение, checkpoint, замкнутая оценка, видео |
| ACT | 16_act_end_to_end.ipynb | Базовое обучение, checkpoint, замкнутая оценка, видео |
Защищённое обучение
| Модель | Notebook | Основное содержание |
|---|---|---|
| SmolVLA | 14_smolvla_end_to_end.ipynb | Защищённый рецепт, защищённый checkpoint, официальная замкнутая оценка, видео |
| Pi0 | 15_pi0_end_to_end.ipynb | Рецепты clean/protected, защищённый checkpoint, официальная замкнутая оценка, видео |
| ACT | 16_act_end_to_end.ipynb | Рецепт repair15, защищённый checkpoint, официальная замкнутая оценка, видео |
Порядок выполнения
- Сначала по проверке устройства и окружения проверьте ROCm, PyTorch и переменные каталогов.
- По единому каталогу задайте
DATA_ROOT,MODEL_ROOTиRUN_ROOT. - При первом изучении запустите в обычном Notebook ячейки проверки окружения и короткого обучения.
- Когда данные, модель и устройство проверены, запускайте ячейки длительного обучения.
- После обучения выполните ячейки фиксированной протокольной оценки в конце Notebook и посмотрите успешность, статистику по этапам, видео и траектории действий этого запуска.
- Чтобы воспроизвести защищённые результаты, откройте защищённый Notebook отдельно и сохраните каталог обычного обучения.
На нескольких устройствах AMD используйте одинаковые версии Python, ROCm, PyTorch и LeRobot. Фактические версии записывайте в environment.txt каждого запуска и повторно проверяйте окружение при смене устройства.
Результаты каждого Notebook сохраняются в RUN_ROOT/notebooks/ordinary/<model> или RUN_ROOT/notebooks/protected/<model>. Ячейка оценки читает TRAINED_POLICY_PATH, созданный обучением этого же Notebook. Длительность обучения зависит от модели, числа шагов и GPU; индикатор прогресса обновляется периодически, подробные метрики — в JSONL и training_run_summary.json.
Фиксированная оценка на 14 эпизодах и визуализация
В обычной и защищённой версии каждой модели есть ячейка замкнутой оценки на 14 фиксированных эпизодах. После выполнения она:
- фактически запускает замкнутый цикл на 14 фиксированных seed и записывает полный
result.jsonl; - сохраняет видео первого физически успешного эпизода и первого неудачного;
- сохраняет траектории действий для этих двух эпизодов;
- воспроизводит видео успеха и неудачи в следующих ячейках и строит графики последовательностей действий;
- выводит итог в виде
physical_success=x/14.
Примеры видео и графики последовательностей получены в ходе этой оценки. Выбор режима отображения задаётся переменной RENDER_EVAL; если нет рабочего стола, Notebook попытается запустить Xvfb.