Designed as an experimental environment for GaiaHub contributors who are working primarily on model and engine improvements.
- Getting started
- Recommended installation process
- Roots & Culture Indoor Agriculture Modeler's Lab
- Outdoor Agriculture Modeler's Lab
- Agroforestry Modeler's Lab
- How to contribute to GaiaHub
- Provenance policy
- Known errors
- Citing GaiaHub
GaiaHub is a place where scientists, coders, citizens of earth and other forward-thinking creatures come together to co-develop an open model library describing all the world’s agriculture, to help 1 billion farmers become more financially and environmentally sustainable.
If you are new or if you haven't yet, check out the Get Started notebook for a detailed breakdown of the engine and how to harness it's power!
Once you are oriented, check out the Roots & Culture Indoor Agriculture Modeler's Lab section below for more instructions on how to use notebooks for conducting your own experiments. If you are a contributor looking to complete a project this will be a useful tool for demonstrating how your contributions improve or expand the engine.
When you are ready to propose merging your changes into the core engine, check out these tips.
- Clone this repository and the fangorn submodule into a folder on your local system using
terminal
(macOS and Linux) orcmd
(Windows):Replacegit clone --recurse-submodules -b main https://github.com/gaia-os/gaia-hub.git
main
with the name of any branch you'd like to clone.
Fangorn is the name of the Digital Gaia core engine, and contains many important files including the ontology, agents and more. - Move to project root
- Use the following commands to create a new virtual environment and then activate it:
Note: first Install virtualenv if not already installedThis will create the virtual Python environment called$ python3 -m venv myenv
myenv
. Replacemyenv
with a different name if you prefer.This will activate the virtual environment called$ source myenv/bin/activate
myenv
. - Install all dependencies for the Digital Gaia engine
Note the
(myenv) $ python -m pip install -r requirements.txt
(myenv)
which indicates you are indeed working in an activated virtual environment. - Open a jupyter notebook and start exploring the
notebooks/
folder - When you're done don't forget to deactivate your virtual environment using
$ deactivate
Roots & Culture operates a state-of-the-art indoor hemp farm in Virginia, growing oil rich hemp in soil under grow lights.
Using a curated, provenanced dataset from their farm we have built a standard environment in which one can innovate and demonstrate how one's proposed model changes effect predictions and inference. This modeler's lab of sorts is a Jupyter notebook that presents a simple example of how one can demonstrate how changes to the model effect predictions.
We hope this well-characterized model farm will serve as a jumping off point for modeler's looking to quickly make and test their own contributions. Check it out here!
Do you have expert knowledge about a crop category and access to detailed field data for that crop? If so, help us build the Outdoor Agriculture Modeler's Lab!
Stay tuned for updates on when this lab will become available. When it is, this lab will be used for developing aspects of the model that are not possible to meaningfully model in an indoor facility (e.g. sunlight, weather, etc.).
Do you have expert knowledge about a forest product category and access to detailed agroforestry data? If so, help us build the Agroecology Modeler's Lab!
Stay tuned for updates on when this lab will become available. Like the Outdoor Lab, this lab will make it possible to meaningfully test model developments that deal with concepts which apply only to agroforestry projects (e.g. specialty crops like cacao, impact of koalas on vegetation, etc.).
First, fill out this form to join GaiaHub and get access to our Slack channel.
If you're looking to improve the model by contributing your own code please use a basic fork and pull request protocol for fastest and best integration with our current internal workflow:
- Fork the
gaia-hub
repository into your personal GitHub account - Clone the branch you want to work from into a folder on your local system
- Work on a new branch you create
- When you're ready to merge your changes into the
gaia-hub
create a pull request
All structural assumptions and parameter value priors (growth rates, effect sizes, etc) in the library should be given provenance. Order of preference for provenance:
- Estimated from reference datasets that have their own provenance, with snapshots and URIs in the model library repository
- Adapted from reference papers or articles available on the Web, with snapshots and URIs referenced in the repository
- Reported by identifiable experts through written communication, with stable URI (ex: Google Docs copy of email exchange) referenced in the repository
- JAX on Apple Silicon (M1 and M2 series chips)
While some people have reported success installing the CPU-only version of JAX or building JAX from source, we have yet to indentify a reliable workaround.
Please contact us if you have a solution of this presents an impasse.
To cite this repository:
@software{GaiaHub2023github,
author = {Digital Gaia GaiaHub Network},
title = {{GaiaHub}: Digital Gaia's Global Sustainability Information and Collaboration Hub},
url = {http://github.com/gaia-os/gaia-hub},
version = {0.1.0},
year = {2023},
}