Повторное подключение
Сохраните доступ через явную кнопку в UI и импортируйте файл после рестарта. Он содержит bearer-секреты: не публикуйте его и не добавляйте в dataset.
Установите reference-зависимости, исполните готовый сценарий и посмотрите, что агент сделал, сколько ресурсов потратил и какие заявки действительно закрыл.
Команды ниже выполняются в корне репозитория space-env после его получения из канала распространения проекта. Python ≥ 3.10. Extra reference добавляет SciPy и PyERFA; для multi-agent адаптера потребуется PettingZoo.
python -m venv .venv
source .venv/bin/activate
python -m pip install -e '.[reference,marl,coverage]'Windows: активация окружения выполняется через .venv\Scripts\activate. Для необязательных отраслевых интеграций существуют отдельные extras; установка integration-пакета сама по себе не включает его во все reference-сценарии.
Готовый пример строит три аппарата и две заявки: съёмка, onboard processing, межспутниковая передача и наземное подтверждение. Проверяет совместимость native SDK, Gym, tools и CLI-плана. Это синтетическая инженерная миссия, не запись реального полёта.
python examples/agent_task/demo.py /tmp/task-demo nominal
python examples/agent_task/demo.py /tmp/task-reroute reroute
python examples/agent_task/demo.py /tmp/task-loss loss
python examples/agent_task/demo.py /tmp/task-ttl ttlNominal / reroute / ACK-loss: 2/2 заявки.
TTL: 1/2 — намеренно отрицательный сценарий.
В output-директории появятся scenario/task/plan, промежуточные checkpoints, итоговый episode и RL/SFT JSONL. Полный episode — privileged trainer artifact: его нельзя передавать политике вместо observation.
Следующий пример читает файлы, созданные предыдущей командой. Baseline получает только causal PlanningInput; окончательный допуск и продвижение времени выполняет TaskSession.
import json
from pathlib import Path
from space_env.tasks import TaskSession
from space_env.planning import BaselinePolicy, make_input
root = Path('/tmp/task-demo')
scenario = json.loads((root / 'scenario.json').read_text())
task = json.loads((root / 'task.json').read_text())
session = TaskSession(scenario, task)
policy = BaselinePolicy({'name': 'route_aware_rolling'})
decision = policy.decide(make_input(session))
transition = session.step(
choices={'@central': decision['action_ids']},
expected_revision=session.revision,
idempotency_key='first-decision',
)
print(transition['feedback'])Для Gymnasium создайте MissionTaskEnv(scenario, task). Его action space определяется каталогом задачи. Случайное sampling без корректного использования masks не гарантирует допустимый совместный batch. Готовый demo показывает соответствие между action IDs и числовыми индексами.
space-env task-replay /tmp/task-demo/episode.json
space-env task-export /tmp/task-demo/episode.json \
/tmp/task-demo/verified-sft.jsonl --format sft
# Новый atomic RL/SFT bundle из отдельного примера:
python examples/scaling/verified_export.py /tmp/verified-bundleДля bundle выберите ещё не существующую output-директорию. Replay проверяет guarded native execution; source/dependency mismatch не обходится ради получения данных. SFT-примеры сохраняют provenance teacher, а не автоматически получают статус экспертных.
python examples/planning/demo.py /tmp/planning nominal
python examples/planning/benchmark_demo.py /tmp/planning-benchmark
space-env planning-verify-evaluation \
/tmp/planning-benchmark/evaluation.jsonBenchmark-demo намеренно включает недостижимый кейс: teacher gates могут завершиться неуспехом при корректном исполнении и replay. Не смешивайте «сценарий выполнился» и «политика пригодна как teacher».
python -m space_env.api.server
# Затем откройте http://127.0.0.1:8766/operatorСтатический сайт, который вы сейчас читаете, не исполняет Python backend. Mission Control запускается отдельно на вашей машине. Его 3D/2D-проекции показывают текущую native-навигацию и уже наблюдённые трассы; будущие орбиты по этим линиям не прогнозируются.
Сохраните доступ через явную кнопку в UI и импортируйте файл после рестарта. Он содержит bearer-секреты: не публикуйте его и не добавляйте в dataset.
Secret-free checkpoint, наблюдённые кадры и controller history. Импорт проверяет replay и создаёт новый ID и capabilities.
По умолчанию .space-env/operator.sqlite3; путь меняется через SPACE_ENV_OPERATOR_DB. Подтверждение мутации выдаётся после commit.
Локальный OS-owner recovery доступен через python -m space_env.api.operator_recovery. Это ротация credentials и control epoch, а не публичный HTTP-сброс доступа. Порядок и ограничения описаны в контракте.
До 8 живых сессий, 16 аппаратов и 256 решений/шаблонов; до 257 навигационных кадров, 8 МиБ HTTP input. Эти ограничения пульта нельзя трактовать как общие максимумы всей библиотеки.
Ниже — локальные копии контрактов реализации на срезе v0.134.0. Они поставляются вместе с сайтом: ссылки работают и при размещении в подпапке. Формат — Markdown; браузер может показать исходный текст или предложить скачать файл.
Текущая основа уже позволяет строить и исполнять разнообразные инженерные задачи. Следующие направления — отдельные работы, а не скрытые обещания существующих возможностей.
Эталонные инструменты, реальные ряды, аппаратная калибровка и измеренные границы погрешности.
Квалификация latency, throughput, памяти, рестарта и replay на зафиксированных сценариях и оборудовании.
Streaming artifacts, event cursors, retention/backup, worker lifecycle, квоты, мониторинг и многоарендное развёртывание.
Зафиксированные splits, baseline/learned policies, OOD-задачи и пилотные сценарии с независимой оценкой.
Нет. Это настраиваемый набор инженерных профилей. Реалистичность конкретного аппарата зависит от выбранных механик, введённых параметров и их независимой проверки. Произвольная высокоточная модель всей космической техники не заявляется.
Да: structured TaskTools, Gymnasium и optional PettingZoo используют task-runtime. Поддерживаются RL/SFT-экспорты. Интеграцию конкретного training stack, LLM и quality gates нужно настроить под задачу.
Baseline-слой использует causal PlanningInput. Route-aware rolling рассматривает текущие совместимые действия с bounded search; не является глобальным оптимизатором всей будущей миссии.
Outage, потеря ACK, исчерпание памяти и TTL — часть задачи. Отбрасывание всех неуспешных эпизодов меняет распределение и может научить политику работать только в лёгких условиях.
Нет. Этот сайт — описание проекта и учебная визуализация. Даже локальный Mission Control управляет моделируемой миссией, а не реальным полётом.
Нет. Для такого утверждения нужен независимый сравнительный benchmark с одинаковыми сценариями, допусками, ресурсами и метриками. Здесь публикуются конкретные механики, контракты и внутренние результаты проверки.