Master LLMs with our FREE course in collaboration with Activeloop & Intel Disruptor Initiative. Join now!


ONNX Unleashed: Training and Optimizing BERT Models for Streamlit Web Apps
Artificial Intelligence   Data Science   Latest   Machine Learning

ONNX Unleashed: Training and Optimizing BERT Models for Streamlit Web Apps

Last Updated on February 1, 2024 by Editorial Team

Author(s): Marcello Politi

Originally published on Towards AI.

Learn to quantize and deploy your Deep Learning model with ONNX
Photo by 愚木混株 cdd20 on Unsplash

In this article, I want to accomplish something very simple: build a web app that recognizes an emotion given a sentence. In doing this though we will see how to train a transformer-based model, convert it to ONNX format, quantize it, and run it from the frontend using Streamlit.

You can tun the following scripts using Deepnote: a cloud-based notebook that’s great for collaborative data science projects, and good for prototyping.

Optimizing the model with techniques such as quantization may be a good idea if we can maintain good performance, as it will improve the response speed, and we can create a product with lower latency and ensure greater user satisfaction.

We use a BERT-based model for emotion detection: anger, fear, joy, love, sadness, and surprise.

This is a model released by Microsoft, which is a distilled version of BERT.


We will heavily use the hugging face APIs to train this model on this dataset.

Let’s start by installing the needed libraries. We are going to use a lot of the transformers and ONNX ones.

!pip install transformers[torch]!pip install datasets onnx onnxruntime !pip install accelerate -U

All the imports we need:

from datasets import load_datasetfrom transformers import AutoTokenizerimport torchfrom transformers import AutoModelForSequenceClassificationimport… Read the full blog for free on Medium.

Join thousands of data leaders on the AI newsletter. Join over 80,000 subscribers and keep up to date with the latest developments in AI. From research to projects and ideas. If you are building an AI startup, an AI-related product, or a service, we invite you to consider becoming a sponsor.

Published via Towards AI

Feedback ↓