Clay Foundation Model

Clay is a foundational model of Earth using a vision transformer architecture adapted to understand geospatial and temporal relations on Earth Observation data.
https://github.com/clay-foundation/model

Category: Sustainable Development
Sub Category: Data Catalogs and Interfaces

Keywords

digital-elevation-model earth-observation embeddings foundation-model sentinel-1 sentinel-2

Keywords from Contributors

pangeo gdal stac openscience open-science nasa-api cmr cloud-computing climate-data access

Last synced: about 18 hours ago
JSON representation

Repository metadata

The Clay Foundation Model - An open source AI model and interface for Earth

README.md

Clay Foundation Model

Jupyter Book Badge
Deploy Book Status

An open source AI model and interface for Earth.

License

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.

Quickstart

Launch into a JupyterLab environment on

Binder SageMaker Studio Lab
Binder Open in SageMaker Studio Lab

Installation

Basic

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

Usage

Running jupyter lab

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 &

Running the model

The neural network model can be ran via
LightningCLI v2.
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.

Contributing

Writing documentation

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.


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 2 days ago

Total Commits: 126
Total Committers: 20
Avg Commits per committer: 6.3
Development Distribution Score (DDS): 0.714

Commits in past year: 31
Committers in past year: 14
Avg Commits per committer in past year: 2.214
Development Distribution Score (DDS) in past year: 0.677

Name Email Commits
Daniel Wiesmann y****p 36
Wei Ji 2****4 36
Bruno Sánchez-Andrade Nuño b****n@g****m 16
Soumya Ranjan Mohanty v****2@g****m 11
Lilly Thomas l****y@d****g 8
pre-commit-ci[bot] 6****] 4
Maxime Lenormand 4****d 2
SRM s****a@d****g 1
Aimee Barciauskas a****e@d****g 1
Bill Morris b****l@b****o 1
Brayden Zhang 6****g 1
Chuck Daniels c****4@g****m 1
Dan Bonomo d****o@g****m 1
Ferdinand Schenck f****k@g****m 1
Jonas 5****r 1
Kevin Booth k****n@k****g 1
Michele Claus 3****e 1
Ryan Avery r****y@g****m 1
Tyler Erickson t****n@g****m 1
kelseyjosund 5****d 1

Committer domains:


Issue and Pull Request metadata

Last synced: 2 days ago

Total issues: 163
Total pull requests: 199
Average time to close issues: 2 months
Average time to close pull requests: 15 days
Total issue authors: 31
Total pull request authors: 24
Average comments per issue: 2.65
Average comments per pull request: 0.83
Merged pull request: 146
Bot issues: 0
Bot pull requests: 5

Past year issues: 34
Past year pull requests: 50
Past year average time to close issues: about 2 months
Past year average time to close pull requests: 6 days
Past year issue authors: 20
Past year pull request authors: 17
Past year average comments per issue: 2.79
Past year average comments per pull request: 0.56
Past year merged pull request: 32
Past year bot issues: 0
Past year bot pull requests: 3

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/clay-foundation/model

Top Issue Authors

  • brunosan (60)
  • yellowcap (48)
  • weiji14 (11)
  • lillythomas (8)
  • robmarkcole (4)
  • MaxLenormand (3)
  • mikeskaug (2)
  • MaceGrim (2)
  • jacobbieker (2)
  • rbavery (2)
  • mattpaul (1)
  • ritwikvashistha (1)
  • mmarks13 (1)
  • bgheneti (1)
  • patriksabol (1)

Top Pull Request Authors

  • yellowcap (63)
  • weiji14 (47)
  • brunosan (23)
  • srmsoumya (22)
  • lillythomas (16)
  • pre-commit-ci[bot] (5)
  • tylere (3)
  • chuckwondo (2)
  • wboykinm (2)
  • MaxLenormand (2)
  • romeokienzler (1)
  • anindabitm (1)
  • leothomas (1)
  • Brayden-Zhang (1)
  • clausmichele (1)

Top Issue Labels

  • data-pipeline (14)
  • bug (11)
  • benchmark (9)
  • enhancement (6)
  • operational (6)
  • documentation (3)
  • question (3)
  • help wanted (3)
  • maintenance (1)

Top Pull Request Labels

  • data-pipeline (15)
  • documentation (15)
  • maintenance (6)
  • model-architecture (6)
  • enhancement (1)
  • invalid (1)

Package metadata

proxy.golang.org: github.com/clay-foundation/model

proxy.golang.org: github.com/Clay-foundation/model


Dependencies

.github/workflows/test.yml actions
  • actions/checkout b4ffde65f46336ab88eb53be808477a3936bae11 composite
  • mamba-org/setup-micromamba db1df3ba9e07ea86f759e98b575c002747e9e757 composite
environment.yml pypi
pyproject.toml pypi

Score: -Infinity