Understand how textactually feels.
A fine-tuned transformer that classifies text across 27 emotion categories with confidence scoring โ built on Google's GoEmotions dataset.
Emotion Classes
All 27 Emotions, Detected
From joy to remorse โ the model identifies the full spectrum of human emotion.
How it works
Five steps from raw text to emotion prediction.
Input Text
Type or paste any text
โTokenization
AutoTokenizer splits text into subwords
โBERT Forward Pass
12 transformer layers process contextual embeddings
โSigmoid Output
27 independent probabilities, one per emotion class
โTop Prediction
Highest-confidence emotion + score returned
Features
Built for accuracy.
Everything that makes this model production-ready.
Real-time Inference
Sub-100ms predictions via async FastAPI + Uvicorn
27 Emotion Classes
Full GoEmotions taxonomy โ from joy to embarrassment
Multi-label Output
Text can carry multiple emotions simultaneously
Confidence Scoring
Per-class sigmoid probabilities, not just top-1
BERT Backbone
DistilBERT fine-tuned on 58k annotated Reddit comments
REST API
JSON in, JSON out โ integrate with any stack
Tech Stack
Everything under the hood.
Model / ML
PyTorch
Model training & inference
HuggingFace Transformers
AutoModel, AutoTokenizer
GoEmotions Dataset
58k Reddit comments, 27 labels
BERT / DistilBERT
Pretrained transformer backbone
Sigmoid Multi-label
Independent probability per class
Backend / Infra
FastAPI
Async Python API server
Uvicorn
ASGI production server
HuggingFace Hub
Model weights hosting
Python 3.11
Runtime environment
Docker
Containerised deployment
See it in action.
Paste any text and watch the model detect emotions in real time.
Live model ยท GoEmotions trained ยท No signup