Spaces:
Sleeping
Sleeping
| title: Model Speed Comparator | |
| emoji: π | |
| colorFrom: blue | |
| colorTo: purple | |
| sdk: docker | |
| app_port: 8000 | |
| pinned: false | |
| # Model Speed Comparator | |
| Compare PyTorch baseline vs ONNX vs INT8 Quantized inference β same model, same prediction, dramatically different performance. | |
| Built to demonstrate real-world AI inference optimization techniques used in production ML systems and AI accelerator pipelines. | |
| ## What It Does | |
| Takes any text input and runs it through 3 versions of the same NLP model (DistilBERT sentiment classifier): | |
| | Variant | Format | What changes | | |
| |---|---|---| | |
| | Baseline | PyTorch .bin | Standard HuggingFace model, no optimization | | |
| | ONNX | .onnx | Exported + graph-optimized by ONNX Runtime | | |
| | Quantized | INT8 .onnx | Weights compressed from FP32 to INT8 | | |
| ## Key Results (CPU) | |
| | Variant | Latency | Size | vs Baseline | | |
| |---|---|---|---| | |
| | PyTorch Baseline | 5594ms | 268MB | 1x | | |
| | ONNX | 547ms | 255MB | 10x faster | | |
| | INT8 Quantized | 26ms | 64MB | 213x faster, 4x smaller | | |
| ## Setup | |
| ```bash | |
| git clone https://github.com/Mridul0603/Model-Speed-Comparator | |
| cd Model-Speed-Comparator | |
| pip install -r requirements.txt | |
| uvicorn app.main:app --reload --port 8000 | |
| ``` | |
| Open http://localhost:8000 | |
| ## Tech Stack | |
| - FastAPI | |
| - HuggingFace Transformers | |
| - ONNX Runtime | |
| - Optimum | |
| - Docker | |
| ## API | |
| POST /compare - runs all 3 variants and returns latency comparison | |
| POST /benchmark - runs 20x stress test with p95 stats | |
| GET /history - last 10 comparisons | |
| GET /stats - session aggregate stats | |
| GET /health - health check | |