This repository contains a mixed precision version of
lodestones/taggerine.
The backbone weights are converted to bf16 and the projection head weights are kept in fp32.
Why? – Because the original ReadMe states that the backbone was trained in bf16, so I'm thinking keeping it in fp32 is waste of storage space and bandwidth depending on situation.
There are full bf16 and full fp8 versions
here for those interested.
A multi-label image tagger trained on
e621 and
Danbooru annotations, using a
DINOv3 ViT-H/16+
backbone fine-tuned end-to-end with a single linear projection head.
1pip install torch torchvision safetensors Pillow requests \
2 python-multipart fastapi uvicorn jinja2 aiofiles
1huggingface-cli download lodestones/taggerine \
2 tagger_proto.safetensors \
3 tagger_vocab_with_categories_and_alias_updated.json \
4 tagger_ui_server.py \
5 inference_tagger_standalone.py \
6 --local-dir .
1huggingface-cli download lodestones/taggerine \
2 --include "tagger_ui/**" \
3 --local-dir .
1python tagger_ui_server.py \
2 --checkpoint tagger_proto.safetensors \
3 --vocab tagger_vocab_with_categories_and_alias_updated.json \
4 --port 7860
5# → open http://localhost:7860
1python tagger_ui_server.py \
2 --checkpoint tagger_proto.safetensors \
3 --vocab tagger_vocab_with_categories_and_alias_updated.json \
4 --device cpu \
5 --port 7860
1python inference_tagger_standalone.py \
2 --checkpoint tagger_proto.safetensors \
3 --vocab tagger_vocab_with_categories_and_alias_updated.json \
4 --images photo.jpg \
5 --topk 30