> ## Documentation Index
> Fetch the complete documentation index at: https://avala.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Экспорты

> Импорт наборов данных LeRobot в Avala, экспорт наборов данных Avala в LeRobot и содержимое каждого релиза обучения на опыте флота

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

## Что входит в каждый релиз

Каждый релиз в программе обучения на опыте флота включает:

| Элемент | Содержание |
| - | - |
| Релиз набора данных | Версионированный набор данных Avala с урегулированными правами. Линии обучения и линия сбоев и восстановления поставляются как срезы. |
| Метки результата | Текущая [метка результата](/docs/ru/fleet-learning/sequence-metadata.md) каждой последовательности, доступная через API, SDK, CLI и MCP-сервер. |
| Экспорт LeRobot | Релиз в формате LeRobot v3, с метками результата в `meta/avala_sequence_outcomes.jsonl`. |
| Отчёт о покрытии | [Отчёт о покрытии](/docs/ru/fleet-learning/coverage.md) для поставки. |
| Отчёт о возможностях | Последний [отчёт о возможностях](/docs/ru/fleet-learning/evaluation.md), если проводилась оценка. |

Avala готовит экспорт LeRobot в рамках программы. Обучение запускаете вы.

## Импорт набора данных LeRobot

Импортёр LeRobot читает набор данных LeRobot из Hugging Face Hub или локальной директории. Он создаёт набор данных MCAP в Avala.

* Каждый эпизод LeRobot становится одним файлом `.mcap`, который Avala принимает как один элемент. Эпизод LeRobot соответствует последовательности Avala.
* Потоки камер записываются как `foxglove.CompressedImage`, поэтому они отображаются в просмотрщике Mission Control.
* Проприоцепция (`observation.state`, `action` и другие одномерные числовые признаки) записывается как сообщения `google.protobuf.Struct`. Значения сохраняются и читаются как сырые сообщения.
* Все остальные покадровые столбцы (награды, `episode_uuid`, `failure_type` и другие текстовые столбцы) сохраняются, каждый в своём топике. Столбец `control_source` (`policy`, `teleop`, `intervention`, `hold`) записывается в `/lerobot/control_source`.

Импортёр работает с API наборов данных LeRobot v2.1 и v3. Ему нужно дополнение `lerobot`, для которого требуется Python 3.12 или новее. Для наборов данных LeRobot v3 также работает читатель без torch на Python 3.9 и новее: `pip install "avala[lerobot-core-video]"`.

```bash theme={null}
pip install "avala[lerobot]"
```

```bash CLI theme={null}
avala import lerobot \
  --repo-id your-hf-user/your-dataset \
  --name "Teleop rollouts" \
  --slug teleop-rollouts \
  --episodes 0,1,2 \
  --wait
```

```python Python theme={null}
from avala import Client
from avala.importers import import_lerobot

dataset = import_lerobot(
    Client(),
    repo_id="your-hf-user/your-dataset",
    name="Teleop rollouts",
    slug="teleop-rollouts",
    episodes=[0, 1, 2],
    wait=True,
)
print(dataset.uid, dataset.item_count)
```

| Параметр CLI | Назначение |
| - | - |
| `--repo-id` | Идентификатор набора данных в Hugging Face Hub. |
| `--root` | Локальная директория набора данных LeRobot, вместо `--repo-id` или вместе с ним. |
| `--name`, `--slug` | Имя и slug нового набора данных Avala (обязательно). |
| `--episodes` | Индексы эпизодов LeRobot для импорта через запятую. По умолчанию: все. |
| `--camera-keys` | Ключи признаков камер через запятую. По умолчанию: все камеры. |
| `--fps` | Переопределяет частоту кадров набора данных. |
| `--owner` | Имя пользователя или email владельца набора данных. |
| `--workers` | Число параллельных потоков загрузки. По умолчанию: 8. |
| `--wait` / `--no-wait` | Ждать завершения индексации. По умолчанию: не ждать. |

Передайте `repo_id`, `root` или оба. В Python `state_keys` выбирает числовые признаки, которые нужно сохранить. По умолчанию это `observation.state` и `action`.

## Экспорт набора данных Avala в LeRobot

Вы также можете сами конвертировать любой набор данных последовательностей Avala в LeRobot v3. Одна последовательность Avala становится одним эпизодом LeRobot.

```bash theme={null}
avala lerobot export your-org/your-dataset \
  --repo-id your-hf-user/your-dataset \
  --output ./lerobot-out \
  --fps 30 \
  --task "load the dishwasher" \
  --include-outcomes
```

`--include-outcomes` записывает текущую метку результата каждой последовательности в `meta/avala_sequence_outcomes.jsonl`, по одной строке на эпизод LeRobot. В Python передайте `include_outcomes=True`. Формат файла описан в разделе «Экспорт меток результата вместе с LeRobot» на странице [Схема метаданных последовательности](/docs/ru/fleet-learning/sequence-metadata.md).

Добавьте `--state-key` и `--action-key`, когда исходные кадры содержат проприоцепцию. Полный список параметров и Python API приведены в разделе [Avala + LeRobot](/docs/resources/frameworks/lerobot.md).

## Использование меток результата при обучении

Метки результата сопровождают экспорт LeRobot. Типичные сценарии:

* Задавайте вес последовательностям или отбирайте их по `outcome`, `progress`, `quality` и `speed`.
* Обучайте политики с языковым условием на строках `label` подзадач и строках `action` действий рук.
* Разбивайте данные по [группам утечки](/docs/ru/fleet-learning/sequence-metadata.md), когда строите собственные валидационные наборы.
* Исключайте последовательности, у которых `evaluation_membership` равен `held_out_eval`, из обучения, когда объединяете данные из других источников. Релизы никогда их не включают.

Техническая валидность в экспорт не входит. Avala проверяет и принимает последовательности до того, как они попадают в релиз. См. раздел «Техническая валидность» на странице [Схема метаданных последовательности](/docs/ru/fleet-learning/sequence-metadata.md).
