bluzen-tagger-v1
All models
Image Classification304M paramsONNX48k412Updated 28 August 2026
bluzen-tagger-v1
A multi-label tagger for illustration, trained over a 12,000-tag vocabulary on the Aurora corpus. Built to hold up on the long tail, where general-purpose vision models collapse into the two hundred most common labels.
Intended use
Search indexing, dataset annotation and dedup pipelines. It is not a moderation tool, and the safety-adjacent tags in the vocabulary are not calibrated for that.
How to use it
from bluzen_tagger import Tagger
tagger = Tagger.from_pretrained("bluzen/bluzen-tagger-v1")
tags = tagger("illustration.png", threshold="calibrated")
Passing threshold="calibrated" uses the published per-tag cutoffs. A single
global threshold is a compromise between twelve thousand differently-calibrated
heads, and it costs you the tail.
Evaluation
Measured on tagbench-2026, stratified by tag frequency.
| Band | Tags | Precision | Recall | F1 |
|---|---|---|---|---|
| Head | 200 | 0.86 | 0.81 | 0.83 |
| Body | 2,300 | 0.74 | 0.68 | 0.71 |
| Tail | 9,500 | 0.51 | 0.39 | 0.44 |
The tail number is the one that matters, and it is the one we are still working on.
Limitations
- Trained on illustration. Performance on photographs is poor and unmeasured.
- Tags below roughly 40 training examples are effectively noise.
- The vocabulary carries the biases of its source boorus. We have documented the worst of them in the dataset card rather than silently pruning.