Metadata-Version: 2.1
Name: torchlambda
Version: 1587188625
Summary: Minimalistic & easy deployment of PyTorch models on AWS Lambda with C++
Home-page: https://github.com/pypa/torchlambda
Author: Szymon Maszke
Author-email: szymon.maszke@protonmail.com
License: MIT
Project-URL: Website, https://szymonmaszke.github.io/torchlambda
Project-URL: Documentation, https://szymonmaszke.github.io/torchlambda/#torchlambda
Project-URL: Issues, https://github.com/szymonmaszke/torchlambda/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc
Description: <img align="left" width="256" height="256" src="https://github.com/szymonmaszke/torchlambda/blob/master/assets/banner.png">
        
        [__torchlambda__](https://szymonmaszke.github.io/torchlambda/) is a tool to deploy [PyTorch](https://pytorch.org/) models
        on [Amazon's AWS Lambda](https://aws.amazon.com/lambda/) using [AWS SDK for C++](https://aws.amazon.com/sdk-for-cpp/)
        and [custom C++ runtime](https://github.com/awslabs/aws-lambda-cpp).
        
        Using statically compiled dependencies __whole package is shrunk to only `30MB`__.
        
        Due to small size of compiled source code users can pass their models as [AWS Lambda layers](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html).
        __Services like [Amazon S3](https://aws.amazon.com/s3/) are no longer necessary to load your model__.
        
        [__torchlambda__](https://szymonmaszke.github.io/torchlambda/) has it's PyTorch & AWS dependencies always up to date because of [continuous deployment](https://en.wikipedia.org/wiki/Continuous_deployment) run at `03:00 a.m.`
        every day.
        
        
        | Docs | Deployment | Package | Python | PyTorch | Docker | CodeBeat | Images |
        |------|------------|---------|--------|---------|--------|----------|--------|
        |[![Documentation](https://img.shields.io/static/v1?label=&message=Wiki&color=EE4C2C&style=for-the-badge)](https://github.com/szymonmaszke/torchlambda/wiki) | ![CD](https://img.shields.io/github/workflow/status/szymonmaszke/torchlambda/update?label=%20&style=for-the-badge) | [![PyPI](https://img.shields.io/static/v1?label=&message=PyPI&color=377EF0&style=for-the-badge)](https://pypi.org/project/torchlambda/) | [![Python](https://img.shields.io/static/v1?label=&message=3.6&color=377EF0&style=for-the-badge&logo=python&logoColor=F8C63D)](https://www.python.org/) | [![PyTorch](https://img.shields.io/static/v1?label=&message=1.4.0&color=EE4C2C&style=for-the-badge)](https://pytorch.org/) | [![Docker](https://img.shields.io/static/v1?label=&message=17.05&color=309cef&style=for-the-badge)](https://cloud.docker.com/u/szymonmaszke/repository/docker/szymonmaszke/torchlambda) | [![codebeat badge](https://codebeat.co/badges/ca6f19c8-29ad-4ddb-beb3-4d4e2fb3aba2)](https://codebeat.co/projects/github-com-szymonmaszke-torchlambda-master) | [![Images](https://img.shields.io/static/v1?label=&message=Tags&color=309cef&style=for-the-badge)](https://hub.docker.com/r/szymonmaszke/torchlambda/tags)|
        
        
        # Comparison with other deployment tools
        
        - __Do one thing and do it well__ - most deployment tools are complex solutions
        including multiple frameworks and multiple services. `torchlambda` focuses
        solely on PyTorch and AWS Lambda integration.
        - __Write programs to work together__ - Amazon AWS tools exist for a reason,
        no need to repeat their functionalities (like `aws-cli`) or interfere with
        your PyTorch source code.
        - __Small is beautiful__ - `3000` LOC where most of it are Python argument parsing
        from user makes it relatively easy to delve into source code and modify on your own.
        - __Focus on lightweight inference__ - you can't train you neural network with
        `torchlambda`. There are other tools for that and should be used when appropriate.
        - __Easy to jump in__ - no need to learn new tool. `torchlambda` has at most
        `4` commands simplifying steps to take PyTorch model into the cloud.
        - __Extensible when you need it__ - No additional source code needed (except YAML settings),
        but fully possible if you need it. You can also tune PyTorch and AWS SDK dependencies
        for your specific use-case
        
        # Table Of Contents
        
        - [Installation](https://github.com/szymonmaszke/torchlambda/wiki/Installation)
        - [Tutorials](https://github.com/szymonmaszke/torchlambda/wiki/Tutorials)
        	- [Basic deployment on AWS Lambda]()
        	- [`base64` image encoding]()
        	- [Testing your function locally]()
        - [Commands](https://github.com/szymonmaszke/torchlambda/wiki/Commands)
        	- [settings](https://github.com/szymonmaszke/torchlambda/wiki/Commands#torchlambda-settings)
        	- [template](https://github.com/szymonmaszke/torchlambda/wiki/Commands#torchlambda-template)
        	- [build](https://github.com/szymonmaszke/torchlambda/wiki/Commands#torchlambda-build)
        	- [layer](https://github.com/szymonmaszke/torchlambda/wiki/Commands#torchlambda-layer)
        
        - [YAML settings file reference](https://github.com/szymonmaszke/torchlambda/wiki/YAML-settings-file-reference)
        - [C++ code](https://github.com/szymonmaszke/torchlambda/wiki/CPP---code)
        
        #### Footnotes
        
        <a name="footnote1">1</a>. Support for latest version of it's main DL framework or main frameworks if multiple
        supported
        
        <a name="footnote2">2</a>. Project dependencies are easily customizable. In torchlambda it would be user
        specified build procedures for [`libtorch`](https://pytorch.org/cppdocs/) and [`AWS C++ SDK`](https://aws.amazon.com/sdk-for-cpp/)
        
        <a name="footnote2">3</a>. Necessary size of code and dependencies to deploy model
        
        <a name="footnote2">4</a>. Based on [Dockerfile size](https://hub.docker.com/r/tensorflow/serving)
        
Keywords: aws lambda pytorch deployment minimal c++ neural network model
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: License :: OSI Approved :: MIT License
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.6
Description-Content-Type: text/markdown
