An open source AI model and interface for Earth.
Clay Model is licensed under the Apache. This applies to the source code as well as the trained model weights.
The Documentation is licensed under the CC-BY-4.0 license.
Launch into a JupyterLab environment on
Binder | SageMaker Studio Lab |
---|---|
The easiest way to install Clay Foundation Model is via pip:
pip install git+https://github.com/Clay-foundation/model.git
This will install the claymodel
package and all its dependencies. You can then import and use it in your Python code:
from claymodel.datamodule import ClayDataModule
from claymodel.module import ClayMAEModule
For development or advanced usage, you can set up the full development environment:
To help out with development, start by cloning this repo-url
git clone <repo-url>
cd model
Then we recommend using mamba to install the dependencies. A virtual environment will also be created with Python and JupyterLab installed.
mamba env create --file environment.yml
Note
The command above has been tested on Linux devices with CUDA GPUs.
Activate the virtual environment first.
mamba activate claymodel
Finally, double-check that the libraries have been installed.
mamba list
mamba activate claymodel
python -m ipykernel install --user --name claymodel # to install virtual env properly
jupyter kernelspec list --json # see if kernel is installed
jupyter lab &
The neural network model can be ran via LightningCLI v2.
Note
If you installed via pip, you'll need to clone the repository to access the trainer script and config files.
To check out the different options available, and look at the hyperparameter configurations, run:
python trainer.py --help
To quickly test the model on one batch in the validation set:
python trainer.py fit --model ClayMAEModule --data ClayDataModule --config configs/config.yaml --trainer.fast_dev_run=True
To train the model:
python trainer.py fit --model ClayMAEModule --data ClayDataModule --config configs/config.yaml
More options can be found using python trainer.py fit --help
, or at the
LightningCLI docs.
Our Documentation uses Jupyter Book.
Install it with:
pip install -U jupyter-book
Then build it with:
jupyter-book build docs/
You can preview the site locally with:
python -m http.server --directory _build/html
There is a GitHub Action on ./github/workflows/deploy-docs.yml
that builds the site and pushes it to GitHub Pages.