Skip to main content

One-line deployment for trained tabular ML models

Project description

Deeploi — Deploy ML Models in Seconds 🚀

Deeploi Banner

PyPI version License: MIT

Turn your trained tabular ML model into a production-ready API with a single line of code. No DevOps. No boilerplate. No headaches.

Why Deeploi?

  • Instant API: Serve your scikit-learn or XGBoost model in one command.
  • Zero Config: No YAML, no Docker, no cloud lock-in.
  • Local-First: Run on your laptop, server, or VM.
  • Built for ML work: Focus on the model, not the serving stack.

Install

pip install deeploi

Fastest Start

from sklearn.datasets import load_iris
from sklearn.ensemble import RandomForestClassifier
from deeploi import deploy

iris = load_iris(as_frame=True)
X, y = iris.data, iris.target
model = RandomForestClassifier(random_state=42).fit(X, y)

deploy(model)

Your model is now live at http://127.0.0.1:8000.

Most Important Ways to Access Deeploi

1. Open the dashboard

Open this in your browser:

http://127.0.0.1:8000/

The dashboard gives you a quick way to inspect metadata, test endpoints, and send prediction requests.

2. Call the prediction API directly

curl -X POST http://127.0.0.1:8000/predict \
  -H "Content-Type: application/json" \
  -d '{
    "records": [
      {
        "sepal length (cm)": 5.1,
        "sepal width (cm)": 3.5,
        "petal length (cm)": 1.4,
        "petal width (cm)": 0.2
      }
    ]
  }'

Core endpoints:

  • POST /predict
  • POST /predict_proba
  • GET /meta
  • GET /health

3. Work with a reusable package object

from deeploi import package

pkg = package(model)
preds = pkg.predict(X.head())
pkg.serve(port=8000)

Use this when you want a Python object you can predict with, save, and serve explicitly.

4. Save and reload a model artifact

from deeploi import package, load

pkg = package(model)
pkg.save("artifacts/iris_rf")

loaded = load("artifacts/iris_rf")
loaded.serve(port=8000)

Use this when you want a portable artifact directory you can reload later.

Docker Artifact Generation

Use Docker generation when you want a saved artifact that is easy to move onto another machine or run in a container.

from deeploi import package

pkg = package(model)
pkg.save("artifacts/iris_rf", generate_docker=True)

Then build and run it:

cd artifacts/iris_rf
docker build -t iris-model .
docker run --rm -p 8000:8000 iris-model

Who is Deeploi for?

  • Data scientists who want to share a model quickly
  • ML engineers who need fast local serving for tabular models
  • Teams that want a lightweight path from notebook to API

Learn More

See DOCS.md for:

  • advanced deploy, package, and load usage
  • environment-based authentication
  • Docker artifact generation
  • artifact layout
  • error handling and testing examples

License

MIT — see LICENSE.

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

deeploi-0.2.0.tar.gz (38.0 kB view details)

Uploaded Source

Built Distribution

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

deeploi-0.2.0-py3-none-any.whl (34.9 kB view details)

Uploaded Python 3

File details

Details for the file deeploi-0.2.0.tar.gz.

File metadata

  • Download URL: deeploi-0.2.0.tar.gz
  • Upload date:
  • Size: 38.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for deeploi-0.2.0.tar.gz
Algorithm Hash digest
SHA256 20d93d0964635cef50795b45c78fff49c5356554e275a852344d11dd1c609b5f
MD5 da679b733cb2d6bc8729dc4584afec12
BLAKE2b-256 2c6dc6e77fe9546cc8cc9cef0ef614974970de1e8b83d26d92b235989ade1cbb

See more details on using hashes here.

File details

Details for the file deeploi-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: deeploi-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 34.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for deeploi-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5c0560467a456038fc2cdce7cdfd3054bbf7c9d06d98a6327eb8513f0404a9b2
MD5 f0eba49fa67a8394ac55ec40c66b585e
BLAKE2b-256 2863d4890eb700997ef711d40cf6e573d352ab5761d0d36b4eb4130a96c44b33

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