BentoML is an open platform for machine learning in production. It simplifies model packaging and model management, optimizes model serving workloads to run at production scale, and accelerates the creation, deployment, and monitoring of prediction services.
The repository contains a collection of example projects demonstrating BentoML usage and best practices.
👉 Pop into our Slack community! We're happy to help with any issue you face or even just to meet you and hear what you're working on :)
Example | Framework | Model | Functionality |
---|---|---|---|
custom_model_runner | PyTorch | MNIST | Custom Model Runner, Prometheus, gRPC |
custom_python_model/lda_classifier | Picklable | LDA | Custom Python Model |
custom_python_model/simple_pickable_model | Picklable | Python Function | |
custom_runner/nltk_pretrained_model | Custom | NLTK | Custom Runner |
custom_runner/torch_hub_yolov5 | Custom | YOLOv5 | Custom Runner, Torch Hub |
custom_web_serving/fastapi_example | SKLearn | Classification | FastAPI |
custom_web_serving/flask_example | SKLearn | Classification | Flask |
inference_graph | Transformers | Text Generation, Text Classification | Hugging Face Model Hub, Inference Graph |
kfserving | SKLearn | Classification | KServe |
mlflow/keras | MLflow, Keras | Sequential | |
mlflow/lightgbm | MLflow, LightGBM | Classification | |
mlflow/pytorch | MLflow, PyTorch | MNIST | |
mlflow/sklearn_autolog | MLflow, SKLearn | Linear Regression, Pipeline | MLflow Automatic Logging |
mlflow/sklearn_logistic_regression | MLflow, SKLearn | Logistic Regression | |
mlflow/torchscript/IrisClassification | MLflow, TorchScript | Classfication | MLflow Log Model |
mlflow/torchscript/MNIST | MLflow, PyTorch | MNIST | MLflow Log Model |
monitoring/task_classification | SKLearn | Classfication | Model Monitoring, Classification Tasks |
pydantic_validation | SKLearn | Classification | Pydantic Model, Validation |
pytorch_mnist | PyTorch | MNIST | |
quickstart | SKLearn | Classification | Notebook |
sklearn/linear_regression | SKLearn | Linear Regression | |
sklearn/pipeline | SKLearn | Pipeline | |
tensorflow2_keras | TensorFlow, Keras | MNIST | Notebook |
tensorflow2_native | TensforFlow | MNIST | Notebook |
xgboost | XGBoost | DMatrix | |
flax/MNIST | Flax | MNIST | gRPC, Testing |
triton/onnx | ONNX | YOLOv5 | Triton Inference Server, gRPC, Python SDK (Containerization, Serve, Build) |
triton/pytorch | Torchscript | YOLOv5 | Triton Inference Server, gRPC, Python SDK (Containerization, Serve, Build) |
triton/tensorflow | Tensorflow | YOLOv5 | Triton Inference Server, gRPC, Python SDK (Containerization, Serve, Build) |
kubeflow | XGBoost | Fraud Detection | Kubeflow, Notebook |
If you have issues running these projects or have suggestions for improvement, use Github Issues 🐱
If you are interested in contributing new projects to this repo, let's talk 🥰 - Join us on Slack and share your idea in #bentoml-contributors channel
Before you create a Pull Request, make sure:
- Follow the basic structures and naming conventions of other existing example projects
- Ensure your project runs with the latest version of BentoML
For legacy version prior to v1.0.0, see the 0.13-LTS branch.