Skip to main content

A try to unify the deep learning frameworks under one api.

Project description

Babilim

An attepmt to make a keras like framework for pytorch and tensorflow.

Read the Documentation.

What is Babilim?

Babilim is a Deep Learning Framework designed for ease of use like Keras. The API is designed to be intuitive and easy while allowing for complex production or research models. On top of that babilim runs on top of Tensorflow 2 or Pytorch, whichever you prefer. Seamless integration with TF2 and Pytorch was a top priority.

Babilim is designed for:

  • Intuitive usage,
  • a unified development experience across pytorch and tf2,
  • flexibility for research and robustness for production.

Install

Follow the official instructions here to install pytorch or here to install tensorflow 2.

# Stable Version
pip install babilim

# Bleeding Edge
pip install git+https://github.com/penguinmenac3/babilim.git

Selecting your Backend

Since babilim is designed for multiple backends (tensorflow 2 and pytorch), it gives you the choice which should be used. When your company/university uses one of the two frameworks you are fine to use or you can follow your personal preference for private projects.

import babilim
babilim.set_backend(babilim.PYTORCH_BACKEND)
# or
babilim.set_backend(babilim.TF_BACKEND)

Design Principles

Everything is attributed to one of three parts: Data, Model or Training. Some parts which are considered core functionality that is shared among them is in the core package.

  • Data is concerned about loading and preprocessing the data for training, evaluation and deployment.
  • Model is concerned with implementing the model. Everything required for the forward pass of the model is here.
  • Training contains all required for training a model on data. This includes loss, metrics, optimizers and trainers.

Tutorials & Examples

Starting with tutorials is usually easiest. The tutorials do not focus on the shortest possible solution, but actually an overkill solution that shows as much as you would need to know for solving your own problem.

Contributing

Currently there are no guidelines on how to contribute, so the best thing you can do is open up an issue and get in contact that way. In the issue we can discuss how you can implement your new feature or how to fix that nasty bug.

Why called babilim?

TL;DR Reference to Tower of Babel.

The Tower of Babel narrative in Genesis 11:1-9 is a myth about mankind building a tower that could reach into the heavens. However, the attempt gets set back and fails because they started speaking different languages and were no longer able to understand each other.

Luckily for AI development there are only two major frameworks which share nearly all market share. Babilim is an attempt to unite the two to talk in a language compatible with both.

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

babilim-20201011.tar.gz (57.3 kB view details)

Uploaded Source

Built Distribution

babilim-20201011-py3-none-any.whl (85.2 kB view details)

Uploaded Python 3

File details

Details for the file babilim-20201011.tar.gz.

File metadata

  • Download URL: babilim-20201011.tar.gz
  • Upload date:
  • Size: 57.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

File hashes

Hashes for babilim-20201011.tar.gz
Algorithm Hash digest
SHA256 330b7938b731a1e912f9d2ab745457aedc82c765e3fec321ea55f65d5bd26ee4
MD5 0974eebbe90fc0659b23bc17763992de
BLAKE2b-256 f6e8e950d971d3af3a9ad8c6dcf1495a0cba6338b391e607e46eaf7cd263c9ef

See more details on using hashes here.

File details

Details for the file babilim-20201011-py3-none-any.whl.

File metadata

  • Download URL: babilim-20201011-py3-none-any.whl
  • Upload date:
  • Size: 85.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

File hashes

Hashes for babilim-20201011-py3-none-any.whl
Algorithm Hash digest
SHA256 eedfe91060dc309a5f3cf5c1fe933460f6fe6c44dd67bbbb44e5191049cd8a9b
MD5 dfabdd03568930c7384f406589f8d7e3
BLAKE2b-256 7114ca27ccdcaeb42e4a249d7bc03887eb28811bfe6f70bdf32b81607d3eb64e

See more details on using hashes here.

Supported by

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