🚀 WD SwinV2 Tagger v3 with 🤗 transformers
本项目将 SmilingWolf/wd-swinv2-tagger-v3 模型转换为了transformers库的格式,可用于图像分类任务。
🚀 快速开始
点击下面的链接,在Colab中体验该模型:

📦 安装指南
使用以下命令安装transformers库:
pip install transformers
💻 使用示例
基础用法
使用pipeline
进行图像分类:
from transformers import pipeline
pipe = pipeline(
"image-classification",
model="p1atdev/wd-swinv2-tagger-v3-hf",
trust_remote_code=True,
)
print(pipe("sample.webp", top_k=15))
高级用法
使用AutoModel
进行图像分类:
from PIL import Image
import numpy as np
import torch
from transformers import (
AutoImageProcessor,
AutoModelForImageClassification,
)
MODEL_NAME = "p1atdev/wd-swinv2-tagger-v3-hf"
model = AutoModelForImageClassification.from_pretrained(
MODEL_NAME,
)
processor = AutoImageProcessor.from_pretrained(MODEL_NAME, trust_remote_code=True)
image = Image.open("sample.webp")
inputs = processor.preprocess(image, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs.to(model.device, model.dtype))
logits = torch.sigmoid(outputs.logits[0])
results = {model.config.id2label[i]: logit.float() for i, logit in enumerate(logits)}
results = {
k: v for k, v in sorted(results.items(), key=lambda item: item[1], reverse=True) if v > 0.35
}
print(results)
使用🤗 Optimum加速
使用🤗 Optimum可以使模型推理速度提升约30%,模型大小减少约50%,但准确率会略有下降。
pip install optimum[onnxruntime]
-from transformers import pipeline
+from optimum.pipelines import pipeline
pipe = pipeline(
"image-classification",
model="p1atdev/wd-swinv2-tagger-v3-hf",
trust_remote_code=True,
)
print(pipe("sample.webp", top_k=15))
#[{'label': '1girl', 'score': 0.9966088533401489},
# {'label': 'solo', 'score': 0.9740601778030396},
# {'label': 'dress', 'score': 0.9618403911590576},
# {'label': 'hat', 'score': 0.9563733339309692},
# {'label': 'outdoors', 'score': 0.945336639881134},
# ...
📚 详细文档
所有评级标签都有前缀 rating:
,角色标签都有前缀 character:
。
- 评级标签:
rating:general
, rating:sensitive
, ...
- 角色标签:
character:frieren
, character:hatsune miku
, ...
📄 许可证
本项目使用 apache-2.0
许可证。
属性 |
详情 |
模型类型 |
WD SwinV2 Tagger v3 |
基础模型 |
SmilingWolf/wd-swinv2-tagger-v3 |