We recommend installing graphnet
in a separate environment, e.g. using Anaconda (see details on installation here). The fastest way to get up and running is to install the package in the provided conda environment:
$ git clone [email protected]:<your-username>/graphnet.git
$ cd graphnet
$ conda env create -f envs/gnn_py38.yml
$ conda activate gnn_py38
(gnn_py38) $ pip install -e .[develop]
This should allow you to e.g. run the scripts in examples/ out of the box.
You can also install the package in a python virtual environment, or in your system python, but then you will have to contend with C++ compiler versions; the non-standard interplay between pytorch and pytorch-geometric (see e.g. here), which graphnet
uses internally; etc.
To make sure that the process of contributing is as smooth and effective as possible, we provide a few guidelines in the contributing guide that we encourage contributors to follow.
In short, everyone who wants to contribute to this project is more than welcome to do so! Contributions are handled through pull requests, that should be linked to a GitHub issue describing the feature to be added or bug to be fixed. Pull requests will be reviewed by the project maintainers and merged into the main branch when accepted.
We're using Weights & Biases (W&B) to track the results — i.e. losses, metrics, and model artifacts — of training runs as a means to track model experimentation and streamline optimisation. To authenticate with W&B, sign up on the website and run the following in your terminal after having installed this package:
$ wandb login
You can use your own, personal projects on W&B, but for projects of common interest you are encouraged to join the graphnet-team
team on W&B here, create new projects for your specific use cases, and log your runs there. Just ask @asogaard for an invite to the team!
If you don't want to use W&B and/or only want to log run data locally, you can run:
$ wandb offline
If you change you mind, it's as simple as:
$ wandb online
The examples/train_model.py script shows how to train a model and log the results to W&B.