Metadata-Version: 2.1
Name: project-lighter
Version: 0.0.2a30
Summary: YAML-based automated rapid prototyping framework for deep learning experiments
Home-page: https://github.com/lighter/lighter
License: MIT
Author: Ibrahim Hadzic
Author-email: ibrahimhadzic45@gmail.com
Requires-Python: >=3.9,<4.0
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.8
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: absl-py (==2.1.0)
Requires-Dist: aiohttp (==3.9.5)
Requires-Dist: aiosignal (==1.3.1)
Requires-Dist: async-timeout (==4.0.3)
Requires-Dist: attrs (==23.2.0)
Requires-Dist: certifi (==2024.2.2)
Requires-Dist: charset-normalizer (==3.3.2)
Requires-Dist: filelock (==3.14.0)
Requires-Dist: fire (==0.5.0)
Requires-Dist: frozenlist (==1.4.1)
Requires-Dist: fsspec (==2024.5.0)
Requires-Dist: grpcio (==1.64.0)
Requires-Dist: idna (==3.7)
Requires-Dist: importlib-metadata (==7.1.0)
Requires-Dist: jinja2 (==3.1.4)
Requires-Dist: lightning-utilities (==0.11.2)
Requires-Dist: loguru (==0.6.0)
Requires-Dist: markdown (==3.6)
Requires-Dist: markdown-it-py (==3.0.0)
Requires-Dist: markupsafe (==2.1.5)
Requires-Dist: mdurl (==0.1.2)
Requires-Dist: monai (==1.3.1)
Requires-Dist: mpmath (==1.3.0)
Requires-Dist: multidict (==6.0.5)
Requires-Dist: networkx (==3.2.1)
Requires-Dist: numpy (==1.26.4)
Requires-Dist: nvidia-cublas-cu12 (==12.1.3.1)
Requires-Dist: nvidia-cuda-cupti-cu12 (==12.1.105)
Requires-Dist: nvidia-cuda-nvrtc-cu12 (==12.1.105)
Requires-Dist: nvidia-cuda-runtime-cu12 (==12.1.105)
Requires-Dist: nvidia-cudnn-cu12 (==8.9.2.26)
Requires-Dist: nvidia-cufft-cu12 (==11.0.2.54)
Requires-Dist: nvidia-curand-cu12 (==10.3.2.106)
Requires-Dist: nvidia-cusolver-cu12 (==11.4.5.107)
Requires-Dist: nvidia-cusparse-cu12 (==12.1.0.106)
Requires-Dist: nvidia-nccl-cu12 (==2.19.3)
Requires-Dist: nvidia-nvjitlink-cu12 (==12.5.40)
Requires-Dist: nvidia-nvtx-cu12 (==12.1.105)
Requires-Dist: packaging (==24.0)
Requires-Dist: pandas (==1.5.3)
Requires-Dist: pillow (==10.3.0)
Requires-Dist: protobuf (==5.27.0)
Requires-Dist: pygments (==2.18.0)
Requires-Dist: python-dateutil (==2.9.0.post0)
Requires-Dist: pytorch-lightning (==2.2.5)
Requires-Dist: pytz (==2024.1)
Requires-Dist: pyyaml (==6.0.1)
Requires-Dist: requests (==2.32.2)
Requires-Dist: rich (==13.7.1)
Requires-Dist: setuptools (==70.0.0)
Requires-Dist: six (==1.16.0)
Requires-Dist: sympy (==1.12)
Requires-Dist: tensorboard (==2.16.2)
Requires-Dist: tensorboard-data-server (==0.7.2)
Requires-Dist: termcolor (==2.4.0)
Requires-Dist: torch (==2.2.2)
Requires-Dist: torchmetrics (==1.4.0.post0)
Requires-Dist: torchvision (==0.17.2)
Requires-Dist: tqdm (==4.66.4)
Requires-Dist: triton (==2.2.0)
Requires-Dist: typing-extensions (==4.12.0)
Requires-Dist: urllib3 (==2.2.1)
Requires-Dist: werkzeug (==3.0.3)
Requires-Dist: yarl (==1.9.4)
Requires-Dist: zipp (==3.19.0)
Project-URL: Repository, https://github.com/lighter/lighter
Description-Content-Type: text/markdown

<div align="center">
<picture>
  <!-- old code that allows different pics for light/dark mode -->
  <!--
  <source media="(prefers-color-scheme: dark)" srcset="./assets/images/lighter_dark.png">
  <source media="(prefers-color-scheme: light)" srcset="./assets/images/lighter_light.png">
   -->
  <img align="center" alt="Lighter logo" src="./assets/images/lighter.png">
</picture>
</div>
<br/>
<div align="center">

 [![build](https://github.com/project-lighter/lighter/actions/workflows/build.yml/badge.svg?branch=main)](https://github.com/project-lighter/lighter/actions/workflows/build.yml) ![Coverage](./assets/images/coverage.svg) [![GitHub license](https://img.shields.io/github/license/project-lighter/lighter)](https://github.com/project-lighter/lighter/blob/main/LICENSE)
</div>


With `lighter`, focus on your deep learning experiments and forget about boilerplate through:
 1. **Task-agnostic** training logic already implemented for you (classification, segmentation, self-supervised, etc.)
 2. **Configuration-based** approach that will ensure that you can always reproduce your experiments and know what hyperparameters you used.
 3. Extremely **simple integration of custom** models, datasets, transforms, or any other components to your experiments.

&nbsp;

`lighter` stands on the shoulder of these two giants:
 - [MONAI Bundle](https://docs.monai.io/en/stable/bundle_intro.html) - Configuration system. Similar to [Hydra](https://github.com/facebookresearch/hydra), but with additional features.
 - [PyTorch Lightning](https://github.com/Lightning-AI/lightning) - Our [`LighterSystem`](https://project-lighter.github.io/lighter/reference/system/) is based on the PyTorch Lightning [`LightningModule`](https://lightning.ai/docs/pytorch/stable/common/lightning_module.html) and implements all the necessary training logic for you. Couple it with the PyTorch Lightning [Trainer](https://lightning.ai/docs/pytorch/stable/common/trainer.html) and you're good to go.
 
Simply put, `lighter = config(trainer + system)` 😇


## 📖 Usage

- [📚 Documentation](https://project-lighter.github.io/lighter/)
- [🎥 YouTube Channel](https://www.youtube.com/channel/UCef1oTpv2QEBrD2pZtrdk1Q)

## 🚀 Install

Current release:
```bash
pip install project-lighter
```

Pre-release (up-to-date with the main branch):
```bash
pip install project-lighter --pre
```

For development:
```bash
make setup
make install             # Install lighter via Poetry
make pre-commit-install  # Set up the pre-commit hook for code formatting
poetry shell             # Once installed, activate the poetry shell
```

## 💡 Projects
Projects that use `lighter`:

| Project | Description |
| --- | --- |
| [Foundation Models for Quantitative Imaging Biomarker Discovery in Cancer Imaging](https://aim.hms.harvard.edu/foundation-cancer-image-biomarker) | A foundation model for lesions on CT scans that can be applied to down-stream tasks related to tumor radiomics, nodule classification, etc. |


## 📄 Cite:

If you find `lighter` useful in your research or project, please consider citing it:

```bibtex
@software{lighter,
  author       = {Ibrahim Hadzic and
                  Suraj Pai and
                  Keno Bressem and
                  Hugo Aerts},
  title        = {Lighter},
  publisher    = {Zenodo},
  doi          = {10.5281/zenodo.8007711},
  url          = {https://doi.org/10.5281/zenodo.8007711}
}
```

We appreciate your support!

