Project Introduction: Clay Foundation Model
Clay Foundation Model is an innovative, open-source AI model designed to interface with aspects of the Earth. Engineered by the Clay Foundation, this project facilitates users in leveraging the capabilities of artificial intelligence to enhance Earth-related studies and applications. With a user-friendly approach, the model supports various technological environments and is continuously evolving through community contributions and developments.
Quickstart Guide
For those eager to dive in, the Clay Foundation Model offers a seamless transition into its ecosystem via the JupyterLab environment. You can access it on platforms like Binder and SageMaker Studio Lab. These integrations ensure that users can easily experiment and interact with the model in a pre-configured setting, enhancing accessibility for both beginners and experienced developers.
Installation Instructions
Deploying the Clay Foundation Model begins with a straightforward cloning of its repository. By cloning the repository, users can actively participate in the development process.
git clone <repo-url>
cd model
To manage dependencies effectively, it is recommended to use mamba. Mamba simplifies dependency management by creating a virtual environment with Python and JupyterLab installed.
mamba env create --file environment.yml
Note that this setup is specifically optimized for Linux devices with CUDA GPUs, whereas macOS users should follow advanced installation guides through the official documentation.
Activate your environment with the following command:
mamba activate claymodel
Ensure that all libraries and dependencies are correctly installed with:
mamba list
Utilizing the Model
To start exploring the model's potential, users should initiate the Jupyter Lab:
mamba activate claymodel
python -m ipykernel install --user --name claymodel # Ensures the environment is correctly set up
jupyter kernelspec list --json # Verify kernel installation
jupyter lab &
For running the neural network model, the project leverages LightningCLI v2, a tool that manages configurations and hyperparameters efficiently. Users can test the model on a validation set with:
python trainer.py fit --model ClayMAEModule --data ClayDataModule --config configs/config.yaml --trainer.fast_dev_run=True
To train the model thoroughly, execute:
python trainer.py fit --model ClayMAEModule --data ClayDataModule --config configs/config.yaml
Further options and configurations are documented in the LightningCLI documentation.
How to Contribute
Community involvement is central to the evolution of the Clay Foundation Model. Contributions are encouraged, especially in writing documentation which enhances user experience and knowledge dissemination. Documentation is constructed using Jupyter Book, allowing for seamless integration and updates.
To start writing documentation, install Jupyter Book with:
pip install -U jupyter-book
Build the documentation locally using:
jupyter-book build docs/
Preview the newly built site via:
python -m http.server --directory _build/html
An automated GitHub Action takes care of deploying the documentation to GitHub Pages, making it readily accessible for the global community. Through intuitive tools and a structured approach, Clay Foundation Model fosters a collaborative environment, inviting contributors to enhance Earth-related AI applications continually.