Installation#

First: Get the code#

Clone the repository:

git clone https://github.com/ELeeAstro/Exo_Skryer.git

Change into the repository directory:

cd Exo_Skryer

Note

JAX and GPU support: Exo_Skryer installs jax automatically, but GPU/Metal acceleration requires a platform-specific JAX install (CUDA on Linux/Windows, Metal on macOS). For GPU support, install JAX with the appropriate backend before installing Exo_Skryer, following the JAX installation guide.

GPU Installation (NVIDIA/CUDA)#

GPU support requires Linux with an NVIDIA GPU (SM ≥ 7.5, i.e. Turing or newer) and NVIDIA driver ≥ 580. GPU JAX wheels are not available for macOS or Windows.

Option 1 — pip (GPU extra)

Install the gpu optional dependency group, which pulls in jax[cuda13] including the CUDA runtime:

python -m pip install -e ".[gpu]"

Verify that JAX sees your GPU:

python -c "import jax; print(jax.devices())"

You should see a CudaDevice listed alongside the CPU device.

Option 2 — conda (recommended for HPC clusters)

A ready-made conda environment file is provided that installs the CUDA-enabled jaxlib from conda-forge and then installs Exo_Skryer via pip:

conda env create -f environment_gpu.yml
conda activate exo_skryer_gpu

Note

The JAX team recommends jax[cuda13] (CUDA 13, cuDNN ≥ 9.8) and plans to drop CUDA 12 support in a future release. See the JAX installation guide for the latest requirements.

Install via pip (coming soon)#

Once exo_skryer is available on PyPI, you will be able to install it with:

python -m pip install exo_skryer

Verify installation#

Check that the package imports correctly:

python -c "import exo_skryer; print('exo_skryer import ok')"

Building the docs#

For local use and browsing of the documentation, the easiest method is via tox from the repository root.

Install tox:

python -m pip install tox

Build the docs:

tox -e build-docs

The built HTML documentation will be in:

  • docs/_build/html/index.html

Running the web app (config generator)#

The web interface is a Streamlit app in web_interface/. It generates retrieval YAML configuration files.

Navigate to the web interface directory:

cd web_interface

Install the app dependencies:

python -m pip install -r requirements.txt

Start the app:

streamlit run app.py

Streamlit will print a local URL (typically http://localhost:8501).

Next steps#

See Getting started for next steps, and running a test retrieval model!