Skip to content

Contribution Guidelines

isaacmg edited this page Sep 8, 2020 · 18 revisions

Check out the projects page for information on the active projects. Before starting work on a PR please comment on the relevant issue or create a new one. Once you begin work link the PR to the proper issue.

Live Coding Sessions

Contributions Accepted

  • New time series models
  • New time series loss functions
  • Bug fixes
  • Meta data embedding models.
  • Documentation updates and fixes

Code Style

We use Flake8 and mypy. Currently, we are a PyTorch only repository in terms of model frameworks.

Unit tests

All functions and newly added code require unit tests. Existing unit tests must pass.

Peer review

All PRs require at least one approving review.

Getting setup locally

To get setup local you can install our repository in development mode from the master branch (or whatever branch you are using). To do this run

cd flow-forecast
python setup.py develop

Adding models

Models generally require four things:

  1. Creating the model as a PyTorch module.
  2. Adding the new model to the dict by importing and mapping it to class.
  3. Adding an example model JSON config file in the tests directory.
  4. Adding a unit test

Complicating factors involve:

  • Models that take parameters other than X and metadata in forward_params.
  • Models that return a tensor not in the shape (batch_size, seq_len, n_results)

Please plan with the repository owners before undertaking above models.

Adding loss functions