Skip to main content

PADL

License

Pipeline Abstractions for Deep Learning

Full documentation here: https://lf1-io.github.io/padl/

PADL:

  • is a pipeline builder for PyTorch.
  • may be used with all of the great PyTorch functionality you're used to for writing layers.
  • allows users to build pre-processing, forward passes, loss functions and post-processing into the pipeline.
  • models may have arbitrary topologies and make use of arbitrary packages from the python ecosystem.
  • allows for converting standard functions to PADL components using a single keyword transform.

PADL was developed at LF1, an AI innovation lab based in Berlin, Germany.

Getting Started

Installation

pip install padl

PADL currently supports python 3.7, 3.8 and 3.9.

Python version >= 3.8 is preferred because creating and loading transforms (not execution) can be slower in 3.7.

Your first PADL program

from padl import transform, batch, unbatch
import torch
from torch import nn
nn = transform(nn)

@transform
def prepare(x):
    return torch.tensor(x)

@transform
def post(x):
    return x.topk(1)[1].item()

my_pipeline = prepare >> batch >> nn.Linear(10, 20) >> unbatch >> post

Try out PADL in Colab notebooks

  1. Basic PADL
  2. MNIST
  3. Simple NLP example
  4. Sentiment Analysis - NLP
  5. DC-GAN - Image Generation
  6. CLIP guided diffusion for face editing

Resources

Dev Blog

Read more about PADL in devloper blog at https://devblog.padl.ai/

Contributing

Code of conduct: https://github.com/lf1-io/padl/blob/main/CODE_OF_CONDUCT.md

If your interested in contributing to PADL please look at the current issues: https://github.com/lf1-io/padl/issues

Licensing

PADL is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

Metadata

Release files for padl 0.2.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for padl 0.2.5
File Size Uploaded
padl-0.2.5.tar.gz 128.0 kB Details

Release files / padl-0.2.5.tar.gz

Download URL padl-0.2.5.tar.gz
Size 128.0 kB
Tags Source
SHA-256 checksum
How to use checksums
3a8c1a596c21b29300ee05e65d37acfa68a8e5bd16c31b3d13199e8785e31e17
BLAKE2b-256 checksum
How to use checksums
e49767bac378b81292c017d1e78fc3d3ddccf3dfe385f0fc04621044a9b194a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page