ML Inference 🥶
Project description
Nbox
A library that makes using a host of models provided by the opensource community a lot more easier.
The entire purpose of this package is to make inference chill.
pip install nbox
Usage
import nbox
# As all these models come from the popular frameworks you use such as
# torchvision, efficient_pytorch or hf.transformers
model = nbox.load("torchvision/mobilenetv2", pretrained = True)
# nbox makes inference the priority so you can use it
# pass it a list for batch inference
out_single = model('cat.jpg')
out = model([Image.open('cat.jpg'), np.array(Image.open('cat.jpg'))])
tuple(out.shape) == (2, 1000)
# deploy the model to a managed kubernetes cluster on NimbleBox.ai
url_endpoint, nbx_api_key = model.deploy()
# or load a cloud infer model and use seamlessly
model = nbox.load(
model_key_or_url = url_endpoint,
nbx_api_key = nbx_api_key,
category = "image"
)
# Deja-Vu!
out_single = model('cat.jpg')
out = model([Image.open('cat.jpg'), np.array(Image.open('cat.jpg'))])
tuple(out.shape) == (2, 1000)
Things for Repo
- Using
poetry
for proper package management as @cshubhamrao says.- Add new packages with
poetry add <name>
. Do not addtorch
,tensorflow
and others, useless burden to manage those. - When pushing to pypi just do
poetry build && poetry publish
this manages all the things around
- Add new packages with
- Install
pytest
and then runpytest tests/ -v
. - Using
black
for formatting, VSCode to the moon.
License
The code in thist repo is licensed as BSD 3-Clause. Please check for individual repositories for licenses. Here are some of them:
Requirements
Model Sources
99% of the credit for nbox
goes to the amazing people behind these projects:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
nbox-0.1.6.tar.gz
(18.1 kB
view hashes)
Built Distribution
nbox-0.1.6-py3-none-any.whl
(20.7 kB
view hashes)