Skip to main content

A collection of utilities for PyTorch Lightning.

Project description

LightningToolbox: A PyTorch Lightning Facilitator

InstallationDocsLicense

PyPI version

Welcome to lightning-toolbox, a python package that offers a set of automation tools built on top of PyTorch Lightning. As a deep learning researcher, I found that PyTorch Lightning offloads a significant portion of redundant work. However, I still found myself spending a considerable amount of time on writing boilerplate code for datamodules, training/validation steps, logging, and specially for not so complicated costum training loops. This is why I created lightning-toolbox - to make it easier to focus on writing experiment-specific code rather than dealing with tedious setup tasks.

By passing your PyTorch model onto a generic lightning.LightningModule (lightning_toolbox.TrainingModule), lightning-toolbox automatically populates the objective function, optimizer step, and more. In addition, lightning-toolbox's generic lightning.LightningDataModule (lightning_toolbox.DataModule) can turn any PyTorch dataset, into a experiment-ready lightning data module, completing the cycle for writing lightning deep learning experiments.

Most of the functionality provided in this package is based on dypy, which enables lazy evaluation of variables and runtime code injections. Although lightning-toolbox is currently in its early stages and mainly serves as a facilitator for my personal research projects, I believe it can be helpful for many others who deal with similar deep learning experiments. Therefore, I decided to open-source this project and continue to add on to it as I move further in my research.

As a disclaimer this package does not intend to solve field-specific problems and provides more generic facilitator codes that the official lightning-bolts, that you can easily mold into your desired deep learning experiment.

Installation

pip install lightning-toolbox

Lightning toolbox is tested on lightning==1.9.0, although there's no version restriction setup for this package, things might break down if the community decides to roll backward incompatible changes to the core Pytorch Lightning API (as they usually do).

License

This project is licensed under the terms of the Apache 2.0 license. See LICENSE for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lightning_toolbox-0.0.18.tar.gz (19.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lightning_toolbox-0.0.18-py3-none-any.whl (24.8 kB view details)

Uploaded Python 3

File details

Details for the file lightning_toolbox-0.0.18.tar.gz.

File metadata

  • Download URL: lightning_toolbox-0.0.18.tar.gz
  • Upload date:
  • Size: 19.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for lightning_toolbox-0.0.18.tar.gz
Algorithm Hash digest
SHA256 7095fbb15c7ed5a42b3f94af9d3b315f492084fc7edf7a06fafbe7005345c1a4
MD5 9412f2896e23b35ef6294f66cc45c6ef
BLAKE2b-256 20d6f5bf46fd9c79b707fc15ed6d1911d6eb515990ccae3380957ac75ed54a57

See more details on using hashes here.

File details

Details for the file lightning_toolbox-0.0.18-py3-none-any.whl.

File metadata

File hashes

Hashes for lightning_toolbox-0.0.18-py3-none-any.whl
Algorithm Hash digest
SHA256 63beaec6877af25a225f88a6726943d89bc1c8ae76f4c4f7a58f654122dd3f8f
MD5 5712e304dc41b25c89834f4f1db53268
BLAKE2b-256 b0073befb68d8f83490721138b5d961f7d448fb878a5822c89e8214baca00ea6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page