Spaces:
Running
on
Zero
Running
on
Zero
Upload 10 files
Browse files- app.py +16 -16
- lora_dict.json +266 -0
- tagger.py +52 -15
app.py
CHANGED
|
@@ -1595,6 +1595,8 @@ with gr.Blocks(theme="NoCrypt/miku@>=1.2.2", elem_id="main", css=CSS) as app:
|
|
| 1595 |
use_textual_inversion_gui.change(set_textual_inversion_prompt, [use_textual_inversion_gui, prompt_gui, neg_prompt_gui, prompt_syntax_gui], [prompt_gui, neg_prompt_gui])
|
| 1596 |
|
| 1597 |
generate_from_image_btn_gui.click(
|
|
|
|
|
|
|
| 1598 |
predict_tags_wd,
|
| 1599 |
[input_image_gui, prompt_gui, image_algorithms, general_threshold_gui, character_threshold_gui],
|
| 1600 |
[series_dbt, character_dbt, prompt_gui, copy_button_dbt],
|
|
@@ -1755,7 +1757,6 @@ with gr.Blocks(theme="NoCrypt/miku@>=1.2.2", elem_id="main", css=CSS) as app:
|
|
| 1755 |
image_algorithms = gr.CheckboxGroup(["Use WD Tagger"], label="Algorithms", value=["Use WD Tagger"], visible=False)
|
| 1756 |
keep_tags = gr.Radio(label="Remove tags leaving only the following", choices=["body", "dress", "all"], value="all")
|
| 1757 |
generate_from_image_btn = gr.Button(value="GENERATE TAGS FROM IMAGE", size="lg", variant="primary")
|
| 1758 |
-
|
| 1759 |
with gr.Group():
|
| 1760 |
with gr.Row():
|
| 1761 |
input_character = gr.Textbox(label="Character tags", placeholder="hatsune miku")
|
|
@@ -1778,21 +1779,18 @@ with gr.Blocks(theme="NoCrypt/miku@>=1.2.2", elem_id="main", css=CSS) as app:
|
|
| 1778 |
dummy_np = gr.Textbox(label="Negative prompt", value="", visible=False)
|
| 1779 |
recom_animagine = gr.Textbox(label="Animagine reccomended prompt", value="Animagine", visible=False)
|
| 1780 |
recom_pony = gr.Textbox(label="Pony reccomended prompt", value="Pony", visible=False)
|
| 1781 |
-
|
| 1782 |
-
|
| 1783 |
-
|
| 1784 |
-
|
| 1785 |
-
|
| 1786 |
-
|
| 1787 |
-
|
| 1788 |
-
|
| 1789 |
-
|
| 1790 |
-
|
| 1791 |
-
|
| 1792 |
-
|
| 1793 |
-
copy_btn_pony = gr.Button(value="Copy to clipboard", size="sm", interactive=False)
|
| 1794 |
-
copy_prompt_btn_pony = gr.Button(value="Copy to primary prompt", size="sm", interactive=False)
|
| 1795 |
-
|
| 1796 |
description_ui()
|
| 1797 |
|
| 1798 |
translate_input_prompt_button.click(translate_prompt, inputs=[input_general], outputs=[input_general], queue=False)
|
|
@@ -1800,6 +1798,8 @@ with gr.Blocks(theme="NoCrypt/miku@>=1.2.2", elem_id="main", css=CSS) as app:
|
|
| 1800 |
translate_input_prompt_button.click(translate_prompt, inputs=[input_copyright], outputs=[input_copyright], queue=False)
|
| 1801 |
|
| 1802 |
generate_from_image_btn.click(
|
|
|
|
|
|
|
| 1803 |
predict_tags_wd,
|
| 1804 |
[input_image, input_general, image_algorithms, general_threshold, character_threshold],
|
| 1805 |
[input_copyright, input_character, input_general, copy_input_btn],
|
|
|
|
| 1595 |
use_textual_inversion_gui.change(set_textual_inversion_prompt, [use_textual_inversion_gui, prompt_gui, neg_prompt_gui, prompt_syntax_gui], [prompt_gui, neg_prompt_gui])
|
| 1596 |
|
| 1597 |
generate_from_image_btn_gui.click(
|
| 1598 |
+
lambda: ("", "", ""), None, [series_dbt, character_dbt, prompt_gui], queue=False,
|
| 1599 |
+
).success(
|
| 1600 |
predict_tags_wd,
|
| 1601 |
[input_image_gui, prompt_gui, image_algorithms, general_threshold_gui, character_threshold_gui],
|
| 1602 |
[series_dbt, character_dbt, prompt_gui, copy_button_dbt],
|
|
|
|
| 1757 |
image_algorithms = gr.CheckboxGroup(["Use WD Tagger"], label="Algorithms", value=["Use WD Tagger"], visible=False)
|
| 1758 |
keep_tags = gr.Radio(label="Remove tags leaving only the following", choices=["body", "dress", "all"], value="all")
|
| 1759 |
generate_from_image_btn = gr.Button(value="GENERATE TAGS FROM IMAGE", size="lg", variant="primary")
|
|
|
|
| 1760 |
with gr.Group():
|
| 1761 |
with gr.Row():
|
| 1762 |
input_character = gr.Textbox(label="Character tags", placeholder="hatsune miku")
|
|
|
|
| 1779 |
dummy_np = gr.Textbox(label="Negative prompt", value="", visible=False)
|
| 1780 |
recom_animagine = gr.Textbox(label="Animagine reccomended prompt", value="Animagine", visible=False)
|
| 1781 |
recom_pony = gr.Textbox(label="Pony reccomended prompt", value="Pony", visible=False)
|
| 1782 |
+
generate_btn = gr.Button(value="GENERATE TAGS", size="lg", variant="primary")
|
| 1783 |
+
with gr.Row():
|
| 1784 |
+
with gr.Group():
|
| 1785 |
+
output_text = gr.TextArea(label="Output tags", interactive=False, show_copy_button=True)
|
| 1786 |
+
with gr.Row():
|
| 1787 |
+
copy_btn = gr.Button(value="Copy to clipboard", size="sm", interactive=False)
|
| 1788 |
+
copy_prompt_btn = gr.Button(value="Copy to primary prompt", size="sm", interactive=False)
|
| 1789 |
+
with gr.Group():
|
| 1790 |
+
output_text_pony = gr.TextArea(label="Output tags (Pony e621 style)", interactive=False, show_copy_button=True)
|
| 1791 |
+
with gr.Row():
|
| 1792 |
+
copy_btn_pony = gr.Button(value="Copy to clipboard", size="sm", interactive=False)
|
| 1793 |
+
copy_prompt_btn_pony = gr.Button(value="Copy to primary prompt", size="sm", interactive=False)
|
|
|
|
|
|
|
|
|
|
| 1794 |
description_ui()
|
| 1795 |
|
| 1796 |
translate_input_prompt_button.click(translate_prompt, inputs=[input_general], outputs=[input_general], queue=False)
|
|
|
|
| 1798 |
translate_input_prompt_button.click(translate_prompt, inputs=[input_copyright], outputs=[input_copyright], queue=False)
|
| 1799 |
|
| 1800 |
generate_from_image_btn.click(
|
| 1801 |
+
lambda: ("", "", ""), None, [input_copyright, input_character, input_general], queue=False,
|
| 1802 |
+
).success(
|
| 1803 |
predict_tags_wd,
|
| 1804 |
[input_image, input_general, image_algorithms, general_threshold, character_threshold],
|
| 1805 |
[input_copyright, input_character, input_general, copy_input_btn],
|
lora_dict.json
CHANGED
|
@@ -132,6 +132,13 @@
|
|
| 132 |
"https://civitai.com/models/565994",
|
| 133 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/66feca06-6a87-4975-9c76-29b1cc6fcc23/width=450/19026855.jpeg"
|
| 134 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 135 |
"2FingersSDXL_v03": [
|
| 136 |
"fingering pussy",
|
| 137 |
"SDXL 1.0",
|
|
@@ -195,6 +202,13 @@
|
|
| 195 |
"https://civitai.com/models/562782",
|
| 196 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/6851f9dc-6830-4953-aacb-5bbad26de292/width=450/18831154.jpeg"
|
| 197 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 198 |
"ALTXL_001_4": [
|
| 199 |
"",
|
| 200 |
"SDXL 1.0",
|
|
@@ -230,6 +244,13 @@
|
|
| 230 |
"https://civitai.com/models/539225",
|
| 231 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/1cd30680-93ac-4741-a86c-01e011ea216d/width=450/17279766.jpeg"
|
| 232 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 233 |
"Age_Slider_V2_alpha1_0_rank4_noxattn_last": [
|
| 234 |
"",
|
| 235 |
"Pony",
|
|
@@ -321,6 +342,13 @@
|
|
| 321 |
"https://civitai.com/models/368121",
|
| 322 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/0134ca56-bada-42aa-8f5e-312f68239a45/width=450/8572769.jpeg"
|
| 323 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 324 |
"BishoujoXL_P6_lokr_V4302": [
|
| 325 |
"",
|
| 326 |
"Pony",
|
|
@@ -461,6 +489,13 @@
|
|
| 461 |
"https://civitai.com/models/599199",
|
| 462 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/ed5f0917-fbaa-4b9c-8a17-8d34f558038d/width=450/21266476.jpeg"
|
| 463 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 464 |
"Competitive_Swimsuit_XL_V1_0": [
|
| 465 |
"competitive swimsuit",
|
| 466 |
"SDXL 1.0",
|
|
@@ -937,6 +972,13 @@
|
|
| 937 |
"https://civitai.com/models/459565",
|
| 938 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/110e5c12-2cd7-42d8-bb15-24c7d00751d2/width=450/12716381.jpeg"
|
| 939 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 940 |
"Girl_Peeping": [
|
| 941 |
"peeping / watching / female pervert",
|
| 942 |
"Pony",
|
|
@@ -986,6 +1028,13 @@
|
|
| 986 |
"https://civitai.com/models/535966",
|
| 987 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a7f58842-13be-40e7-a65d-0abe77106382/width=450/17057493.jpeg"
|
| 988 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 989 |
"Hankyu3000_SDXL_V1": [
|
| 990 |
"hankyu3000",
|
| 991 |
"SDXL 1.0",
|
|
@@ -1112,6 +1161,13 @@
|
|
| 1112 |
"https://civitai.com/models/428790",
|
| 1113 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/336d89fd-db17-483d-b408-8f99be19f9d1/width=450/11188990.jpeg"
|
| 1114 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1115 |
"Ichigo_Mashimaro_XL": [
|
| 1116 |
"Nobue Itou / Chika Itou / Miu Matsuoka / Matsuri Sakuragi / Ana Coppola",
|
| 1117 |
"SDXL 1.0",
|
|
@@ -1252,6 +1308,20 @@
|
|
| 1252 |
"https://civitai.com/models/579435",
|
| 1253 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/3089540a-d132-41e9-87d4-c5c8fce6d499/width=450/19912464.jpeg"
|
| 1254 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1255 |
"Lift_Up_Dress": [
|
| 1256 |
"LIFT UP DRESS / CURTSEY / FROM BELOW / FROM BACK",
|
| 1257 |
"SDXL 1.0",
|
|
@@ -1399,6 +1469,13 @@
|
|
| 1399 |
"https://civitai.com/models/562753",
|
| 1400 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/6f136e74-5105-4fc8-9970-8601566df7d1/width=450/18834618.jpeg"
|
| 1401 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1402 |
"MiniAXV9XLScreencap": [
|
| 1403 |
"Anime Screencap",
|
| 1404 |
"Pony",
|
|
@@ -1525,6 +1602,13 @@
|
|
| 1525 |
"https://civitai.com/models/540142",
|
| 1526 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/b43d779b-ccf2-4ce9-8298-2756cb13fba4/width=450/17343433.jpeg"
|
| 1527 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1528 |
"PDXL-RetroV2": [
|
| 1529 |
"retro artstyle",
|
| 1530 |
"Pony",
|
|
@@ -1553,6 +1637,13 @@
|
|
| 1553 |
"https://civitai.com/models/569364",
|
| 1554 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9aeef4dd-804d-4895-baa5-43a4e60b8b86/width=450/19243523.jpeg"
|
| 1555 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1556 |
"POV_holding_money": [
|
| 1557 |
"",
|
| 1558 |
"Pony",
|
|
@@ -1833,6 +1924,13 @@
|
|
| 1833 |
"https://civitai.com/models/137615",
|
| 1834 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/3879c6bc-58aa-46cb-add2-523ff21fb550/width=450/10999075.jpeg"
|
| 1835 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1836 |
"SPF2s": [
|
| 1837 |
"Svper",
|
| 1838 |
"Pony",
|
|
@@ -1931,6 +2029,13 @@
|
|
| 1931 |
"https://civitai.com/models/517826",
|
| 1932 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9a382d16-ef66-493a-933c-4fcac09e8fff/width=450/15930188.jpeg"
|
| 1933 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1934 |
"Spooning_Positions": [
|
| 1935 |
" 5p00n1ng / boy and girl in spooning position, boy behind girl, 1boy, 1girl, male b1g5p00n, / l41d_0u7 / 1_l3gup, one leg up / f3741_p05, fetal position / br347_6r4b, breast grab / w41s7_6r4b / 7h16h_6r4b / 4nk13_6r4b ",
|
| 1936 |
"Pony",
|
|
@@ -1980,6 +2085,13 @@
|
|
| 1980 |
"https://civitai.com/models/543007",
|
| 1981 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/32bb611d-6843-4197-844e-d8ddc1aabf6e/width=450/18288434.jpeg"
|
| 1982 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1983 |
"Standing_DP_SDXL": [
|
| 1984 |
" 1woman, vaginal, anal, suspended congress, 2males, 2penises, standing sex, carrying, carrying partner, suspended, double penetration, mmf_threesome, standing_double_penetration / <lora:Standing_DP_SDXL-v1:0.7> / explicit female nudity, explicity male nudity, / cum, semen, sweat, steam",
|
| 1985 |
"SDXL 1.0",
|
|
@@ -2176,6 +2288,13 @@
|
|
| 2176 |
"https://civitai.com/models/87049",
|
| 2177 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/0faf8db6-2682-4a18-a92d-a6483b1bb289/width=450/11123630.jpeg"
|
| 2178 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2179 |
"Uterus_prolapse_LoRA_for_Pony_3_0": [
|
| 2180 |
"uterus prolapse",
|
| 2181 |
"Pony",
|
|
@@ -2309,6 +2428,20 @@
|
|
| 2309 |
"https://civitai.com/models/548344",
|
| 2310 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/aba9189c-2986-4919-9843-ff03c2d606a8/width=450/17938715.jpeg"
|
| 2311 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2312 |
"[hikari]missionary_holding_wrist_pony_v1": [
|
| 2313 |
"missionary_holding_wrist",
|
| 2314 |
"Pony",
|
|
@@ -2484,6 +2617,13 @@
|
|
| 2484 |
"https://civitai.com/models/593717",
|
| 2485 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/945b3a2e-8c70-4068-b45e-1e117c3d50ca/width=450/20829978.jpeg"
|
| 2486 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2487 |
"_sdxl-transchool-pony": [
|
| 2488 |
"transchool",
|
| 2489 |
"Pony",
|
|
@@ -2519,6 +2659,13 @@
|
|
| 2519 |
"https://civitai.com/models/516752",
|
| 2520 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/e48cb2fb-7aaf-4424-8ea7-acf2160290b9/width=450/17102038.jpeg"
|
| 2521 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2522 |
"akifn_pony_v2": [
|
| 2523 |
"",
|
| 2524 |
"Pony",
|
|
@@ -2855,6 +3002,13 @@
|
|
| 2855 |
"https://civitai.com/models/576402",
|
| 2856 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/d33233e7-8705-4661-bb3b-3f27483e8f3c/width=450/19720953.jpeg"
|
| 2857 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2858 |
"blowjob_face": [
|
| 2859 |
"pov, fellatio, oral, half closed eyes, ",
|
| 2860 |
"Pony",
|
|
@@ -2988,6 +3142,13 @@
|
|
| 2988 |
"https://civitai.com/models/558208",
|
| 2989 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/8fe2a91b-96dc-4f55-8c1f-646ebf8fe050/width=450/18547446.jpeg"
|
| 2990 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2991 |
"broken_condom_internal_cumshot-PD-1_0-pruned": [
|
| 2992 |
"broken condom internal cumshot",
|
| 2993 |
"Pony",
|
|
@@ -3667,6 +3828,13 @@
|
|
| 3667 |
"https://civitai.com/models/562864",
|
| 3668 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/8b75129f-9af1-458d-8a88-0eb816df00dc/width=450/18835386.jpeg"
|
| 3669 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3670 |
"fanningself_XL_v1": [
|
| 3671 |
"fanning self",
|
| 3672 |
"SDXL 1.0",
|
|
@@ -3912,6 +4080,13 @@
|
|
| 3912 |
"https://civitai.com/models/32541",
|
| 3913 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a02818c5-568b-4da2-a6f3-0c54f3fd604d/width=450/16910321.jpeg"
|
| 3914 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3915 |
"gyaruvXL1": [
|
| 3916 |
"gyaruv",
|
| 3917 |
"SDXL 1.0",
|
|
@@ -4171,6 +4346,13 @@
|
|
| 4171 |
"https://civitai.com/models/579451",
|
| 4172 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/ead4e9ab-9fa2-4413-860b-cfd94da88f03/width=450/19913105.jpeg"
|
| 4173 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4174 |
"human_onahole": [
|
| 4175 |
"human onahole,torso grab / rough sex",
|
| 4176 |
"Pony",
|
|
@@ -4213,6 +4395,20 @@
|
|
| 4213 |
"https://civitai.com/models/121579",
|
| 4214 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4d702d98-996e-478c-9e1d-0115852a3457/width=450/1899358.jpeg"
|
| 4215 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4216 |
"jirai_kei_XL_V1_0": [
|
| 4217 |
"jirai kei / pink shirt / black skirt / ribbon",
|
| 4218 |
"SDXL 1.0",
|
|
@@ -4304,6 +4500,13 @@
|
|
| 4304 |
"https://civitai.com/models/234887",
|
| 4305 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4d94a5a1-b7d2-40b7-b864-f112b26e09a7/width=450/4642510.jpeg"
|
| 4306 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4307 |
"kakikoori_SDXL_V2": [
|
| 4308 |
"kakikoori_red, food, cup, shaved ice, still life",
|
| 4309 |
"SDXL 1.0",
|
|
@@ -4395,6 +4598,13 @@
|
|
| 4395 |
"https://civitai.com/models/236038",
|
| 4396 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/dc7c2a65-32ba-4137-b725-b5415530ee47/width=450/6441240.jpeg"
|
| 4397 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4398 |
"kuragecut_v1": [
|
| 4399 |
"kuragecut",
|
| 4400 |
"SDXL 1.0",
|
|
@@ -4500,6 +4710,13 @@
|
|
| 4500 |
"https://civitai.com/models/562800",
|
| 4501 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/7d8047bb-e2e3-4e61-bfd9-36e13ecef008/width=450/18832543.jpeg"
|
| 4502 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4503 |
"leafumbrella_XL_v1": [
|
| 4504 |
"leaf umbrella",
|
| 4505 |
"SDXL 1.0",
|
|
@@ -4773,6 +4990,13 @@
|
|
| 4773 |
"https://civitai.com/models/455382",
|
| 4774 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/f85b95e6-f83f-4de4-8289-0f825d305cdf/width=450/12484731.jpeg"
|
| 4775 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4776 |
"microphone_stand": [
|
| 4777 |
"microphone stand, holding microphone stand, singing, open mouth",
|
| 4778 |
"Pony",
|
|
@@ -4927,6 +5151,13 @@
|
|
| 4927 |
"https://civitai.com/models/467118",
|
| 4928 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/11eced9f-d779-4138-a940-ad81a0b0454c/width=450/17635537.jpeg"
|
| 4929 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4930 |
"nsfw70": [
|
| 4931 |
"",
|
| 4932 |
"Pony",
|
|
@@ -5004,6 +5235,13 @@
|
|
| 5004 |
"https://civitai.com/models/339451",
|
| 5005 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/19736a32-8916-40f2-8163-54aca8563b22/width=450/7597428.jpeg"
|
| 5006 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 5007 |
"oksignXLv1": [
|
| 5008 |
"ok sign",
|
| 5009 |
"SDXL 1.0",
|
|
@@ -5221,6 +5459,13 @@
|
|
| 5221 |
"https://civitai.com/models/590441",
|
| 5222 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/06195e98-9e44-4d7a-b139-d1e5e4947e16/width=450/20630854.jpeg"
|
| 5223 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 5224 |
"peeing_underwater-05": [
|
| 5225 |
"peeing underwater",
|
| 5226 |
"Pony",
|
|
@@ -6411,6 +6656,13 @@
|
|
| 6411 |
"https://civitai.com/models/537445",
|
| 6412 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/ad654bb6-4edb-43a0-84ba-44e5cd96d12b/width=450/17342314.jpeg"
|
| 6413 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 6414 |
"tongue_around_penis": [
|
| 6415 |
"tongue_around_penis, licking penis, ",
|
| 6416 |
"Pony",
|
|
@@ -6782,6 +7034,13 @@
|
|
| 6782 |
"https://civitai.com/models/593599",
|
| 6783 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4813edb1-66cf-4482-9524-d03a4da30063/width=450/21514778.jpeg"
|
| 6784 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 6785 |
"waterslide_XL_v1": [
|
| 6786 |
"water slide",
|
| 6787 |
"SDXL 1.0",
|
|
@@ -6789,6 +7048,13 @@
|
|
| 6789 |
"https://civitai.com/models/406297",
|
| 6790 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/36d7f15a-b10b-4b5b-8b27-0e87a52a1a6a/width=450/10128067.jpeg"
|
| 6791 |
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 6792 |
"wedding_dress_XL_V1_0": [
|
| 6793 |
"wedding dress",
|
| 6794 |
"SDXL 1.0",
|
|
|
|
| 132 |
"https://civitai.com/models/565994",
|
| 133 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/66feca06-6a87-4975-9c76-29b1cc6fcc23/width=450/19026855.jpeg"
|
| 134 |
],
|
| 135 |
+
"1990's_PC_style_SDXL_v1": [
|
| 136 |
+
"1990's PC / 1990s_(style) / oekaki / retro_artstyle / oldfilm / halftone / jaggy_lines / 1980's anime / 1980s_(style)",
|
| 137 |
+
"SDXL 1.0",
|
| 138 |
+
"1990's PC game style",
|
| 139 |
+
"https://civitai.com/models/105369",
|
| 140 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/fcb5db04-51f8-4032-b041-2d892de65b45/width=450/22025810.jpeg"
|
| 141 |
+
],
|
| 142 |
"2FingersSDXL_v03": [
|
| 143 |
"fingering pussy",
|
| 144 |
"SDXL 1.0",
|
|
|
|
| 202 |
"https://civitai.com/models/562782",
|
| 203 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/6851f9dc-6830-4953-aacb-5bbad26de292/width=450/18831154.jpeg"
|
| 204 |
],
|
| 205 |
+
"7eleven_storefront_PONY_V1": [
|
| 206 |
+
"seveneleven, konbini, scenery, storefront, japan, scenery, convenience store, shop, building, outdoors, road, cityscape, city, sky, street, sign, lamppost, real world location",
|
| 207 |
+
"Pony",
|
| 208 |
+
"\u30b3\u30f3\u30d3\u30cb\u306e\u5916\u89b37 PONY",
|
| 209 |
+
"https://civitai.com/models/611755",
|
| 210 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/2fd43b8d-cd52-4935-b015-06533825ecb0/width=450/22035002.jpeg"
|
| 211 |
+
],
|
| 212 |
"ALTXL_001_4": [
|
| 213 |
"",
|
| 214 |
"SDXL 1.0",
|
|
|
|
| 244 |
"https://civitai.com/models/539225",
|
| 245 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/1cd30680-93ac-4741-a86c-01e011ea216d/width=450/17279766.jpeg"
|
| 246 |
],
|
| 247 |
+
"Age_Regression_PonyXL_Test": [
|
| 248 |
+
"AgeRegression / Oversized Clothes",
|
| 249 |
+
"Pony",
|
| 250 |
+
"[PonyXL] Age Regression (Concept)",
|
| 251 |
+
"https://civitai.com/models/620987",
|
| 252 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/f88e7690-c358-4f9c-962f-b31d4e6ea4c4/width=450/22633804.jpeg"
|
| 253 |
+
],
|
| 254 |
"Age_Slider_V2_alpha1_0_rank4_noxattn_last": [
|
| 255 |
"",
|
| 256 |
"Pony",
|
|
|
|
| 342 |
"https://civitai.com/models/368121",
|
| 343 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/0134ca56-bada-42aa-8f5e-312f68239a45/width=450/8572769.jpeg"
|
| 344 |
],
|
| 345 |
+
"Birthing": [
|
| 346 |
+
"birth",
|
| 347 |
+
"Pony",
|
| 348 |
+
"Give Birth",
|
| 349 |
+
"https://civitai.com/models/621212",
|
| 350 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/c9b50ab2-53e6-4a89-bf6d-929df3a3271d/width=450/22674633.jpeg"
|
| 351 |
+
],
|
| 352 |
"BishoujoXL_P6_lokr_V4302": [
|
| 353 |
"",
|
| 354 |
"Pony",
|
|
|
|
| 489 |
"https://civitai.com/models/599199",
|
| 490 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/ed5f0917-fbaa-4b9c-8a17-8d34f558038d/width=450/21266476.jpeg"
|
| 491 |
],
|
| 492 |
+
"Comic_Manga": [
|
| 493 |
+
"comic_manga / comic / english text / speech bubble",
|
| 494 |
+
"Pony",
|
| 495 |
+
"Comic Manga PonyXL",
|
| 496 |
+
"https://civitai.com/models/610948",
|
| 497 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/52002535-dcdf-4b72-8fae-c7a95dc252af/width=450/22212775.jpeg"
|
| 498 |
+
],
|
| 499 |
"Competitive_Swimsuit_XL_V1_0": [
|
| 500 |
"competitive swimsuit",
|
| 501 |
"SDXL 1.0",
|
|
|
|
| 972 |
"https://civitai.com/models/459565",
|
| 973 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/110e5c12-2cd7-42d8-bb15-24c7d00751d2/width=450/12716381.jpeg"
|
| 974 |
],
|
| 975 |
+
"Giant_Girl__KK": [
|
| 976 |
+
"kk_giantess",
|
| 977 |
+
"Pony",
|
| 978 |
+
"Giant Girl | KK_concept_01",
|
| 979 |
+
"https://civitai.com/models/607101",
|
| 980 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/dcd20560-f3c1-407e-b966-7062ee3c9798/width=450/21993362.jpeg"
|
| 981 |
+
],
|
| 982 |
"Girl_Peeping": [
|
| 983 |
"peeping / watching / female pervert",
|
| 984 |
"Pony",
|
|
|
|
| 1028 |
"https://civitai.com/models/535966",
|
| 1029 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a7f58842-13be-40e7-a65d-0abe77106382/width=450/17057493.jpeg"
|
| 1030 |
],
|
| 1031 |
+
"Hadouken": [
|
| 1032 |
+
"Hadouken, Kikoken, Fireball, Energy Ball, fighting, shockwave",
|
| 1033 |
+
"Pony",
|
| 1034 |
+
"Hadouken",
|
| 1035 |
+
"https://civitai.com/models/613938",
|
| 1036 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/255d2b55-7430-4fd5-94f7-476ea5d9246b/width=450/22207991.jpeg"
|
| 1037 |
+
],
|
| 1038 |
"Hankyu3000_SDXL_V1": [
|
| 1039 |
"hankyu3000",
|
| 1040 |
"SDXL 1.0",
|
|
|
|
| 1161 |
"https://civitai.com/models/428790",
|
| 1162 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/336d89fd-db17-483d-b408-8f99be19f9d1/width=450/11188990.jpeg"
|
| 1163 |
],
|
| 1164 |
+
"IKneel_pdxl_Incrs_v1": [
|
| 1165 |
+
"on one knee, full body, looking down, clenched hands, hand on ground, arm on knee",
|
| 1166 |
+
"Pony",
|
| 1167 |
+
"I kneel (Kneeling Vegeta) | Concept / Pose LoRA XL",
|
| 1168 |
+
"https://civitai.com/models/610071",
|
| 1169 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/3f6dcf2f-1abd-4d9e-9e5f-df370b79aeae/width=450/21922297.jpeg"
|
| 1170 |
+
],
|
| 1171 |
"Ichigo_Mashimaro_XL": [
|
| 1172 |
"Nobue Itou / Chika Itou / Miu Matsuoka / Matsuri Sakuragi / Ana Coppola",
|
| 1173 |
"SDXL 1.0",
|
|
|
|
| 1308 |
"https://civitai.com/models/579435",
|
| 1309 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/3089540a-d132-41e9-87d4-c5c8fce6d499/width=450/19912464.jpeg"
|
| 1310 |
],
|
| 1311 |
+
"Leaned_Back_Reverse_Cowgirl_pony-v2_0": [
|
| 1312 |
+
"lbrc, reverse cowgirl position,hetero,sex from behind",
|
| 1313 |
+
"Pony",
|
| 1314 |
+
"Leaned Back Reverse Cowgirl pony",
|
| 1315 |
+
"https://civitai.com/models/610465",
|
| 1316 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/8ef2c1eb-0fd3-4255-bf34-50eff3d49665/width=450/22023141.jpeg"
|
| 1317 |
+
],
|
| 1318 |
+
"Leaned_Back_Reverse_Cowgirl_pony-v2_1": [
|
| 1319 |
+
"lbrc, reverse cowgirl position,hetero,sex from behind",
|
| 1320 |
+
"Pony",
|
| 1321 |
+
"Leaned Back Reverse Cowgirl pony",
|
| 1322 |
+
"https://civitai.com/models/610465",
|
| 1323 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/b4f189dc-e269-49e2-be6d-b6ce9a259353/width=450/22086403.jpeg"
|
| 1324 |
+
],
|
| 1325 |
"Lift_Up_Dress": [
|
| 1326 |
"LIFT UP DRESS / CURTSEY / FROM BELOW / FROM BACK",
|
| 1327 |
"SDXL 1.0",
|
|
|
|
| 1469 |
"https://civitai.com/models/562753",
|
| 1470 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/6f136e74-5105-4fc8-9970-8601566df7d1/width=450/18834618.jpeg"
|
| 1471 |
],
|
| 1472 |
+
"Milking_bucket_lactation-000006": [
|
| 1473 |
+
"Bucket / Lactating into bucket / Breast milk",
|
| 1474 |
+
"Pony",
|
| 1475 |
+
"Milking bucket (lactation)",
|
| 1476 |
+
"https://civitai.com/models/622072",
|
| 1477 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/bbb01058-15a6-4a72-af23-a4db99fbaedf/width=450/22720212.jpeg"
|
| 1478 |
+
],
|
| 1479 |
"MiniAXV9XLScreencap": [
|
| 1480 |
"Anime Screencap",
|
| 1481 |
"Pony",
|
|
|
|
| 1602 |
"https://civitai.com/models/540142",
|
| 1603 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/b43d779b-ccf2-4ce9-8298-2756cb13fba4/width=450/17343433.jpeg"
|
| 1604 |
],
|
| 1605 |
+
"PDXL-CheekBulge-20": [
|
| 1606 |
+
"cheek bulge",
|
| 1607 |
+
"Pony",
|
| 1608 |
+
"PDXL-CheekBulge",
|
| 1609 |
+
"https://civitai.com/models/612839",
|
| 1610 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/1ca66d39-e310-43b6-a25b-88dc076725e1/width=450/22121952.jpeg"
|
| 1611 |
+
],
|
| 1612 |
"PDXL-RetroV2": [
|
| 1613 |
"retro artstyle",
|
| 1614 |
"Pony",
|
|
|
|
| 1637 |
"https://civitai.com/models/569364",
|
| 1638 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9aeef4dd-804d-4895-baa5-43a4e60b8b86/width=450/19243523.jpeg"
|
| 1639 |
],
|
| 1640 |
+
"POV_Unaligned_Paizuri_XL": [
|
| 1641 |
+
"pov unaligned paizuri",
|
| 1642 |
+
"Pony",
|
| 1643 |
+
"POV Asymetric Paizuri XL",
|
| 1644 |
+
"https://civitai.com/models/579227",
|
| 1645 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/dbaab072-e3a3-4f61-9a93-6326887b2cec/width=450/22255802.jpeg"
|
| 1646 |
+
],
|
| 1647 |
"POV_holding_money": [
|
| 1648 |
"",
|
| 1649 |
"Pony",
|
|
|
|
| 1924 |
"https://civitai.com/models/137615",
|
| 1925 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/3879c6bc-58aa-46cb-add2-523ff21fb550/width=450/10999075.jpeg"
|
| 1926 |
],
|
| 1927 |
+
"RoboStyle": [
|
| 1928 |
+
"Jed-rbt",
|
| 1929 |
+
"SDXL 1.0",
|
| 1930 |
+
"RoboStyle",
|
| 1931 |
+
"https://civitai.com/models/612224",
|
| 1932 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/49e6eef8-a325-4543-812b-5ce77055974d/width=450/22063195.jpeg"
|
| 1933 |
+
],
|
| 1934 |
"SPF2s": [
|
| 1935 |
"Svper",
|
| 1936 |
"Pony",
|
|
|
|
| 2029 |
"https://civitai.com/models/517826",
|
| 2030 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9a382d16-ef66-493a-933c-4fcac09e8fff/width=450/15930188.jpeg"
|
| 2031 |
],
|
| 2032 |
+
"Slave_Submission_XL-000003": [
|
| 2033 |
+
"submissive_female, slavesubmissionXL, BDSM / slave, humiliation, exhibitionism, public_indecency / assisted_exposure, panty_pull, torn_clothes, / leash_pull, leash, collar, chain, restrained / Bondage, leather black panties, black bra, crotchless, o-ring / naked_dogeza, all_fours, top_down_bottom_up, ass",
|
| 2034 |
+
"Pony",
|
| 2035 |
+
"Slave_Submission_XL",
|
| 2036 |
+
"https://civitai.com/models/517826",
|
| 2037 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/852e29e1-e9bd-46c8-b11c-11e5c5e0448c/width=450/22226417.jpeg"
|
| 2038 |
+
],
|
| 2039 |
"Spooning_Positions": [
|
| 2040 |
" 5p00n1ng / boy and girl in spooning position, boy behind girl, 1boy, 1girl, male b1g5p00n, / l41d_0u7 / 1_l3gup, one leg up / f3741_p05, fetal position / br347_6r4b, breast grab / w41s7_6r4b / 7h16h_6r4b / 4nk13_6r4b ",
|
| 2041 |
"Pony",
|
|
|
|
| 2085 |
"https://civitai.com/models/543007",
|
| 2086 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/32bb611d-6843-4197-844e-d8ddc1aabf6e/width=450/18288434.jpeg"
|
| 2087 |
],
|
| 2088 |
+
"Standee_v0_1_test": [
|
| 2089 |
+
"cardboard_cutout, white_outline, standee, photo, photo_background, / holding_tray, / mall, / cafe,",
|
| 2090 |
+
"Pony",
|
| 2091 |
+
"Standee / Cardboard cutout | Pony XL | Concept | Early Beta",
|
| 2092 |
+
"https://civitai.com/models/611106",
|
| 2093 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/06e4cc96-0c11-4ba8-a8fc-96bb8638b81f/width=450/21999572.jpeg"
|
| 2094 |
+
],
|
| 2095 |
"Standing_DP_SDXL": [
|
| 2096 |
" 1woman, vaginal, anal, suspended congress, 2males, 2penises, standing sex, carrying, carrying partner, suspended, double penetration, mmf_threesome, standing_double_penetration / <lora:Standing_DP_SDXL-v1:0.7> / explicit female nudity, explicity male nudity, / cum, semen, sweat, steam",
|
| 2097 |
"SDXL 1.0",
|
|
|
|
| 2288 |
"https://civitai.com/models/87049",
|
| 2289 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/0faf8db6-2682-4a18-a92d-a6483b1bb289/width=450/11123630.jpeg"
|
| 2290 |
],
|
| 2291 |
+
"Urinal_Slave-000008": [
|
| 2292 |
+
"Urinal slave",
|
| 2293 |
+
"Pony",
|
| 2294 |
+
"Urinal Slave",
|
| 2295 |
+
"https://civitai.com/models/611771",
|
| 2296 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/3b21296e-0ca8-4800-b094-38b39b3ab312/width=450/22058271.jpeg"
|
| 2297 |
+
],
|
| 2298 |
"Uterus_prolapse_LoRA_for_Pony_3_0": [
|
| 2299 |
"uterus prolapse",
|
| 2300 |
"Pony",
|
|
|
|
| 2428 |
"https://civitai.com/models/548344",
|
| 2429 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/aba9189c-2986-4919-9843-ff03c2d606a8/width=450/17938715.jpeg"
|
| 2430 |
],
|
| 2431 |
+
"Yuri_Scissors_Pose": [
|
| 2432 |
+
"2GIRLS, YURI SCISSORS POSE / TWINCEST / SWEAT, HEAVY BREATHING / FEMALE EJACULATION",
|
| 2433 |
+
"SDXL 1.0",
|
| 2434 |
+
"Yuri Scissor Tribadism",
|
| 2435 |
+
"https://civitai.com/models/510404",
|
| 2436 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/db178470-6eac-408a-bc91-d58cfbc22011/width=450/15483053.jpeg"
|
| 2437 |
+
],
|
| 2438 |
+
"[hikari]fellatio_invitation_pony_v1": [
|
| 2439 |
+
"open mouth, tongue out, pov / fellatio gesture / palms, cum in mouth, cum on hands",
|
| 2440 |
+
"Pony",
|
| 2441 |
+
"[hikari]\u53e3\u4ea4\u9080\u8bf7\u59ff\u52bf/\u53e3\u4ea4\u4e8b\u540e // Fellatio invitation/After fellatio Concept LoRA",
|
| 2442 |
+
"https://civitai.com/models/308865",
|
| 2443 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/0fd71659-09aa-4179-bfd2-879b623403d2/width=450/22504558.jpeg"
|
| 2444 |
+
],
|
| 2445 |
"[hikari]missionary_holding_wrist_pony_v1": [
|
| 2446 |
"missionary_holding_wrist",
|
| 2447 |
"Pony",
|
|
|
|
| 2617 |
"https://civitai.com/models/593717",
|
| 2618 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/945b3a2e-8c70-4068-b45e-1e117c3d50ca/width=450/20829978.jpeg"
|
| 2619 |
],
|
| 2620 |
+
"_sdxl-style-aclchibi": [
|
| 2621 |
+
"aclchibi, chibi",
|
| 2622 |
+
"SDXL 1.0",
|
| 2623 |
+
"for SDXL, auxiliary for generating chibi characters (\u30c1\u30d3\u30ad\u30e3\u30e9\u751f\u6210\u88dc\u52a9\u7528) Style LoRA",
|
| 2624 |
+
"https://civitai.com/models/614638",
|
| 2625 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/0c6ed1ad-da10-4c9a-90ba-a1d12a8ea46c/width=450/22239895.jpeg"
|
| 2626 |
+
],
|
| 2627 |
"_sdxl-transchool-pony": [
|
| 2628 |
"transchool",
|
| 2629 |
"Pony",
|
|
|
|
| 2659 |
"https://civitai.com/models/516752",
|
| 2660 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/e48cb2fb-7aaf-4424-8ea7-acf2160290b9/width=450/17102038.jpeg"
|
| 2661 |
],
|
| 2662 |
+
"agepony8": [
|
| 2663 |
+
"",
|
| 2664 |
+
"Pony",
|
| 2665 |
+
"Multiple XL Sliders - Age, weight, Hands, etc",
|
| 2666 |
+
"https://civitai.com/models/238419",
|
| 2667 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/74053ca5-9486-44ee-94d1-9cebcbbe7250/width=450/22207105.jpeg"
|
| 2668 |
+
],
|
| 2669 |
"akifn_pony_v2": [
|
| 2670 |
"",
|
| 2671 |
"Pony",
|
|
|
|
| 3002 |
"https://civitai.com/models/576402",
|
| 3003 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/d33233e7-8705-4661-bb3b-3f27483e8f3c/width=450/19720953.jpeg"
|
| 3004 |
],
|
| 3005 |
+
"blowingbubbles_XL_v1": [
|
| 3006 |
+
"blowing bubbles",
|
| 3007 |
+
"SDXL 1.0",
|
| 3008 |
+
"blowing bubbles / \u30b7\u30e3\u30dc\u30f3\u7389 / \u3057\u3083\u307c\u3093\u7389",
|
| 3009 |
+
"https://civitai.com/models/620899",
|
| 3010 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/14e8dd8a-10ee-40af-a1a8-5c85d1be43fd/width=450/22627249.jpeg"
|
| 3011 |
+
],
|
| 3012 |
"blowjob_face": [
|
| 3013 |
"pov, fellatio, oral, half closed eyes, ",
|
| 3014 |
"Pony",
|
|
|
|
| 3142 |
"https://civitai.com/models/558208",
|
| 3143 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/8fe2a91b-96dc-4f55-8c1f-646ebf8fe050/width=450/18547446.jpeg"
|
| 3144 |
],
|
| 3145 |
+
"brightnesspony1": [
|
| 3146 |
+
"",
|
| 3147 |
+
"Pony",
|
| 3148 |
+
"Multiple XL Sliders - Age, weight, Hands, etc",
|
| 3149 |
+
"https://civitai.com/models/238419",
|
| 3150 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9ed32d61-d049-46b5-aa74-8049a8d1ece0/width=450/22207333.jpeg"
|
| 3151 |
+
],
|
| 3152 |
"broken_condom_internal_cumshot-PD-1_0-pruned": [
|
| 3153 |
"broken condom internal cumshot",
|
| 3154 |
"Pony",
|
|
|
|
| 3828 |
"https://civitai.com/models/562864",
|
| 3829 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/8b75129f-9af1-458d-8a88-0eb816df00dc/width=450/18835386.jpeg"
|
| 3830 |
],
|
| 3831 |
+
"famima_storefront_PONY_V1": [
|
| 3832 |
+
"famima, konbini, scenery, storefront, convenience store, outdoors, shop, scenery, sky, cloud, day, road, blue sky, power lines, utility pole, real world location, sign, building, street, japan",
|
| 3833 |
+
"Pony",
|
| 3834 |
+
"\u30b3\u30f3\u30d3\u30cb\u306e\u5916\u89b3F PONY",
|
| 3835 |
+
"https://civitai.com/models/611741",
|
| 3836 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a10394f4-d680-4b70-91bc-0ac807a263f6/width=450/22033610.jpeg"
|
| 3837 |
+
],
|
| 3838 |
"fanningself_XL_v1": [
|
| 3839 |
"fanning self",
|
| 3840 |
"SDXL 1.0",
|
|
|
|
| 4080 |
"https://civitai.com/models/32541",
|
| 4081 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a02818c5-568b-4da2-a6f3-0c54f3fd604d/width=450/16910321.jpeg"
|
| 4082 |
],
|
| 4083 |
+
"guided_penetration_pony_V1_0": [
|
| 4084 |
+
"",
|
| 4085 |
+
"Pony",
|
| 4086 |
+
"\u30bb\u30eb\u30d5\u633f\u5165/guided penetration",
|
| 4087 |
+
"https://civitai.com/models/619646",
|
| 4088 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/17b69aa6-a3c3-47e9-952b-f37bfacc3625/width=450/22548752.jpeg"
|
| 4089 |
+
],
|
| 4090 |
"gyaruvXL1": [
|
| 4091 |
"gyaruv",
|
| 4092 |
"SDXL 1.0",
|
|
|
|
| 4346 |
"https://civitai.com/models/579451",
|
| 4347 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/ead4e9ab-9fa2-4413-860b-cfd94da88f03/width=450/19913105.jpeg"
|
| 4348 |
],
|
| 4349 |
+
"huangdongmohu_bouncing_breastslower_body_slamming": [
|
| 4350 |
+
"bouncing breasts / lower body slamming",
|
| 4351 |
+
"Pony",
|
| 4352 |
+
"\u80f8\u90e8\u548c\u4e0b\u534a\u8eab\u52a8\u6001\u6a21\u7cca,\u63fa\u308c\u308b\u304a\u3063\u3071\u3044\u3068\u4e0b\u534a\u8eab\u306e\u885d\u6483,bouncing breasts and lower body slamming",
|
| 4353 |
+
"https://civitai.com/models/611235",
|
| 4354 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/dbb8da41-c419-40f6-9a0f-d871c25acac4/width=450/22007843.jpeg"
|
| 4355 |
+
],
|
| 4356 |
"human_onahole": [
|
| 4357 |
"human onahole,torso grab / rough sex",
|
| 4358 |
"Pony",
|
|
|
|
| 4395 |
"https://civitai.com/models/121579",
|
| 4396 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4d702d98-996e-478c-9e1d-0115852a3457/width=450/1899358.jpeg"
|
| 4397 |
],
|
| 4398 |
+
"jihanki_PONY_V1": [
|
| 4399 |
+
"vending machine, outdoors, scenery, coca-cola, road, street, utility pole, power lines",
|
| 4400 |
+
"Pony",
|
| 4401 |
+
"\u81ea\u52d5\u8ca9\u58f2\u6a5f1 Vending Machines in Japan PONY",
|
| 4402 |
+
"https://civitai.com/models/613480",
|
| 4403 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/87a4b147-eabd-4c5b-8beb-bf3c24caa99b/width=450/22167109.jpeg"
|
| 4404 |
+
],
|
| 4405 |
+
"jihanki_SDXL_V1": [
|
| 4406 |
+
"vending machine, outdoors, scenery, coca-cola, road, street, utility pole, power lines",
|
| 4407 |
+
"SDXL 1.0",
|
| 4408 |
+
"\u81ea\u52d5\u8ca9\u58f2\u6a5f1 Vending Machines in Japan SDXL",
|
| 4409 |
+
"https://civitai.com/models/613468",
|
| 4410 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4a0d7921-d8d3-4b43-9d58-14e386b5af09/width=450/22166271.jpeg"
|
| 4411 |
+
],
|
| 4412 |
"jirai_kei_XL_V1_0": [
|
| 4413 |
"jirai kei / pink shirt / black skirt / ribbon",
|
| 4414 |
"SDXL 1.0",
|
|
|
|
| 4500 |
"https://civitai.com/models/234887",
|
| 4501 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4d94a5a1-b7d2-40b7-b864-f112b26e09a7/width=450/4642510.jpeg"
|
| 4502 |
],
|
| 4503 |
+
"kakigoori_pony_V1_0": [
|
| 4504 |
+
"kakigoori / shaved ice / spoon",
|
| 4505 |
+
"Pony",
|
| 4506 |
+
"\u304b\u304d\u6c37/shaved ice",
|
| 4507 |
+
"https://civitai.com/models/621013",
|
| 4508 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/ff24f6c9-08d8-41af-a544-dccffe40aa58/width=450/22634422.jpeg"
|
| 4509 |
+
],
|
| 4510 |
"kakikoori_SDXL_V2": [
|
| 4511 |
"kakikoori_red, food, cup, shaved ice, still life",
|
| 4512 |
"SDXL 1.0",
|
|
|
|
| 4598 |
"https://civitai.com/models/236038",
|
| 4599 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/dc7c2a65-32ba-4137-b725-b5415530ee47/width=450/6441240.jpeg"
|
| 4600 |
],
|
| 4601 |
+
"kk_sexybody_02": [
|
| 4602 |
+
"kk_sexybody_02, 1girl, solo, breasts, wet, nipples, cum on body, excessive pubic hair, nude",
|
| 4603 |
+
"Pony",
|
| 4604 |
+
"Cum Juice Shower | KK",
|
| 4605 |
+
"https://civitai.com/models/613694",
|
| 4606 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/da30a983-7daa-44e2-b712-29722a43602f/width=450/22179466.jpeg"
|
| 4607 |
+
],
|
| 4608 |
"kuragecut_v1": [
|
| 4609 |
"kuragecut",
|
| 4610 |
"SDXL 1.0",
|
|
|
|
| 4710 |
"https://civitai.com/models/562800",
|
| 4711 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/7d8047bb-e2e3-4e61-bfd9-36e13ecef008/width=450/18832543.jpeg"
|
| 4712 |
],
|
| 4713 |
+
"lawson_storefront_PONY_V1": [
|
| 4714 |
+
"lawson, konbini, scenery, storefront, outdoors, sky, power lines, road, car, cloud, day, shop, building, blue sky, utility pole, real world location",
|
| 4715 |
+
"Pony",
|
| 4716 |
+
"\u30b3\u30f3\u30d3\u30cb\u306e\u5916\u89b3L PONY",
|
| 4717 |
+
"https://civitai.com/models/611720",
|
| 4718 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/e0eb5c80-2658-4c8b-a8de-0cddf22ef82f/width=450/22032802.jpeg"
|
| 4719 |
+
],
|
| 4720 |
"leafumbrella_XL_v1": [
|
| 4721 |
"leaf umbrella",
|
| 4722 |
"SDXL 1.0",
|
|
|
|
| 4990 |
"https://civitai.com/models/455382",
|
| 4991 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/f85b95e6-f83f-4de4-8289-0f825d305cdf/width=450/12484731.jpeg"
|
| 4992 |
],
|
| 4993 |
+
"mesuinu_pony_V1_0": [
|
| 4994 |
+
"mesuinu / paw pose / squatting / all fours,leg lift / peeing / leash",
|
| 4995 |
+
"Pony",
|
| 4996 |
+
"\u96cc\u72ac\u30dd\u30fc\u30ba/paw pose",
|
| 4997 |
+
"https://civitai.com/models/621240",
|
| 4998 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/bf9c5f8e-7fe7-4481-a32d-a07ac987c1fe/width=450/22655424.jpeg"
|
| 4999 |
+
],
|
| 5000 |
"microphone_stand": [
|
| 5001 |
"microphone stand, holding microphone stand, singing, open mouth",
|
| 5002 |
"Pony",
|
|
|
|
| 5151 |
"https://civitai.com/models/467118",
|
| 5152 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/11eced9f-d779-4138-a940-ad81a0b0454c/width=450/17635537.jpeg"
|
| 5153 |
],
|
| 5154 |
+
"nosepony1": [
|
| 5155 |
+
"",
|
| 5156 |
+
"Pony",
|
| 5157 |
+
"Multiple XL Sliders - Age, weight, Hands, etc",
|
| 5158 |
+
"https://civitai.com/models/238419",
|
| 5159 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/2a7bd500-3258-416d-956d-1cf423f82e37/width=450/22207943.jpeg"
|
| 5160 |
+
],
|
| 5161 |
"nsfw70": [
|
| 5162 |
"",
|
| 5163 |
"Pony",
|
|
|
|
| 5235 |
"https://civitai.com/models/339451",
|
| 5236 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/19736a32-8916-40f2-8163-54aca8563b22/width=450/7597428.jpeg"
|
| 5237 |
],
|
| 5238 |
+
"ok_Pony_v1": [
|
| 5239 |
+
"ok sign",
|
| 5240 |
+
"Pony",
|
| 5241 |
+
"[SDXL&Pony] ok sign / OK\u30dd\u30fc\u30ba / \u30aa\u30c3\u30b1\u30fc\u30de\u30fc\u30af",
|
| 5242 |
+
"https://civitai.com/models/304205",
|
| 5243 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/8bb2b842-d3d8-4719-8d14-fd989e39d227/width=450/22209185.jpeg"
|
| 5244 |
+
],
|
| 5245 |
"oksignXLv1": [
|
| 5246 |
"ok sign",
|
| 5247 |
"SDXL 1.0",
|
|
|
|
| 5459 |
"https://civitai.com/models/590441",
|
| 5460 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/06195e98-9e44-4d7a-b139-d1e5e4947e16/width=450/20630854.jpeg"
|
| 5461 |
],
|
| 5462 |
+
"pee_pony_V2_0": [
|
| 5463 |
+
"pee,peeing",
|
| 5464 |
+
"Pony",
|
| 5465 |
+
"\u304a\u3057\u3063\u3053/pee",
|
| 5466 |
+
"https://civitai.com/models/590441",
|
| 5467 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9b873e11-1066-41ac-94fc-da6cf7653345/width=450/22678594.jpeg"
|
| 5468 |
+
],
|
| 5469 |
"peeing_underwater-05": [
|
| 5470 |
"peeing underwater",
|
| 5471 |
"Pony",
|
|
|
|
| 6656 |
"https://civitai.com/models/537445",
|
| 6657 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/ad654bb6-4edb-43a0-84ba-44e5cd96d12b/width=450/17342314.jpeg"
|
| 6658 |
],
|
| 6659 |
+
"tombstone_XL_v1": [
|
| 6660 |
+
"tombstone",
|
| 6661 |
+
"SDXL 1.0",
|
| 6662 |
+
"tombstone / \u304a\u5893\u53c2\u308a / \u304a\u76c6 / \u5893\u77f3 / \u304a\u5bfa",
|
| 6663 |
+
"https://civitai.com/models/613583",
|
| 6664 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/845dfe97-a96f-4433-8c46-e0c8cc8af437/width=450/22176279.jpeg"
|
| 6665 |
+
],
|
| 6666 |
"tongue_around_penis": [
|
| 6667 |
"tongue_around_penis, licking penis, ",
|
| 6668 |
"Pony",
|
|
|
|
| 7034 |
"https://civitai.com/models/593599",
|
| 7035 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4813edb1-66cf-4482-9524-d03a4da30063/width=450/21514778.jpeg"
|
| 7036 |
],
|
| 7037 |
+
"watermelon_pony_V1_0": [
|
| 7038 |
+
"watermelon, holding watermelon / eating",
|
| 7039 |
+
"Pony",
|
| 7040 |
+
"\u30b9\u30a4\u30ab/watermelon",
|
| 7041 |
+
"https://civitai.com/models/621695",
|
| 7042 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/053840b5-37fb-4fee-b7f1-93ddfd1ba12f/width=450/22690182.jpeg"
|
| 7043 |
+
],
|
| 7044 |
"waterslide_XL_v1": [
|
| 7045 |
"water slide",
|
| 7046 |
"SDXL 1.0",
|
|
|
|
| 7048 |
"https://civitai.com/models/406297",
|
| 7049 |
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/36d7f15a-b10b-4b5b-8b27-0e87a52a1a6a/width=450/10128067.jpeg"
|
| 7050 |
],
|
| 7051 |
+
"wavy_hair_pony_V1_0": [
|
| 7052 |
+
"wavy hair",
|
| 7053 |
+
"Pony",
|
| 7054 |
+
"\u5dfb\u304d\u9aea/wavy hair",
|
| 7055 |
+
"https://civitai.com/models/621376",
|
| 7056 |
+
"https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/40e2acab-a2f1-41f2-9b6b-eb53ba2debad/width=450/22666093.jpeg"
|
| 7057 |
+
],
|
| 7058 |
"wedding_dress_XL_V1_0": [
|
| 7059 |
"wedding dress",
|
| 7060 |
"SDXL 1.0",
|
tagger.py
CHANGED
|
@@ -1,12 +1,13 @@
|
|
| 1 |
from PIL import Image
|
| 2 |
import torch
|
| 3 |
import gradio as gr
|
| 4 |
-
import spaces
|
| 5 |
-
|
| 6 |
from transformers import (
|
| 7 |
AutoImageProcessor,
|
| 8 |
AutoModelForImageClassification,
|
| 9 |
)
|
|
|
|
|
|
|
| 10 |
|
| 11 |
WD_MODEL_NAMES = ["p1atdev/wd-swinv2-tagger-v3-hf"]
|
| 12 |
WD_MODEL_NAME = WD_MODEL_NAMES[0]
|
|
@@ -30,12 +31,15 @@ PEOPLE_TAGS = (
|
|
| 30 |
|
| 31 |
|
| 32 |
RATING_MAP = {
|
|
|
|
| 33 |
"general": "safe",
|
| 34 |
"sensitive": "sensitive",
|
| 35 |
"questionable": "nsfw",
|
| 36 |
"explicit": "explicit, nsfw",
|
| 37 |
}
|
| 38 |
DANBOORU_TO_E621_RATING_MAP = {
|
|
|
|
|
|
|
| 39 |
"safe": "rating_safe",
|
| 40 |
"sensitive": "rating_safe",
|
| 41 |
"nsfw": "rating_explicit",
|
|
@@ -49,6 +53,34 @@ DANBOORU_TO_E621_RATING_MAP = {
|
|
| 49 |
}
|
| 50 |
|
| 51 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 52 |
def to_list(s):
|
| 53 |
return [x.strip() for x in s.split(",") if not s == ""]
|
| 54 |
|
|
@@ -62,9 +94,10 @@ def list_uniq(l):
|
|
| 62 |
|
| 63 |
|
| 64 |
def load_dict_from_csv(filename):
|
| 65 |
-
from pathlib import Path
|
| 66 |
dict = {}
|
| 67 |
-
if not Path(filename).exists():
|
|
|
|
|
|
|
| 68 |
try:
|
| 69 |
with open(filename, 'r', encoding="utf-8") as f:
|
| 70 |
lines = f.readlines()
|
|
@@ -100,7 +133,8 @@ def character_list_to_series_list(character_list):
|
|
| 100 |
|
| 101 |
|
| 102 |
def select_random_character(series: str, character: str):
|
| 103 |
-
from random import randrange
|
|
|
|
| 104 |
character_list = list(anime_series_dict.keys())
|
| 105 |
character = character_list[randrange(len(character_list) - 1)]
|
| 106 |
series = anime_series_dict.get(character.split(",")[0].strip(), "")
|
|
@@ -110,7 +144,7 @@ def select_random_character(series: str, character: str):
|
|
| 110 |
def danbooru_to_e621(dtag, e621_dict):
|
| 111 |
def d_to_e(match, e621_dict):
|
| 112 |
dtag = match.group(0)
|
| 113 |
-
etag = e621_dict.get(dtag
|
| 114 |
if etag:
|
| 115 |
return etag
|
| 116 |
else:
|
|
@@ -118,7 +152,6 @@ def danbooru_to_e621(dtag, e621_dict):
|
|
| 118 |
|
| 119 |
import re
|
| 120 |
tag = re.sub(r'[\w ]+', lambda wrapper: d_to_e(wrapper, e621_dict), dtag, 2)
|
| 121 |
-
|
| 122 |
return tag
|
| 123 |
|
| 124 |
|
|
@@ -134,7 +167,7 @@ def convert_danbooru_to_e621_prompt(input_prompt: str = "", prompt_type: str = "
|
|
| 134 |
|
| 135 |
e621_dict = danbooru_to_e621_dict
|
| 136 |
for tag in tags:
|
| 137 |
-
tag = tag
|
| 138 |
tag = danbooru_to_e621(tag, e621_dict)
|
| 139 |
if tag in PEOPLE_TAGS:
|
| 140 |
people_tags.append(tag)
|
|
@@ -162,6 +195,7 @@ def translate_prompt(prompt: str = ""):
|
|
| 162 |
translated_prompt = translator.translate(prompt, src='auto', dest='en').text
|
| 163 |
return translated_prompt
|
| 164 |
except Exception as e:
|
|
|
|
| 165 |
return prompt
|
| 166 |
|
| 167 |
def is_japanese(s):
|
|
@@ -194,6 +228,7 @@ def translate_prompt_to_ja(prompt: str = ""):
|
|
| 194 |
translated_prompt = translator.translate(prompt, src='en', dest='ja').text
|
| 195 |
return translated_prompt
|
| 196 |
except Exception as e:
|
|
|
|
| 197 |
return prompt
|
| 198 |
|
| 199 |
def is_japanese(s):
|
|
@@ -219,7 +254,7 @@ def translate_prompt_to_ja(prompt: str = ""):
|
|
| 219 |
def tags_to_ja(itag, dict):
|
| 220 |
def t_to_j(match, dict):
|
| 221 |
tag = match.group(0)
|
| 222 |
-
ja = dict.get(tag
|
| 223 |
if ja:
|
| 224 |
return ja
|
| 225 |
else:
|
|
@@ -238,7 +273,7 @@ def convert_tags_to_ja(input_prompt: str = ""):
|
|
| 238 |
tags_to_ja_dict = load_dict_from_csv('all_tags_ja_ext.csv')
|
| 239 |
dict = tags_to_ja_dict
|
| 240 |
for tag in tags:
|
| 241 |
-
tag = tag
|
| 242 |
tag = tags_to_ja(tag, dict)
|
| 243 |
out_tags.append(tag)
|
| 244 |
|
|
@@ -287,6 +322,7 @@ def insert_recom_prompt(prompt: str = "", neg_prompt: str = "", type: str = "Non
|
|
| 287 |
def load_model_prompt_dict():
|
| 288 |
import json
|
| 289 |
dict = {}
|
|
|
|
| 290 |
try:
|
| 291 |
with open('model_dict.json', encoding='utf-8') as f:
|
| 292 |
dict = json.load(f)
|
|
@@ -365,7 +401,7 @@ def remove_specific_prompt(input_prompt: str = "", keep_tags: str = "all"):
|
|
| 365 |
|
| 366 |
group_dict = tag_group_dict
|
| 367 |
for tag in tags:
|
| 368 |
-
tag = tag
|
| 369 |
if tag in PEOPLE_TAGS:
|
| 370 |
people_tags.append(tag)
|
| 371 |
elif is_necessary(tag, keep_tags, group_dict):
|
|
@@ -393,7 +429,7 @@ def sort_taglist(tags: list[str]):
|
|
| 393 |
rating_set = set(DANBOORU_TO_E621_RATING_MAP.keys()) | set(DANBOORU_TO_E621_RATING_MAP.values())
|
| 394 |
|
| 395 |
for tag in tags:
|
| 396 |
-
tag = tag
|
| 397 |
if tag in PEOPLE_TAGS:
|
| 398 |
people_tags.append(tag)
|
| 399 |
elif tag in rating_set:
|
|
@@ -494,12 +530,13 @@ def predict_tags(image: Image.Image, general_threshold: float = 0.3, character_t
|
|
| 494 |
output_series_tag = output_series_list[0]
|
| 495 |
else:
|
| 496 |
output_series_tag = ""
|
| 497 |
-
return output_series_tag, ", ".join(character.keys()), prompt, gr.update(interactive=True)
|
| 498 |
|
| 499 |
|
| 500 |
-
def predict_tags_wd(image: Image.Image, input_tags: str, algo: list[str], general_threshold: float = 0.3,
|
|
|
|
| 501 |
if not "Use WD Tagger" in algo and len(algo) != 0:
|
| 502 |
-
return
|
| 503 |
return predict_tags(image, general_threshold, character_threshold)
|
| 504 |
|
| 505 |
|
|
|
|
| 1 |
from PIL import Image
|
| 2 |
import torch
|
| 3 |
import gradio as gr
|
| 4 |
+
import spaces
|
|
|
|
| 5 |
from transformers import (
|
| 6 |
AutoImageProcessor,
|
| 7 |
AutoModelForImageClassification,
|
| 8 |
)
|
| 9 |
+
from pathlib import Path
|
| 10 |
+
|
| 11 |
|
| 12 |
WD_MODEL_NAMES = ["p1atdev/wd-swinv2-tagger-v3-hf"]
|
| 13 |
WD_MODEL_NAME = WD_MODEL_NAMES[0]
|
|
|
|
| 31 |
|
| 32 |
|
| 33 |
RATING_MAP = {
|
| 34 |
+
"sfw": "safe",
|
| 35 |
"general": "safe",
|
| 36 |
"sensitive": "sensitive",
|
| 37 |
"questionable": "nsfw",
|
| 38 |
"explicit": "explicit, nsfw",
|
| 39 |
}
|
| 40 |
DANBOORU_TO_E621_RATING_MAP = {
|
| 41 |
+
"sfw": "rating_safe",
|
| 42 |
+
"general": "rating_safe",
|
| 43 |
"safe": "rating_safe",
|
| 44 |
"sensitive": "rating_safe",
|
| 45 |
"nsfw": "rating_explicit",
|
|
|
|
| 53 |
}
|
| 54 |
|
| 55 |
|
| 56 |
+
# https://github.com/toriato/stable-diffusion-webui-wd14-tagger/blob/a9eacb1eff904552d3012babfa28b57e1d3e295c/tagger/ui.py#L368
|
| 57 |
+
kaomojis = [
|
| 58 |
+
"0_0",
|
| 59 |
+
"(o)_(o)",
|
| 60 |
+
"+_+",
|
| 61 |
+
"+_-",
|
| 62 |
+
"._.",
|
| 63 |
+
"<o>_<o>",
|
| 64 |
+
"<|>_<|>",
|
| 65 |
+
"=_=",
|
| 66 |
+
">_<",
|
| 67 |
+
"3_3",
|
| 68 |
+
"6_9",
|
| 69 |
+
">_o",
|
| 70 |
+
"@_@",
|
| 71 |
+
"^_^",
|
| 72 |
+
"o_o",
|
| 73 |
+
"u_u",
|
| 74 |
+
"x_x",
|
| 75 |
+
"|_|",
|
| 76 |
+
"||_||",
|
| 77 |
+
]
|
| 78 |
+
|
| 79 |
+
|
| 80 |
+
def replace_underline(x: str):
|
| 81 |
+
return x.strip().replace("_", " ") if x not in kaomojis else x.strip()
|
| 82 |
+
|
| 83 |
+
|
| 84 |
def to_list(s):
|
| 85 |
return [x.strip() for x in s.split(",") if not s == ""]
|
| 86 |
|
|
|
|
| 94 |
|
| 95 |
|
| 96 |
def load_dict_from_csv(filename):
|
|
|
|
| 97 |
dict = {}
|
| 98 |
+
if not Path(filename).exists():
|
| 99 |
+
if Path('./tagger/', filename).exists(): filename = str(Path('./tagger/', filename))
|
| 100 |
+
else: return dict
|
| 101 |
try:
|
| 102 |
with open(filename, 'r', encoding="utf-8") as f:
|
| 103 |
lines = f.readlines()
|
|
|
|
| 133 |
|
| 134 |
|
| 135 |
def select_random_character(series: str, character: str):
|
| 136 |
+
from random import seed, randrange
|
| 137 |
+
seed()
|
| 138 |
character_list = list(anime_series_dict.keys())
|
| 139 |
character = character_list[randrange(len(character_list) - 1)]
|
| 140 |
series = anime_series_dict.get(character.split(",")[0].strip(), "")
|
|
|
|
| 144 |
def danbooru_to_e621(dtag, e621_dict):
|
| 145 |
def d_to_e(match, e621_dict):
|
| 146 |
dtag = match.group(0)
|
| 147 |
+
etag = e621_dict.get(replace_underline(dtag), "")
|
| 148 |
if etag:
|
| 149 |
return etag
|
| 150 |
else:
|
|
|
|
| 152 |
|
| 153 |
import re
|
| 154 |
tag = re.sub(r'[\w ]+', lambda wrapper: d_to_e(wrapper, e621_dict), dtag, 2)
|
|
|
|
| 155 |
return tag
|
| 156 |
|
| 157 |
|
|
|
|
| 167 |
|
| 168 |
e621_dict = danbooru_to_e621_dict
|
| 169 |
for tag in tags:
|
| 170 |
+
tag = replace_underline(tag)
|
| 171 |
tag = danbooru_to_e621(tag, e621_dict)
|
| 172 |
if tag in PEOPLE_TAGS:
|
| 173 |
people_tags.append(tag)
|
|
|
|
| 195 |
translated_prompt = translator.translate(prompt, src='auto', dest='en').text
|
| 196 |
return translated_prompt
|
| 197 |
except Exception as e:
|
| 198 |
+
print(e)
|
| 199 |
return prompt
|
| 200 |
|
| 201 |
def is_japanese(s):
|
|
|
|
| 228 |
translated_prompt = translator.translate(prompt, src='en', dest='ja').text
|
| 229 |
return translated_prompt
|
| 230 |
except Exception as e:
|
| 231 |
+
print(e)
|
| 232 |
return prompt
|
| 233 |
|
| 234 |
def is_japanese(s):
|
|
|
|
| 254 |
def tags_to_ja(itag, dict):
|
| 255 |
def t_to_j(match, dict):
|
| 256 |
tag = match.group(0)
|
| 257 |
+
ja = dict.get(replace_underline(tag), "")
|
| 258 |
if ja:
|
| 259 |
return ja
|
| 260 |
else:
|
|
|
|
| 273 |
tags_to_ja_dict = load_dict_from_csv('all_tags_ja_ext.csv')
|
| 274 |
dict = tags_to_ja_dict
|
| 275 |
for tag in tags:
|
| 276 |
+
tag = replace_underline(tag)
|
| 277 |
tag = tags_to_ja(tag, dict)
|
| 278 |
out_tags.append(tag)
|
| 279 |
|
|
|
|
| 322 |
def load_model_prompt_dict():
|
| 323 |
import json
|
| 324 |
dict = {}
|
| 325 |
+
path = 'model_dict.json' if Path('model_dict.json').exists() else './tagger/model_dict.json'
|
| 326 |
try:
|
| 327 |
with open('model_dict.json', encoding='utf-8') as f:
|
| 328 |
dict = json.load(f)
|
|
|
|
| 401 |
|
| 402 |
group_dict = tag_group_dict
|
| 403 |
for tag in tags:
|
| 404 |
+
tag = replace_underline(tag)
|
| 405 |
if tag in PEOPLE_TAGS:
|
| 406 |
people_tags.append(tag)
|
| 407 |
elif is_necessary(tag, keep_tags, group_dict):
|
|
|
|
| 429 |
rating_set = set(DANBOORU_TO_E621_RATING_MAP.keys()) | set(DANBOORU_TO_E621_RATING_MAP.values())
|
| 430 |
|
| 431 |
for tag in tags:
|
| 432 |
+
tag = replace_underline(tag)
|
| 433 |
if tag in PEOPLE_TAGS:
|
| 434 |
people_tags.append(tag)
|
| 435 |
elif tag in rating_set:
|
|
|
|
| 530 |
output_series_tag = output_series_list[0]
|
| 531 |
else:
|
| 532 |
output_series_tag = ""
|
| 533 |
+
return output_series_tag, ", ".join(character.keys()), prompt, gr.update(interactive=True)
|
| 534 |
|
| 535 |
|
| 536 |
+
def predict_tags_wd(image: Image.Image, input_tags: str, algo: list[str], general_threshold: float = 0.3,
|
| 537 |
+
character_threshold: float = 0.8, input_series: str = "", input_character: str = ""):
|
| 538 |
if not "Use WD Tagger" in algo and len(algo) != 0:
|
| 539 |
+
return input_series, input_character, input_tags, gr.update(interactive=True)
|
| 540 |
return predict_tags(image, general_threshold, character_threshold)
|
| 541 |
|
| 542 |
|