Installation
Requirements
Python 3.10.x exactly (
>=3.10,<3.11). MARLA checks this at CLI startup and refuses to run on any other version – seemarla.utils.python_version.NASimEmu, cloned alongside (or vendored inside) the MARLA repository.
marla initwill look for it automatically; see Quickstart.A CUDA-capable GPU if you plan to set
device: gpu– otherwisedevice: cpuordevice: auto(the default) both work on CPU alone, just slower for the recurrent PPO forward/backward passes.
Base install
From PyPI:
pip install marla-agents
The PyPI distribution is named marla-agents (PyPI’s anti-typosquat
check blocks new names within edit-distance 1 of an existing project, and
plain marla collides with two already-registered ones) – but this
only affects the pip install line above. Everything else keeps the
short name: import marla and the marla CLI command are unaffected.
This gets you the marla CLI (marla version, marla validate,
marla init) and everything needed to read an experiment or a
finished run’s metrics. It does not get you NASimEmu – see above –
so marla run still needs the separate NASimEmu install before it can
do anything.
From a repository clone, for development (editable install, plus the test suite):
pip install -e ".[dev]"
This installs MARLA itself (editable) plus the dev extra (pytest and
pytest-asyncio), which is enough to run the baseline variant (no
Gatekeeper, no Plan Maker) and the test suite.
Optional extras
local-lm– real local Plan Maker backendNeeded to actually run the assisted variant with
model.backend: local(a real Hugging Facetransformersmodel loaded and run on this machine):pip install -e ".[local-lm]"
This pulls in
transformersandaccelerate. Without it, constructing a local backend raises anImportErrorwith this exact install command (seemarla.models.local_backend).docs– build this documentationpip install -e ".[docs]" sphinx-build -b html docs docs/_build/html
See the repository’s
README.mdfor more on the project layout; this extra only affects building the docs themselves.
Verifying the install
marla version
marla --help
marla version prints MARLA’s own version plus the resolved versions of
its key dependencies (torch, torch_geometric, spade, pydantic, typer,
nasimemu) and the current git commit, if any – the same information
recorded in every run’s metadata.json (see Metrics and plots).