Model Serving Made Easy

pypi_status downloads actions_status documentation_status join_slack

BentoML let you create machine learning powered prediction service in minutes and bridges the gap between data science and DevOps.

Why BentoML

  • The easiest way to get your ML models into production.

  • High performance model serving, all in Python.

  • Package your model once and deploy it anywhere.

  • Support all major ML model training frameworks.

Getting Started

  • Quickstart guide will show you a simple example of using BentoML in action. In under 10 minutes, you’ll be able to serve your ML model over an HTTP API endpoint, and build a docker image that is ready to be deployed in production.

  • Main concepts will give a comprehensive tour of BentoML’s components and introduce you to its philosophy. After reading, you will see what drives BentoML’s design, and know what bento and runner stands for.

  • Playground notebook gets your hands dirty in a notebook environment, for you to try out all the core features in BentoML.

  • ML frameworks lays out best practices and example usages by the ML framework used for training models.

  • Advanced guides show cases advanced features in BentoML, including GPU support, inference graph, monitoring, and customizing docker environment etc.


  • To report a bug or suggest a feature request, use GitHub Issues.

  • For other discussions, use Github Discussions.

  • To receive release announcements, please subscribe to our mailing list or join us on Slack.


There are many ways to contribute to the project:

  • If you have any feedback on the project, share it with the community in Github Discussions of this project.

  • Report issues you’re facing and “Thumbs up” on issues and feature requests that are relevant to you.

  • Investigate bugs and reviewing other developer’s pull requests.

  • Contributing code or documentation to the project by submitting a Github pull request. See the development guide.

  • See more in the contributing guide.

Usage Reporting

BentoML by default collects anonymous usage data using Amplitude. It only collects BentoML library’s own actions and parameters, no user or model data will be collected. Here is the code that does it.

This helps the BentoML team to understand how the community is using this tool and what to build next. You can easily opt-out of usage tracking by running the BentoML commands with the –do-not-track option.

> bentoml [command] --do-not-track

You can also opt-out via setting environment variable BENTOML_DO_NOT_TRACK=True