narugo1992 commited on
Commit
e8e07f4
·
verified ·
0 Parent(s):

Squash 'spaces/animetimm/dbv4-full-playground/.'

Browse files
Files changed (4) hide show
  1. .gitattributes +35 -0
  2. README.md +14 -0
  3. app.py +68 -0
  4. requirements.txt +6 -0
.gitattributes ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
README.md ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Dbv4 Full Tagger Playground (dbv4-full)
3
+ emoji: 🏷️
4
+ colorFrom: blue
5
+ colorTo: purple
6
+ sdk: gradio
7
+ sdk_version: 5.29.1
8
+ app_file: app.py
9
+ pinned: true
10
+ short_description: Tag images using pretrained dbv4-full tagger models
11
+ ---
12
+
13
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
14
+
app.py ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from typing import Optional
2
+
3
+ import gradio as gr
4
+ from hfutils.repository import hf_hub_repo_url
5
+ from imgutils.generic import MultiLabelTIMMModel
6
+
7
+ KNOWN_MODELS = ['animetimm/caformer_b36.dbv4-full',
8
+ 'animetimm/caformer_m36.dbv4-full',
9
+ 'animetimm/caformer_s18.dbv4-full',
10
+ 'animetimm/caformer_s36.dbv4-full',
11
+ 'animetimm/convnext_base.dbv4-full',
12
+ 'animetimm/eva02_large_patch14_448.dbv4-full',
13
+ 'animetimm/mobilenetv3_large_100.dbv4-full',
14
+ 'animetimm/mobilenetv3_large_100.dbv4-full.r224',
15
+ 'animetimm/mobilenetv3_large_150d.dbv4-full',
16
+ 'animetimm/mobilenetv4_conv_aa_large.dbv4-full',
17
+ 'animetimm/mobilenetv4_conv_small.dbv4-full',
18
+ 'animetimm/mobilenetv4_conv_small_050.dbv4-full',
19
+ 'animetimm/mobilevitv2_200.dbv4-full',
20
+ 'animetimm/resnet18.dbv4-full',
21
+ 'animetimm/resnet34.dbv4-full',
22
+ 'animetimm/resnet50.dbv4-full',
23
+ 'animetimm/resnet101.dbv4-full',
24
+ 'animetimm/resnet152.dbv4-full',
25
+ 'animetimm/swinv2_base_window8_256.dbv4-full',
26
+ 'animetimm/vit_base_patch16_224.dbv4-full']
27
+ SPECIAL_MODELS = {'Recommended': 'animetimm/caformer_b36.dbv4-full',
28
+ 'Lightweight': 'animetimm/mobilenetv4_conv_aa_large.dbv4-full',
29
+ 'Classic EVA02': 'animetimm/eva02_large_patch14_448.dbv4-full',
30
+ 'Classic SwinV2': 'animetimm/swinv2_base_window8_256.dbv4-full'}
31
+
32
+
33
+ def render_model_demo(repo_id, label: Optional[str] = None):
34
+ label = label or repo_id.split('/')[-1]
35
+ with gr.Tab(label):
36
+ model = MultiLabelTIMMModel(repo_id=repo_id)
37
+
38
+ with gr.Row():
39
+ with gr.Column():
40
+ repo_url = hf_hub_repo_url(repo_id=repo_id, repo_type='model')
41
+ gr.Markdown(f'This is the quick demo for tagger model [{repo_id}]({repo_url}).')
42
+
43
+ with gr.Row():
44
+ model.make_ui()
45
+
46
+
47
+ if __name__ == '__main__':
48
+ with gr.Blocks() as demo:
49
+ with gr.Row():
50
+ with gr.Column():
51
+ gr.HTML(f'<h2 style="text-align: center;">Tagger Playground For Dbv4 Full</h2>')
52
+ gr.Markdown(f'This is the playground for taggers trained on [animetimm/danbooru-wdtagger-v4-w640-ws-full](https://huggingface.co/datasets/animetimm/danbooru-wdtagger-v4-w640-ws-full).'
53
+ f'Powered by `dghs-imgutils`\'s quick demo module.')
54
+ gr.Markdown(f'Official ranklist is on [animetimm/dbv4-full-ranklist](https://huggingface.co/spaces/animetimm/dbv4-full-ranklist).')
55
+
56
+ with gr.Row():
57
+ with gr.Tabs():
58
+ _exist_models = set()
59
+ for t, repo_id in SPECIAL_MODELS.items():
60
+ render_model_demo(repo_id, f'{repo_id.split("/")[-1]} ({t})')
61
+ _exist_models.add(repo_id)
62
+
63
+ for repo_id in KNOWN_MODELS:
64
+ if repo_id not in _exist_models:
65
+ render_model_demo(repo_id)
66
+ _exist_models.add(repo_id)
67
+
68
+ demo.launch()
requirements.txt ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ gradio==5.29.1
2
+ dghs-imgutils>=0.17
3
+ numpy
4
+ pandas
5
+ pillow
6
+ onnxruntime