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


license: cc-by-nc-sa-4.0 base_model: InternRobotics/InternVLA-N1-DualVLN tags:

  • robotics
  • navigation
  • vlnverse
  • research-artifact

Адаптер InternVLA для грубых инструкций VLNVerse: архив эксперимента от 22.06.2026

Этот пакет содержит приращения обучаемых параметров, полученные при обучении, в основном ориентированном на грубые инструкции; он предназначен для воспроизведения обучения и диагностики деградации. Это не итоговая призовая модель и не модель, соответствующая результату 48.7% по подробным инструкциям в zero-shot.

Исходная модель: InternRobotics/InternVLA-N1-DualVLN. Данные обучения взяты из VLNVerse. Пакет подготовлен командой Datawhale в рамках совместного экспериментального архива; сохранены требования к атрибуции, некоммерческому использованию и распространению на тех же условиях для исходной модели и данных.

Условия обучения

8 карт H100; 3 000 шагов оптимизатора; эффективный размер батча 64; скорость обучения 1e-5; для грубых инструкций к обучающим данным добавлено 30% обучающих данных подробных инструкций; языковой блок заморожен. 615 обучаемых тензоров, около 680,9 млн параметров. Параметры охватывают слой слияния зрения, выходную голову языка и модули двухсистемной архитектуры; это не только обучение малых низкоранговых матриц.

Записи оценки

На тех же 10 проверочных грубых инструкциях исходная модель имеет успешность 20%, этот пакет — 40%. При плане расширить до 50 инструкций прогон остановился после 12 завершённых из-за низкого качества; успешна 1, то есть 8.33%. На 10 подробных инструкциях успешность 30%, для исходной модели в официальной цепочке — 70%. Локальные проверки не доказывают общего выигрыша при обобщении.

Файлы и загрузка

trainable_params.bin — словарь тензоров приращений; он не содержит всех замороженных базовых весов. Хеш файла:

ea9201197c3150317efefd703bbf749c11a42ea3164b0a5589f41a13813d6990

Веса хранятся фрагментами по 32 МиБ в каталоге weights/; хеши каждого фрагмента и итогового файла записаны в weight_manifest.json. После загрузки репозитория выполните следующую команду, она восстановит файл приращений, побайтно совпадающий с оригиналом; для неё нужно около 1.36 ГБ свободного места, а целевого файла заранее быть не должно:

python code/restore_adapter.py /path/to/downloaded-repository

Сначала загрузите исходную модель, затем перезапишите приращения. В интеграции соревнования model_path указывает на базовую модель, trainable_params_path — на файл приращений. Вызов должен использовать реализацию адаптера, которая поддерживает этот параметр. Имена тензоров перечислены в trainable_params.txt. Отсутствие замороженных параметров — ожидаемое поведение, а лишние ключи нужно проверять по одному.

Схематичный пример загрузки на уровне API; предварительно установите официальный InternNav и импортируйте его классы модели:

model = InternVLAN1ForCausalLM.from_pretrained(base_model_path)
delta = torch.load(adapter_path, map_location="cpu", weights_only=True)
load_result = model.load_state_dict(delta, strict=False)
print(load_result.unexpected_keys)

Сжатый пакет результатов соревнования не является выходом этих весов, и их нельзя подменять друг другом. Учебный материал и разбор — в Every Embodied.

В этом репозитории можно прочитать опыт участия в соревновании и построчную сводку оценок.