Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/grok-ai/nn-template
Generic template to bootstrap your PyTorch project.
https://github.com/grok-ai/nn-template
best-practices best-practises cookiecutter deep-learning dvc github-actions huggingface-datasets hydra mkdocs pre-commit project-structure pytorch pytorch-lightning reproducibility research streamlit template wandb weights-and-biases
Last synced: 29 days ago
JSON representation
Generic template to bootstrap your PyTorch project.
- Host: GitHub
- URL: https://github.com/grok-ai/nn-template
- Owner: grok-ai
- License: mit
- Created: 2021-02-25T00:30:56.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-10-12T19:33:10.000Z (about 1 year ago)
- Last Synced: 2024-05-22T02:18:25.860Z (6 months ago)
- Topics: best-practices, best-practises, cookiecutter, deep-learning, dvc, github-actions, huggingface-datasets, hydra, mkdocs, pre-commit, project-structure, pytorch, pytorch-lightning, reproducibility, research, streamlit, template, wandb, weights-and-biases
- Language: Python
- Homepage: https://grok-ai.github.io/nn-template
- Size: 2.68 MB
- Stars: 620
- Watchers: 14
- Forks: 65
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# NN Template
[comment]: <> (
)
[comment]: <> (
)
"We demand rigidly defined areas of doubt and uncertainty."
Generic template to bootstrap your [PyTorch](https://pytorch.org/get-started/locally/) project,
read more in the [documentation](https://grok-ai.github.io/nn-template).[![asciicast](https://asciinema.org/a/475623.svg)](https://asciinema.org/a/475623)
## Get started
If you already know [cookiecutter](https://github.com/cookiecutter/cookiecutter), just generate your project with:
```bash
cookiecutter https://github.com/grok-ai/nn-template
```Otherwise
Cookiecutter manages the setup stages and delivers to you a personalized ready to run project.Install it with:
pip install cookiecutter
More details in the [documentation](https://grok-ai.github.io/nn-template/latest/getting-started/generation/).
## Strengths
- **Actually works for [research](https://grok-ai.github.io/nn-template/latest/papers/)**!
- Guided setup to customize project bootstrapping;
- Fast prototyping of new ideas, no need to build a new code base from scratch;
- Less boilerplate with no impact on the learning curve (as long as you know the integrated tools);
- Ensure experiments reproducibility;
- Automatize via GitHub actions: testing, stylish documentation deploy, PyPi upload;
- Enforce Python [best practices](https://grok-ai.github.io/nn-template/latest/features/bestpractices/);
- Many more in the [documentation](https://grok-ai.github.io/nn-template/latest/features/nncore/);## Integrations
Avoid writing boilerplate code to integrate:
- [PyTorch Lightning](https://github.com/PyTorchLightning/pytorch-lightning), lightweight PyTorch wrapper for high-performance AI research.
- [Hydra](https://github.com/facebookresearch/hydra), a framework for elegantly configuring complex applications.
- [Hugging Face Datasets](https://huggingface.co/docs/datasets/index),a library for easily accessing and sharing datasets.
- [Weights and Biases](https://wandb.ai/home), organize and analyze machine learning experiments. *(educational account available)*
- [Streamlit](https://streamlit.io/), turns data scripts into shareable web apps in minutes.
- [MkDocs](https://www.mkdocs.org/) and [Material for MkDocs](https://squidfunk.github.io/mkdocs-material/), a fast, simple and downright gorgeous static site generator.
- [DVC](https://dvc.org/doc/start/data-versioning), track large files, directories, or ML models. Think "Git for data".
- [GitHub Actions](https://github.com/features/actions), to run the tests, publish the documentation and to PyPI automatically.
- Python best practices for developing and publishing research projects.## Maintainers
- Valentino Maiorca [@Flegyas](https://github.com/Flegyas)
- Luca Moschella [@lucmos](https://github.com/lucmos)