Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Предобученные веса и опыт без обучения

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

Репозитории моделей

МодельРепозиторий Hugging FaceНазначение в курсе
SmolVLADatawhale/every-embodied-smolvla-mujoco-pnpЗахват красной и синей кружки и баланс выборки
Pi0Datawhale/every-embodied-pi0-mujoco-pnpЗагрузка визуально-языковой модели действий, продолжение обучения и диагностика
ACTDatawhale/every-embodied-act-mujoco-pnpЛёгкое обучение, базовая замкнутая оценка и эксперименты DAgger

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

Загрузка

export MODEL_ROOT=${MODEL_ROOT:-$HOME/physical-ai/checkpoints}
mkdir -p "$MODEL_ROOT"

hf download Datawhale/every-embodied-smolvla-mujoco-pnp \
  weights/model.safetensors weights/config.json weights/train_config.json \
  --repo-type model --local-dir "$MODEL_ROOT/every-embodied-smolvla"

hf download Datawhale/every-embodied-pi0-mujoco-pnp \
  weights/model.safetensors weights/config.json weights/train_config.json \
  --repo-type model --local-dir "$MODEL_ROOT/every-embodied-pi0"

hf download Datawhale/every-embodied-act-mujoco-pnp \
  weights/model.safetensors weights/config.json \
  --repo-type model --local-dir "$MODEL_ROOT/every-embodied-act"

После загрузки убедитесь, что файл открывается через safetensors:

export POLICY_PATH="$MODEL_ROOT/every-embodied-smolvla/weights"
python - <<'PY'
from pathlib import Path
from safetensors import safe_open
import os

path = Path(os.environ["POLICY_PATH"]) / "model.safetensors"
with safe_open(path, framework="pt", device="cpu") as f:
    keys = list(f.keys())
print("tensor_count:", len(keys))
print("config_exists:", (path.parent / "config.json").is_file())
PY

Воспроизведение четырёх видов

Откройте 11_mujoco_closed_loop_deploy.ipynb и выполните ячейку «предпросмотр успеха без обучения». Она воспроизводит:

assets/pnp_four_view_strict_success.mp4

По этому видео изучаются фазы действия: подход, захват, подъём, перенос, освобождение и устойчивая укладка. Затем загружается модель, запускаются новые замкнутые эпизоды, а результаты записываются в собственный $RUN_ROOT.

Загрузка и оценка

На примере SmolVLA:

export POLICY_TYPE=smolvla
export POLICY_PATH="$MODEL_ROOT/every-embodied-smolvla/weights"
export EVAL_SEEDS=1000,1001,1002,1003
export OUTPUT_ROOT="$RUN_ROOT/zero_train/smolvla"
python code/run_closed_loop.py

Для Pi0 и ACT измените POLICY_TYPE на pi0 или act и укажите POLICY_PATH на каталог weights/ соответствующей модели.

После запуска проверьте:

$OUTPUT_ROOT/
├── results.jsonl
├── summary.json
└── videos/

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

Индекс результатов курса

МодельРезультат по фиксированному протоколуМатериалы
SmolVLA weighted500Красная 27/30, синяя 30/30, всего 57/60Сводка оценки, видео успеха и неудачи, Notebook 14
Pi0 protected clean40strict 12/14; unseen 9/10; hard 6/8Сводка оценки, видео диагностики, Notebook 15
ACT protected repair15strict 15/30Результаты по трём группам фиксированных random seed, Notebook 16

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

Продолжение обучения

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

base model: $MODEL_ROOT/every-embodied-<model>/weights
run output: $RUN_ROOT/<model>/<run_name>

Записывайте в конфигурацию обучения:

  • версию набора данных, число эпизодов и распределение задач;
  • ключи наблюдений, размерность состояния и действия;
  • частоту управления, длину блока действий и способ нормализации;
  • размер батча, скорость обучения, число шагов и интервал сохранения;
  • версии GPU, ROCm и фреймворка;
  • задачи оценки, random seed и условие физического успеха.

Рекомендации по хранению

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