← all repositories
HumanSignal/label-studio-ml-backend

Label Studio's ML backend: 24 pre-built wrappers for the lazy annotator

A collection of Docker-ready adapters that turn popular ML models into web servers for automated or interactive labeling inside Label Studio.

1.1k stars Python ML FrameworksData Tooling
label-studio-ml-backend
Velocity · 7d
+0.5
★ / day
Trend
steady
star history

What it does

This repo is essentially plumbing: an SDK plus two dozen example implementations that wrap ML models (YOLO, SAM 2, BERT, EasyOCR, etc.) into small web servers. Plug one into a running Label Studio instance and it can pre-annotate data, respond interactively as you label, or even retrain on your annotations. Each example is a docker-compose up away.

The interesting bit

The value isn’t any single model—it’s the uniformity. Every wrapper speaks the same HTTP contract to Label Studio, so swapping BERT for a Hugging Face LLM or replacing Tesseract with PaddleOCR is mostly a matter of changing a directory name. The README also quietly admits when this whole architecture is overkill: if you just need static pre-annotations, import them directly and skip the server.

Key highlights

  • 24 model examples spanning OCR, NER, object detection, segmentation, LLM inference, and time-series
  • Three integration modes: pre-annotation, interactive (real-time predictions while labeling), and training
  • CLI scaffolding (label-studio-ml create) generates boilerplate Dockerfile, WSGI shim, and model.py for custom models
  • Most examples need zero extra configuration; a handful require API keys (OpenAI, Google CSE, IBM Docling)

Caveats

  • The WatsonX example has a typo in its path (/exampels/watsonx)—small, but visible
  • Several models support only one or two of the three modes; check the matrix before picking one

Verdict

Grab this if you’re already using Label Studio and want to automate labeling without writing HTTP glue. Skip it if you just need one-off predictions or aren’t using Label Studio at all.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.