John6666 commited on
Commit
c23ec23
·
verified ·
1 Parent(s): a40d937

Upload 3 files

Browse files
Files changed (3) hide show
  1. app.py +27 -49
  2. lora_dict.json +315 -0
  3. modutils.py +24 -14
app.py CHANGED
@@ -171,13 +171,12 @@ os.makedirs(directory_vaes, exist_ok=True)
171
  ## BEGIN MOD
172
  from modutils import (
173
  download_private_repo,
174
- get_private_model_lists,
175
  get_model_id_list,
176
  list_uniq,
177
  get_tupled_embed_list,
178
  update_lora_dict,
179
  HF_LORA_ESSENTIAL_PRIVATE_REPO,
180
- HF_LORA_PRIVATE_REPOS,
181
  )
182
 
183
  # - **Download SD 1.5 Models**
@@ -268,7 +267,7 @@ for url_embed in download_embeds:
268
  embed_list = get_model_list(directory_embeds)
269
  model_list = get_model_list(directory_models)
270
  model_list = load_diffusers_format_model + model_list
271
- lora_model_list = list_uniq(get_private_model_lists(HF_LORA_PRIVATE_REPOS, directory_loras) + get_model_list(directory_loras))
272
  lora_model_list.insert(0, "None")
273
  vae_model_list = get_model_list(directory_vaes)
274
  vae_model_list.insert(0, "None")
@@ -290,7 +289,7 @@ def get_my_lora(link_url):
290
  if not os.path.exists(f"./loras/{url.split('/')[-1]}"):
291
  download_things(directory_loras, url, hf_token, CIVITAI_API_KEY)
292
  update_lora_dict(f"./loras/{url.split('/')[-1]}")
293
- new_lora_model_list = list_uniq(get_private_model_lists(HF_LORA_PRIVATE_REPOS, directory_loras) + get_model_list(directory_loras))
294
  new_lora_model_list.insert(0, "None")
295
 
296
  return gr.update(
@@ -1624,13 +1623,13 @@ with gr.Blocks(theme="NoCrypt/miku", elem_id="main", css=CSS) as app:
1624
 
1625
  quality_selector_gui.change(
1626
  process_style_prompt,
1627
- inputs=[prompt_gui, neg_prompt_gui, style_selector_gui, quality_selector_gui, insert_prompt_gui],
1628
- outputs=[prompt_gui, neg_prompt_gui],
1629
  )
1630
  style_selector_gui.change(
1631
  process_style_prompt,
1632
- inputs=[prompt_gui, neg_prompt_gui, style_selector_gui, quality_selector_gui, insert_prompt_gui],
1633
- outputs=[prompt_gui, neg_prompt_gui],
1634
  )
1635
  sampler_selector_gui.change(set_sampler_settings, [sampler_selector_gui], [sampler_gui, steps_gui, cfg_gui, clip_skip_gui, img_width_gui, img_height_gui, optimization_gui])
1636
  optimization_gui.change(set_optimization, [optimization_gui, steps_gui, cfg_gui, sampler_gui, clip_skip_gui, lora5_gui, lora_scale_5_gui], [steps_gui, cfg_gui, sampler_gui, clip_skip_gui, lora5_gui, lora_scale_5_gui])
@@ -1660,12 +1659,12 @@ with gr.Blocks(theme="NoCrypt/miku", elem_id="main", css=CSS) as app:
1660
  triggers=[search_civitai_button_lora.click, search_civitai_query_lora.submit],
1661
  fn=search_civitai_lora,
1662
  inputs=[search_civitai_query_lora, search_civitai_basemodel_lora],
1663
- outputs=[search_civitai_result_lora, search_civitai_desc_lora],
1664
  show_progress="minimal",
1665
  )
1666
  search_civitai_result_lora.change(select_civitai_lora, [search_civitai_result_lora], [text_lora, search_civitai_desc_lora])
1667
  button_lora.click(get_my_lora, [text_lora], [lora1_gui, lora2_gui, lora3_gui, lora4_gui, lora5_gui])
1668
- upload_button_lora.upload(upload_file_lora, upload_button_lora, file_output_lora, show_progress="minimal").success(
1669
  move_file_lora,
1670
  [file_output_lora],
1671
  [lora1_gui, lora2_gui, lora3_gui, lora4_gui, lora5_gui],
@@ -1676,21 +1675,16 @@ with gr.Blocks(theme="NoCrypt/miku", elem_id="main", css=CSS) as app:
1676
 
1677
  generate_from_image_btn_gui.click(
1678
  predict_tags_wd,
1679
- inputs=[input_image_gui, prompt_gui, image_algorithms, general_threshold_gui, character_threshold_gui],
1680
- outputs=[
1681
- series_dbt,
1682
- character_dbt,
1683
- prompt_gui,
1684
- copy_button_dbt,
1685
- ],
1686
  ).success(
1687
- compose_prompt_to_copy, inputs=[character_dbt, series_dbt, prompt_gui], outputs=[prompt_gui]
1688
  ).success(
1689
- remove_specific_prompt, inputs=[prompt_gui, keep_tags_gui], outputs=[prompt_gui],
1690
  ).success(
1691
- convert_danbooru_to_e621_prompt, inputs=[prompt_gui, tag_type_gui], outputs=[prompt_gui],
1692
  ).success(
1693
- insert_recom_prompt, inputs=[prompt_gui, neg_prompt_gui, recom_prompt_gui], outputs=[prompt_gui, neg_prompt_gui],
1694
  )
1695
 
1696
  v2b.input_components = [
@@ -1707,29 +1701,20 @@ with gr.Blocks(theme="NoCrypt/miku", elem_id="main", css=CSS) as app:
1707
 
1708
  insert_prompt_gui.change(
1709
  process_style_prompt,
1710
- inputs=[prompt_gui, neg_prompt_gui, style_selector_gui, quality_selector_gui, insert_prompt_gui],
1711
- outputs=[prompt_gui, neg_prompt_gui],
1712
- )
1713
-
1714
- prompt_type_button.click(
1715
- convert_danbooru_to_e621_prompt,
1716
- inputs=[prompt_gui, prompt_type_gui],
1717
- outputs=[prompt_gui],
1718
  )
1719
-
1720
  random_character_gui.click(select_random_character, [series_dbt, character_dbt], [series_dbt, character_dbt])
1721
-
1722
  generate_db_random_button.click(
1723
  parse_upsampling_output(v2b.on_generate),
1724
- inputs=[
1725
- *v2b.input_components,
1726
- ],
1727
- outputs=[prompt_gui, elapsed_time_dbt, copy_button_dbt, copy_button_dbt],
1728
  )
1729
 
1730
- #translate_prompt_button.click(translate_prompt, inputs=[prompt_gui], outputs=[prompt_gui])
1731
- #translate_prompt_button.click(translate_prompt, inputs=[character_dbt], outputs=[character_dbt])
1732
- #translate_prompt_button.click(translate_prompt, inputs=[series_dbt], outputs=[series_dbt])
1733
 
1734
  generate_button.click(
1735
  fn=sd_gen.load_new_model,
@@ -1916,13 +1901,8 @@ with gr.Blocks(theme="NoCrypt/miku", elem_id="main", css=CSS) as app:
1916
 
1917
  generate_from_image_btn.click(
1918
  predict_tags_wd,
1919
- inputs=[input_image, input_general, image_algorithms, general_threshold, character_threshold],
1920
- outputs=[
1921
- input_copyright,
1922
- input_character,
1923
- input_general,
1924
- copy_input_btn,
1925
- ],
1926
  ).success(
1927
  remove_specific_prompt, inputs=[input_general, keep_tags], outputs=[input_general],
1928
  ).success(
@@ -1938,10 +1918,8 @@ with gr.Blocks(theme="NoCrypt/miku", elem_id="main", css=CSS) as app:
1938
 
1939
  generate_btn.click(
1940
  parse_upsampling_output(v2.on_generate),
1941
- inputs=[
1942
- *v2.input_components,
1943
- ],
1944
- outputs=[output_text, elapsed_time_md, copy_btn, copy_btn_pony],
1945
  ).success(
1946
  convert_danbooru_to_e621_prompt, inputs=[output_text, tag_type], outputs=[output_text_pony],
1947
  ).success(
 
171
  ## BEGIN MOD
172
  from modutils import (
173
  download_private_repo,
174
+ get_private_lora_model_lists,
175
  get_model_id_list,
176
  list_uniq,
177
  get_tupled_embed_list,
178
  update_lora_dict,
179
  HF_LORA_ESSENTIAL_PRIVATE_REPO,
 
180
  )
181
 
182
  # - **Download SD 1.5 Models**
 
267
  embed_list = get_model_list(directory_embeds)
268
  model_list = get_model_list(directory_models)
269
  model_list = load_diffusers_format_model + model_list
270
+ lora_model_list = list_uniq(get_private_lora_model_lists() + get_model_list(directory_loras))
271
  lora_model_list.insert(0, "None")
272
  vae_model_list = get_model_list(directory_vaes)
273
  vae_model_list.insert(0, "None")
 
289
  if not os.path.exists(f"./loras/{url.split('/')[-1]}"):
290
  download_things(directory_loras, url, hf_token, CIVITAI_API_KEY)
291
  update_lora_dict(f"./loras/{url.split('/')[-1]}")
292
+ new_lora_model_list = list_uniq(get_private_lora_model_lists() + get_model_list(directory_loras))
293
  new_lora_model_list.insert(0, "None")
294
 
295
  return gr.update(
 
1623
 
1624
  quality_selector_gui.change(
1625
  process_style_prompt,
1626
+ [prompt_gui, neg_prompt_gui, style_selector_gui, quality_selector_gui, insert_prompt_gui],
1627
+ [prompt_gui, neg_prompt_gui],
1628
  )
1629
  style_selector_gui.change(
1630
  process_style_prompt,
1631
+ [prompt_gui, neg_prompt_gui, style_selector_gui, quality_selector_gui, insert_prompt_gui],
1632
+ [prompt_gui, neg_prompt_gui],
1633
  )
1634
  sampler_selector_gui.change(set_sampler_settings, [sampler_selector_gui], [sampler_gui, steps_gui, cfg_gui, clip_skip_gui, img_width_gui, img_height_gui, optimization_gui])
1635
  optimization_gui.change(set_optimization, [optimization_gui, steps_gui, cfg_gui, sampler_gui, clip_skip_gui, lora5_gui, lora_scale_5_gui], [steps_gui, cfg_gui, sampler_gui, clip_skip_gui, lora5_gui, lora_scale_5_gui])
 
1659
  triggers=[search_civitai_button_lora.click, search_civitai_query_lora.submit],
1660
  fn=search_civitai_lora,
1661
  inputs=[search_civitai_query_lora, search_civitai_basemodel_lora],
1662
+ outputs=[search_civitai_result_lora, search_civitai_desc_lora, search_civitai_button_lora, search_civitai_query_lora],
1663
  show_progress="minimal",
1664
  )
1665
  search_civitai_result_lora.change(select_civitai_lora, [search_civitai_result_lora], [text_lora, search_civitai_desc_lora])
1666
  button_lora.click(get_my_lora, [text_lora], [lora1_gui, lora2_gui, lora3_gui, lora4_gui, lora5_gui])
1667
+ upload_button_lora.upload(upload_file_lora, [upload_button_lora], [file_output_lora, upload_button_lora], show_progress="minimal").success(
1668
  move_file_lora,
1669
  [file_output_lora],
1670
  [lora1_gui, lora2_gui, lora3_gui, lora4_gui, lora5_gui],
 
1675
 
1676
  generate_from_image_btn_gui.click(
1677
  predict_tags_wd,
1678
+ [input_image_gui, prompt_gui, image_algorithms, general_threshold_gui, character_threshold_gui],
1679
+ [series_dbt, character_dbt, prompt_gui, copy_button_dbt,],
 
 
 
 
 
1680
  ).success(
1681
+ compose_prompt_to_copy, [character_dbt, series_dbt, prompt_gui], [prompt_gui]
1682
  ).success(
1683
+ remove_specific_prompt, [prompt_gui, keep_tags_gui], [prompt_gui],
1684
  ).success(
1685
+ convert_danbooru_to_e621_prompt, [prompt_gui, tag_type_gui], [prompt_gui],
1686
  ).success(
1687
+ insert_recom_prompt, [prompt_gui, neg_prompt_gui, recom_prompt_gui], [prompt_gui, neg_prompt_gui],
1688
  )
1689
 
1690
  v2b.input_components = [
 
1701
 
1702
  insert_prompt_gui.change(
1703
  process_style_prompt,
1704
+ [prompt_gui, neg_prompt_gui, style_selector_gui, quality_selector_gui, insert_prompt_gui],
1705
+ [prompt_gui, neg_prompt_gui],
 
 
 
 
 
 
1706
  )
1707
+ prompt_type_button.click(convert_danbooru_to_e621_prompt, [prompt_gui, prompt_type_gui], [prompt_gui])
1708
  random_character_gui.click(select_random_character, [series_dbt, character_dbt], [series_dbt, character_dbt])
 
1709
  generate_db_random_button.click(
1710
  parse_upsampling_output(v2b.on_generate),
1711
+ [*v2b.input_components],
1712
+ [prompt_gui, elapsed_time_dbt, copy_button_dbt, copy_button_dbt],
 
 
1713
  )
1714
 
1715
+ #translate_prompt_button.click(translate_prompt, [prompt_gui], [prompt_gui])
1716
+ #translate_prompt_button.click(translate_prompt, [character_dbt], [character_dbt])
1717
+ #translate_prompt_button.click(translate_prompt, [series_dbt], [series_dbt])
1718
 
1719
  generate_button.click(
1720
  fn=sd_gen.load_new_model,
 
1901
 
1902
  generate_from_image_btn.click(
1903
  predict_tags_wd,
1904
+ [input_image, input_general, image_algorithms, general_threshold, character_threshold],
1905
+ [input_copyright, input_character, input_general, copy_input_btn],
 
 
 
 
 
1906
  ).success(
1907
  remove_specific_prompt, inputs=[input_general, keep_tags], outputs=[input_general],
1908
  ).success(
 
1918
 
1919
  generate_btn.click(
1920
  parse_upsampling_output(v2.on_generate),
1921
+ [*v2.input_components],
1922
+ [output_text, elapsed_time_md, copy_btn, copy_btn_pony],
 
 
1923
  ).success(
1924
  convert_danbooru_to_e621_prompt, inputs=[output_text, tag_type], outputs=[output_text_pony],
1925
  ).success(
lora_dict.json CHANGED
@@ -76,6 +76,27 @@
76
  "https://civitai.com/models/505542",
77
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/0864c0b2-2665-469d-bda9-0b7fe945963d/width=450/15207082.jpeg"
78
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
79
  "0692_breasts_harem_v1_pony": [
80
  "ruanyi0692,harem,breast press,large breasts,lactation,5girls,",
81
  "Pony",
@@ -132,6 +153,13 @@
132
  "https://civitai.com/models/112135",
133
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/fb82c1ee-d84d-464e-ac84-e3f83a1413f5/width=450/8545447.jpeg"
134
  ],
 
 
 
 
 
 
 
135
  "After_Paizuri_LoRa__PonyXL": [
136
  "pov, after paizuri, cum, penis, breasts apart, uncensored",
137
  "Pony",
@@ -167,6 +195,13 @@
167
  "https://civitai.com/models/543336",
168
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4701cf40-e3e3-4576-83e2-85c786bd51d0/width=450/17580481.jpeg"
169
  ],
 
 
 
 
 
 
 
170
  "BallsTesticles_sucking_LoRa__PonyXL": [
171
  "testicle sucking, testicles, penis / testicles in mouth",
172
  "Pony",
@@ -300,6 +335,20 @@
300
  "https://civitai.com/models/537610",
301
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/589c894d-a54f-4ab8-8557-03a685675ae5/width=450/17170134.jpeg"
302
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
303
  "Corruptionv2_1XL": [
304
  "corruption / empty eyes / half-closed eyes / evil smile / no pupils / evil grin / combatant / dark magical girl / layered skirt / showgirl skirt",
305
  "SDXL 1.0",
@@ -307,6 +356,20 @@
307
  "https://civitai.com/models/17610",
308
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/ce7d0709-f4e0-4183-bcf1-f2091470503b/width=450/8866158.jpeg"
309
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
310
  "Curtsey": [
311
  "Curtsey / FULLBODY, LONG DRESS / KNEES BENT, FEET CROSSED, BOWING",
312
  "SDXL 1.0",
@@ -370,6 +433,13 @@
370
  "https://civitai.com/models/149316",
371
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/de89e774-63f1-4f37-8edf-5ea4ae7ab7df/width=450/2613890.jpeg"
372
  ],
 
 
 
 
 
 
 
373
  "Expressive_H-000001": [
374
  "Expressiveh",
375
  "Pony",
@@ -454,6 +524,13 @@
454
  "https://civitai.com/models/482233",
455
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4e644998-97a5-488f-ae1c-b248154d4fd0/width=450/13905331.jpeg"
456
  ],
 
 
 
 
 
 
 
457
  "Hankyu3000_SDXL_V1": [
458
  "hankyu3000",
459
  "SDXL 1.0",
@@ -496,6 +573,13 @@
496
  "https://civitai.com/models/545318",
497
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/e1149fca-ba5b-4db2-927a-b99c13992941/width=450/17681084.jpeg"
498
  ],
 
 
 
 
 
 
 
499
  "Hoseki_Concept_GuidedPenetration_PDXL_v1": [
500
  "guided penetration",
501
  "Pony",
@@ -594,6 +678,20 @@
594
  "https://civitai.com/models/537918",
595
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/edfec5cf-6241-4950-b99b-571251a79265/width=450/17179954.jpeg"
596
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
597
  "KabedompovPonyXL": [
598
  "kabedon / pov hands",
599
  "Pony",
@@ -622,6 +720,27 @@
622
  "https://civitai.com/models/446981",
623
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4df0acd9-4584-4e54-9f8d-234b01ad36c0/width=450/12067962.jpeg"
624
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
625
  "MS_PDXL_AfterSex_Lite": [
626
  "after sex, cum, lying, cumdrip, ass, on stomach, on back, fucked silly, sweat, cum pool, bukkake, trembling",
627
  "Pony",
@@ -636,6 +755,20 @@
636
  "https://civitai.com/models/550384",
637
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a337f088-579c-4713-9424-2c3f2b9530ed/width=450/18019685.jpeg"
638
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
639
  "MdaStarouXL_ANI31_lokr_V43P1NF": [
640
  "",
641
  "SDXL 1.0",
@@ -685,6 +818,13 @@
685
  "https://civitai.com/models/216129",
686
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/2dc8c96b-e537-4a7c-8bee-505c5d3f6ea1/width=450/4053098.jpeg"
687
  ],
 
 
 
 
 
 
 
688
  "Oshiki_Hitoshi": [
689
  "",
690
  "SDXL 1.0",
@@ -692,6 +832,13 @@
692
  "https://civitai.com/models/315802",
693
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/31a47a04-d99f-4a70-a587-6363b95dd0a0/width=450/11295121.jpeg"
694
  ],
 
 
 
 
 
 
 
695
  "PCs_and_Smartphones": [
696
  "",
697
  "SDXL 1.0",
@@ -713,6 +860,13 @@
713
  "https://civitai.com/models/533099",
714
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/eff29eaa-43c4-4fc8-963c-406d9f820e21/width=450/16869588.jpeg"
715
  ],
 
 
 
 
 
 
 
716
  "PaiControlPdxlDwnsty-000005": [
717
  "paizuri motion / motion line, motion blur, speed lines",
718
  "Pony",
@@ -727,6 +881,13 @@
727
  "https://civitai.com/models/507585",
728
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/b0a86cd6-b3d2-4bc2-bd8b-8fe9b36da874/width=450/15380713.jpeg"
729
  ],
 
 
 
 
 
 
 
730
  "PerfectPussy-9000": [
731
  "Perfect Pussy / Cameltoe",
732
  "SDXL 1.0",
@@ -1028,6 +1189,13 @@
1028
  "https://civitai.com/models/530852",
1029
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a05db25b-8a3b-40a8-b7cf-99acaebb36d6/width=450/16720266.jpeg"
1030
  ],
 
 
 
 
 
 
 
1031
  "TsunakoPony": [
1032
  "",
1033
  "Pony",
@@ -1091,6 +1259,13 @@
1091
  "https://civitai.com/models/214575",
1092
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4032b9b8-091a-44ef-b44a-14825f7f712a/width=450/10958207.jpeg"
1093
  ],
 
 
 
 
 
 
 
1094
  "XL_crying_aqua(kohaku_delta)-000009": [
1095
  "open mouth,solo,tears,crying,blush,crying with eyes open",
1096
  "SDXL 1.0",
@@ -1805,6 +1980,13 @@
1805
  "https://civitai.com/models/529015",
1806
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/b8441713-57c6-4280-840c-d530ab9e5b08/width=450/17352599.jpeg"
1807
  ],
 
 
 
 
 
 
 
1808
  "dikko-XL-v3-ep20": [
1809
  "",
1810
  "SDXL 1.0",
@@ -1854,6 +2036,13 @@
1854
  "https://civitai.com/models/393273",
1855
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/d61e0783-9d00-43a0-9b10-03f43ba40a51/width=450/9556301.jpeg"
1856
  ],
 
 
 
 
 
 
 
1857
  "embarrassedexposure_pony_v2": [
1858
  "sittingspread, white socks, spread legs,pussy, nude,1girl,solo / uterusdrawing,nude, / 1girl,solo, standingarms, standing, on desk,nude,nsfw,school desk,full body, / sittingknees, nude,nsfw, / shockedface,embarrassed, / sittingcovering, 1girl, solo, nude, pussy, uncensored, breasts, short hair, covering,face, / embarrassedspreadpussy,1girl, solo, nude, naked, embarrassed, blush, on desk, indoors, filming, camera, digital camera,v,",
1859
  "Pony",
@@ -1945,6 +2134,13 @@
1945
  "https://civitai.com/models/332467",
1946
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9a1429e0-803f-47bf-bd32-a0c9c6f712b5/width=450/17870909.jpeg"
1947
  ],
 
 
 
 
 
 
 
1948
  "foreskin_insertion_v0_1-pony": [
1949
  "foreskin insertion",
1950
  "Pony",
@@ -1980,6 +2176,13 @@
1980
  "https://civitai.com/models/357976",
1981
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/ead23075-e9ff-4378-b1b3-442b1abaef78/width=450/14593009.jpeg"
1982
  ],
 
 
 
 
 
 
 
1983
  "glass": [
1984
  "",
1985
  "SDXL 1.0",
@@ -2631,6 +2834,13 @@
2631
  "https://civitai.com/models/500165",
2632
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/956deaff-2606-4344-83fb-2ccc0a9d82b6/width=450/14898053.jpeg"
2633
  ],
 
 
 
 
 
 
 
2634
  "nsfw70": [
2635
  "",
2636
  "Pony",
@@ -2645,6 +2855,13 @@
2645
  "https://civitai.com/models/506443",
2646
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/38a870d1-257a-4897-bb7b-7c57eb15f0bf/width=450/15268649.jpeg"
2647
  ],
 
 
 
 
 
 
 
2648
  "ofuda_on_nipples_A31_e1-000010": [
2649
  "talisman / ofuda on nipples / ofuda on pussy",
2650
  "SDXL 1.0",
@@ -2946,6 +3163,13 @@
2946
  "https://civitai.com/models/460612",
2947
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/317fdc7f-6c93-4653-99db-11d85b027e03/width=450/12768924.jpeg"
2948
  ],
 
 
 
 
 
 
 
2949
  "poolladder_Pony_v1": [
2950
  "pool ladder",
2951
  "Pony",
@@ -2960,6 +3184,13 @@
2960
  "https://civitai.com/models/407339",
2961
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/e2ed960a-a9d6-4d3e-929d-01bc0ce5602c/width=450/10176823.jpeg"
2962
  ],
 
 
 
 
 
 
 
2963
  "potty_Pony_v1": [
2964
  "potty",
2965
  "Pony",
@@ -2974,6 +3205,13 @@
2974
  "https://civitai.com/models/540509",
2975
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/d233b85a-1dfd-48d1-98eb-b758ef5079af/width=450/17360529.jpeg"
2976
  ],
 
 
 
 
 
 
 
2977
  "present_panties_XL_V1_0": [
2978
  "holding panties, unworn panties",
2979
  "SDXL 1.0",
@@ -3065,6 +3303,20 @@
3065
  "https://civitai.com/models/451983",
3066
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a239680f-38bb-456c-89f2-e87505162cf2/width=450/12311203.jpeg"
3067
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3068
  "recorderXLv1": [
3069
  "recorder,",
3070
  "SDXL 1.0",
@@ -3121,6 +3373,13 @@
3121
  "https://civitai.com/models/498892",
3122
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9822ab8f-9832-4471-9ff7-3fe6a00714c8/width=450/14826239.jpeg"
3123
  ],
 
 
 
 
 
 
 
3124
  "ribbon-trimmed_underwear_3-000010": [
3125
  "ribbon-trimmed bra / ribbon-trimmed panties",
3126
  "SD 1.5",
@@ -3198,6 +3457,13 @@
3198
  "https://civitai.com/models/285806",
3199
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/0753b9ad-4f85-49d8-b2fb-a56818836d2f/width=450/11722783.jpeg"
3200
  ],
 
 
 
 
 
 
 
3201
  "schoolEntrancePony": [
3202
  "school shoe rack, entrance / (wood duckboard on ground),asphalt / (wood duckboard on asphalt)",
3203
  "Pony",
@@ -3289,6 +3555,13 @@
3289
  "https://civitai.com/models/474245",
3290
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/6e1a16db-a5d2-4972-9814-13376f54a9ef/width=450/13485640.jpeg"
3291
  ],
 
 
 
 
 
 
 
3292
  "sit_on_seat_spread_legs_XL": [
3293
  "sit on seat spread legs",
3294
  "SDXL 1.0",
@@ -3317,6 +3590,13 @@
3317
  "https://civitai.com/models/552152",
3318
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9ee78490-d6c5-45c1-a1a0-92cb965faa10/width=450/18135129.jpeg"
3319
  ],
 
 
 
 
 
 
 
3320
  "spagainstScreenXLPony": [
3321
  "against glass, breast press, cheek press",
3322
  "Pony",
@@ -3387,6 +3667,13 @@
3387
  "https://civitai.com/models/543103",
3388
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/df9aa9e3-fc30-4eba-861e-f43c7e638ff8/width=450/17534043.jpeg"
3389
  ],
 
 
 
 
 
 
 
3390
  "submerged_nipples_pony_v04Ta": [
3391
  " submerged nipples, nude",
3392
  "Pony",
@@ -3520,6 +3807,13 @@
3520
  "https://civitai.com/models/492172",
3521
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/b3d9b1d1-f829-4900-bdde-a7b1ed99fa30/width=450/14913939.jpeg"
3522
  ],
 
 
 
 
 
 
 
3523
  "thighV2": [
3524
  "",
3525
  "SDXL 1.0",
@@ -3555,6 +3849,13 @@
3555
  "https://civitai.com/models/499436",
3556
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/8f4ac8a2-2034-4c53-9d20-fc2108840cf5/width=450/14855524.jpeg"
3557
  ],
 
 
 
 
 
 
 
3558
  "torn_clothes_pony_V1_0": [
3559
  "torn clothes / panties / bra / pantyhose / nipples / pussy / anal",
3560
  "Pony",
@@ -3625,6 +3926,20 @@
3625
  "https://civitai.com/models/292024",
3626
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/381c91b8-5f2d-4f6e-9416-fc76beab210b/width=450/7299766.jpeg"
3627
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3628
  "unsexx_XL1_1": [
3629
  "UNSEXX / 1girl / 1boy / penis / pussy",
3630
  "SDXL 1.0",
 
76
  "https://civitai.com/models/505542",
77
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/0864c0b2-2665-469d-bda9-0b7fe945963d/width=450/15207082.jpeg"
78
  ],
79
+ "0681_livestream_v1_pony": [
80
+ "ruanyi0681,livestream,english text,",
81
+ "Pony",
82
+ "0681 livestream",
83
+ "https://civitai.com/models/520093",
84
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/7cfad11a-f7ac-4fbd-887a-b16521fe7b2c/width=450/16065126.jpeg"
85
+ ],
86
+ "0683_humiliating_bondage_v1_pony": [
87
+ "ruanyi0683,arms behind back,bound wrists,top-down bottom-up",
88
+ "Pony",
89
+ "0683 humiliating bondage",
90
+ "https://civitai.com/models/521384",
91
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/7bbb1381-8b9a-485c-bb6b-c7a1c93d9e70/width=450/16141744.jpeg"
92
+ ],
93
+ "0687_public_indecency_v1_pony": [
94
+ "ruanyu0687,public indecency,bondage",
95
+ "Pony",
96
+ "0687 public indecency",
97
+ "https://civitai.com/models/523289",
98
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/f02d0eae-6e2e-4f18-8dde-ef20b8ca4ac8/width=450/16250126.jpeg"
99
+ ],
100
  "0692_breasts_harem_v1_pony": [
101
  "ruanyi0692,harem,breast press,large breasts,lactation,5girls,",
102
  "Pony",
 
153
  "https://civitai.com/models/112135",
154
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/fb82c1ee-d84d-464e-ac84-e3f83a1413f5/width=450/8545447.jpeg"
155
  ],
156
+ "ASCv02-12": [
157
+ "",
158
+ "Pony",
159
+ "Ass Contest",
160
+ "https://civitai.com/models/360097",
161
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/39eb9004-144c-4959-8f39-d0174171d382/width=450/17036757.jpeg"
162
+ ],
163
  "After_Paizuri_LoRa__PonyXL": [
164
  "pov, after paizuri, cum, penis, breasts apart, uncensored",
165
  "Pony",
 
195
  "https://civitai.com/models/543336",
196
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4701cf40-e3e3-4576-83e2-85c786bd51d0/width=450/17580481.jpeg"
197
  ],
198
+ "BCTv03-11": [
199
+ "",
200
+ "Pony",
201
+ "Breast Contest",
202
+ "https://civitai.com/models/325531",
203
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/187ad035-b560-4caf-8287-c3ea7f658d2b/width=450/16498861.jpeg"
204
+ ],
205
  "BallsTesticles_sucking_LoRa__PonyXL": [
206
  "testicle sucking, testicles, penis / testicles in mouth",
207
  "Pony",
 
335
  "https://civitai.com/models/537610",
336
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/589c894d-a54f-4ab8-8557-03a685675ae5/width=450/17170134.jpeg"
337
  ],
338
+ "CorruptAutism_Locon": [
339
+ "corruption",
340
+ "Pony",
341
+ "[Concept] Corrupt Girl Lycoris",
342
+ "https://civitai.com/models/514458",
343
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/804cff17-65d2-4499-8473-2061f734bdd6/width=450/15885057.jpeg"
344
+ ],
345
+ "CorruptHassakuXL_Locon": [
346
+ "corruption",
347
+ "Pony",
348
+ "[Concept] Corrupt Girl Lycoris",
349
+ "https://civitai.com/models/514458",
350
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/48ef6cb1-c479-4e88-9f9e-ec7c55bb84b1/width=450/15734632.jpeg"
351
+ ],
352
  "Corruptionv2_1XL": [
353
  "corruption / empty eyes / half-closed eyes / evil smile / no pupils / evil grin / combatant / dark magical girl / layered skirt / showgirl skirt",
354
  "SDXL 1.0",
 
356
  "https://civitai.com/models/17610",
357
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/ce7d0709-f4e0-4183-bcf1-f2091470503b/width=450/8866158.jpeg"
358
  ],
359
+ "Cum_Spitting": [
360
+ "cumspitting, spitting cum in hand",
361
+ "SDXL 1.0",
362
+ "Cum Spitting - Spit Semen in own Hand(s)",
363
+ "https://civitai.com/models/517683",
364
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/2947637b-210b-487b-869b-7856d99abca3/width=450/16004311.jpeg"
365
+ ],
366
+ "Cum_on_Clothes_-_SDXL_V2": [
367
+ "cumonclothes",
368
+ "SDXL 1.0",
369
+ "Cum on Clothes - SDXL",
370
+ "https://civitai.com/models/552577",
371
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/b4c3120e-41a5-4136-a95c-55b650af7f2e/width=450/18262330.jpeg"
372
+ ],
373
  "Curtsey": [
374
  "Curtsey / FULLBODY, LONG DRESS / KNEES BENT, FEET CROSSED, BOWING",
375
  "SDXL 1.0",
 
433
  "https://civitai.com/models/149316",
434
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/de89e774-63f1-4f37-8edf-5ea4ae7ab7df/width=450/2613890.jpeg"
435
  ],
436
+ "Eggvibe_3-000009": [
437
+ "vibrator / thigh strap / thighhighs / tape",
438
+ "Pony",
439
+ "Egg vibrator",
440
+ "https://civitai.com/models/518415",
441
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/53c4f4a9-457d-4d44-ba47-fc75f6791f7c/width=450/15968399.jpeg"
442
+ ],
443
  "Expressive_H-000001": [
444
  "Expressiveh",
445
  "Pony",
 
524
  "https://civitai.com/models/482233",
525
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4e644998-97a5-488f-ae1c-b248154d4fd0/width=450/13905331.jpeg"
526
  ],
527
+ "Gyaru": [
528
+ "",
529
+ "SDXL 1.0",
530
+ "Gyaru concept",
531
+ "https://civitai.com/models/535966",
532
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a7f58842-13be-40e7-a65d-0abe77106382/width=450/17057493.jpeg"
533
+ ],
534
  "Hankyu3000_SDXL_V1": [
535
  "hankyu3000",
536
  "SDXL 1.0",
 
573
  "https://civitai.com/models/545318",
574
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/e1149fca-ba5b-4db2-927a-b99c13992941/width=450/17681084.jpeg"
575
  ],
576
+ "HoldingHandsPOV_XLPD": [
577
+ "holding hands, solo focus, pov hands, out of frame",
578
+ "Pony",
579
+ "Holding Hands Pov | Concept/Pose LoRA XL",
580
+ "https://civitai.com/models/495493",
581
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/d9504e3f-5dcf-4f71-84bd-e0abba5cdca9/width=450/14609349.jpeg"
582
+ ],
583
  "Hoseki_Concept_GuidedPenetration_PDXL_v1": [
584
  "guided penetration",
585
  "Pony",
 
678
  "https://civitai.com/models/537918",
679
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/edfec5cf-6241-4950-b99b-571251a79265/width=450/17179954.jpeg"
680
  ],
681
+ "Just_The_Tip_Pony": [
682
+ "1woman, imminent_penetration, imminent vaginal, just_the_tip, uncensored pussy, anus, 1boy, large penis, penis_on_pussy / imminent_penetration:1.2, just the tip:1.2, just_the_tip:1.2",
683
+ "Pony",
684
+ "Just_The_Tip_XL",
685
+ "https://civitai.com/models/537044",
686
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/3cb050fa-1bf1-49b5-9522-a95a0cd59e98/width=450/18243867.jpeg"
687
+ ],
688
+ "Just_The_Tip_SDXL": [
689
+ "1woman, imminent_penetration, imminent vaginal, just_the_tip, uncensored pussy, anus, 1boy, large penis, penis_on_pussy / imminent_penetration:1.2, just the tip:1.2, just_the_tip:1.2 / <lora:Just_The_Tip_SDXL-v1:0.7>",
690
+ "SDXL 1.0",
691
+ "Just_The_Tip_XL",
692
+ "https://civitai.com/models/537044",
693
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/21cb499b-78e0-4099-94ac-c6ecc8d6765b/width=450/17146842.jpeg"
694
+ ],
695
  "KabedompovPonyXL": [
696
  "kabedon / pov hands",
697
  "Pony",
 
720
  "https://civitai.com/models/446981",
721
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4df0acd9-4584-4e54-9f8d-234b01ad36c0/width=450/12067962.jpeg"
722
  ],
723
+ "Livestream_LoRa__PonyXL": [
724
+ "livestream, user interface",
725
+ "Pony",
726
+ "Livestream LoRa | PonyXL",
727
+ "https://civitai.com/models/544180",
728
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/8b77dccf-695d-4675-a387-fb6f9725a1a7/width=450/17954890.jpeg"
729
+ ],
730
+ "LoraEbaraXL21_vibrator_on_clitoris_v1": [
731
+ "vibrator on clitoris / pussy tape",
732
+ "Pony",
733
+ "vibrator on clitoris with tape PonyXL",
734
+ "https://civitai.com/models/506758",
735
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/1d0e6727-50fa-46cd-86c8-1dced4bbbed5/width=450/16361735.jpeg"
736
+ ],
737
+ "LoraPonyXL60_vibrator_on_clitoris_v1_1": [
738
+ "vibrator on clitoris / pussy tape",
739
+ "Pony",
740
+ "vibrator on clitoris with tape PonyXL",
741
+ "https://civitai.com/models/506758",
742
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a6f2c672-3537-4ac6-85ee-a31d2572714e/width=450/16362203.jpeg"
743
+ ],
744
  "MS_PDXL_AfterSex_Lite": [
745
  "after sex, cum, lying, cumdrip, ass, on stomach, on back, fucked silly, sweat, cum pool, bukkake, trembling",
746
  "Pony",
 
755
  "https://civitai.com/models/550384",
756
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a337f088-579c-4713-9424-2c3f2b9530ed/width=450/18019685.jpeg"
757
  ],
758
+ "Masturbating_with_Blade": [
759
+ "Masturbating with Hilt / Deep Insertion / Holding Weapon",
760
+ "SDXL 1.0",
761
+ "Masturbating with Hilt",
762
+ "https://civitai.com/models/543860",
763
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/f10ce41a-98f9-4086-ba7e-61600aed1827/width=450/17685268.jpeg"
764
+ ],
765
+ "Masturbating_with_Hilt": [
766
+ "Masturbating with Hilt / Deep Insertion / holding weapon",
767
+ "Pony",
768
+ "Masturbating with Hilt",
769
+ "https://civitai.com/models/543860",
770
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/061c221c-ec82-4ebc-8d76-673e8bacf7c2/width=450/17584652.jpeg"
771
+ ],
772
  "MdaStarouXL_ANI31_lokr_V43P1NF": [
773
  "",
774
  "SDXL 1.0",
 
818
  "https://civitai.com/models/216129",
819
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/2dc8c96b-e537-4a7c-8bee-505c5d3f6ea1/width=450/4053098.jpeg"
820
  ],
821
+ "OnsenGirls-000008": [
822
+ "zzlotsofgirls,",
823
+ "Pony",
824
+ "Onsen Girls: Hot Springs Harem (Concept)",
825
+ "https://civitai.com/models/472624",
826
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9ac17dc6-ca5a-4e46-9ed1-20efede80842/width=450/16029098.jpeg"
827
+ ],
828
  "Oshiki_Hitoshi": [
829
  "",
830
  "SDXL 1.0",
 
832
  "https://civitai.com/models/315802",
833
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/31a47a04-d99f-4a70-a587-6363b95dd0a0/width=450/11295121.jpeg"
834
  ],
835
+ "Ossan_Mating_Press_Girl_Crushed_Under_Obese_Man_Fucking_Her": [
836
+ "0ss4npr3ss / ossan / size difference / large obese male / small shortstack female / mating press / missionary position sex / sex / boy on top sex / girl crushed under fat man fucking her / girl's legs up around man's hips / motion lines / kissing / shortstack",
837
+ "Pony",
838
+ "Ossan Mating Press (Girl Crushed Under Obese Man Fucking Her)",
839
+ "https://civitai.com/models/522774",
840
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/0394228c-3e6c-481b-a306-7a39526f5560/width=450/16219916.jpeg"
841
+ ],
842
  "PCs_and_Smartphones": [
843
  "",
844
  "SDXL 1.0",
 
860
  "https://civitai.com/models/533099",
861
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/eff29eaa-43c4-4fc8-963c-406d9f820e21/width=450/16869588.jpeg"
862
  ],
863
+ "PUNs002_XL_v2": [
864
+ " under skirt, / multiple_views, / underwear, / panties visible / pantyshot,",
865
+ "SDXL 1.0 LCM",
866
+ "Under skirt Multiple views : \u582a\u80fd\u30d1\u30f3\u30c1\u30e9\u76d7\u64ae lora",
867
+ "https://civitai.com/models/345352",
868
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/2fc201a9-840c-4c7d-a648-db2cd3639ac3/width=450/16860750.jpeg"
869
+ ],
870
  "PaiControlPdxlDwnsty-000005": [
871
  "paizuri motion / motion line, motion blur, speed lines",
872
  "Pony",
 
881
  "https://civitai.com/models/507585",
882
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/b0a86cd6-b3d2-4bc2-bd8b-8fe9b36da874/width=450/15380713.jpeg"
883
  ],
884
+ "Pasta_Art-000010": [
885
+ "",
886
+ "SDXL 1.0",
887
+ "Pasta Art",
888
+ "https://civitai.com/models/553826",
889
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/800fe1ea-d932-4dcf-b3fd-9fb9c05045a9/width=450/18260837.jpeg"
890
+ ],
891
  "PerfectPussy-9000": [
892
  "Perfect Pussy / Cameltoe",
893
  "SDXL 1.0",
 
1189
  "https://civitai.com/models/530852",
1190
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a05db25b-8a3b-40a8-b7cf-99acaebb36d6/width=450/16720266.jpeg"
1191
  ],
1192
+ "TripleFellatio": [
1193
+ "triple fellatio, penis, multiple girls, oral, hetero, fellatio, 3girls, 1boy, multiple fellatio, looking at viewer, licking, saliva, erection, pov, veins, veiny penis, large penis, group sex,",
1194
+ "Pony",
1195
+ "Triple Fellatio / Cooperative Fellatio",
1196
+ "https://civitai.com/models/526246",
1197
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/1f860d47-5004-4dc8-99a9-a30f89bb06de/width=450/16415207.jpeg"
1198
+ ],
1199
  "TsunakoPony": [
1200
  "",
1201
  "Pony",
 
1259
  "https://civitai.com/models/214575",
1260
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/4032b9b8-091a-44ef-b44a-14825f7f712a/width=450/10958207.jpeg"
1261
  ],
1262
+ "X-ray_Ver_2_0": [
1263
+ "x-ray / x-ray-blowjob / x-ray, anal",
1264
+ "Pony",
1265
+ "X-ray",
1266
+ "https://civitai.com/models/512695",
1267
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/09965214-1ce8-449e-a429-5dc5df8f629a/width=450/18246462.jpeg"
1268
+ ],
1269
  "XL_crying_aqua(kohaku_delta)-000009": [
1270
  "open mouth,solo,tears,crying,blush,crying with eyes open",
1271
  "SDXL 1.0",
 
1980
  "https://civitai.com/models/529015",
1981
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/b8441713-57c6-4280-840c-d530ab9e5b08/width=450/17352599.jpeg"
1982
  ],
1983
+ "diagonallyxl16": [
1984
+ "diagonally face, front and little side face,detailed eyes",
1985
+ "SDXL 1.0",
1986
+ "XL- enhance angle",
1987
+ "https://civitai.com/models/521559",
1988
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9d6344e4-e096-4034-b00a-52108420f0bd/width=450/16663513.jpeg"
1989
+ ],
1990
  "dikko-XL-v3-ep20": [
1991
  "",
1992
  "SDXL 1.0",
 
2036
  "https://civitai.com/models/393273",
2037
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/d61e0783-9d00-43a0-9b10-03f43ba40a51/width=450/9556301.jpeg"
2038
  ],
2039
+ "earsex_hentai_Pony_V1": [
2040
+ "ear sex, Grab head, pulling head to waist, inserted deep, inserted to the base, 1girl, solo focus, hetero, 1 boy, clothed female nude male, crying, blush, ahegao, rolling eyes, tongue, tongue out, open mouth, cum, cum in mouth, facial, cum on hair, cum in ear, After fellatio, navel, nipples, open clothes, open clothes, clothes lift, collarbone,",
2041
+ "Pony",
2042
+ "Ear Sex Hentai PONY LX | \u8033\u59e6 \u30a2\u30cb\u30e1\u30fb\u30a4\u30e9\u30b9\u30c8\u7528 PONY\u7528",
2043
+ "https://civitai.com/models/552463",
2044
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/3a9dcf85-a3e8-44d4-9e48-1a6b0f21ef31/width=450/18153670.jpeg"
2045
+ ],
2046
  "embarrassedexposure_pony_v2": [
2047
  "sittingspread, white socks, spread legs,pussy, nude,1girl,solo / uterusdrawing,nude, / 1girl,solo, standingarms, standing, on desk,nude,nsfw,school desk,full body, / sittingknees, nude,nsfw, / shockedface,embarrassed, / sittingcovering, 1girl, solo, nude, pussy, uncensored, breasts, short hair, covering,face, / embarrassedspreadpussy,1girl, solo, nude, naked, embarrassed, blush, on desk, indoors, filming, camera, digital camera,v,",
2048
  "Pony",
 
2134
  "https://civitai.com/models/332467",
2135
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9a1429e0-803f-47bf-bd32-a0c9c6f712b5/width=450/17870909.jpeg"
2136
  ],
2137
+ "footpin": [
2138
+ "footpin / sex from behind / head down / foot on head",
2139
+ "Pony",
2140
+ "Foot On Head Doggystyle (going on break)",
2141
+ "https://civitai.com/models/547768",
2142
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/51c11967-ea09-45d9-b8aa-9753481d6307/width=450/17844377.jpeg"
2143
+ ],
2144
  "foreskin_insertion_v0_1-pony": [
2145
  "foreskin insertion",
2146
  "Pony",
 
2176
  "https://civitai.com/models/357976",
2177
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/ead23075-e9ff-4378-b1b3-442b1abaef78/width=450/14593009.jpeg"
2178
  ],
2179
+ "glansjob": [
2180
+ "glansjob / pov / handjob",
2181
+ "Pony",
2182
+ "Glansjob",
2183
+ "https://civitai.com/models/545646",
2184
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/c88d27d8-8a5f-4d1d-a640-e74d52c61ece/width=450/17699516.jpeg"
2185
+ ],
2186
  "glass": [
2187
  "",
2188
  "SDXL 1.0",
 
2834
  "https://civitai.com/models/500165",
2835
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/956deaff-2606-4344-83fb-2ccc0a9d82b6/width=450/14898053.jpeg"
2836
  ],
2837
+ "nipples_fuck_pony_V1_0": [
2838
+ "nipples fuck,spread nipples,hetero,breats",
2839
+ "Pony",
2840
+ "\u4e73\u9996\u633f\u5165/nipples fuck(pony)",
2841
+ "https://civitai.com/models/519082",
2842
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/62e358a7-eaf5-4e67-8c7f-2ca6080d9741/width=450/16011887.jpeg"
2843
+ ],
2844
  "nsfw70": [
2845
  "",
2846
  "Pony",
 
2855
  "https://civitai.com/models/506443",
2856
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/38a870d1-257a-4897-bb7b-7c57eb15f0bf/width=450/15268649.jpeg"
2857
  ],
2858
+ "nyotaimori-ponyxl-lora-nochekaiser": [
2859
+ "<lora:nyotaimori-ponyxl-lora-nochekaiser:1>, nyotaimori, sashimi, food on body, sushi, wasabi, soy sauce, cream, whipped cream, food on breasts, food, cream on body, thighs,",
2860
+ "Pony",
2861
+ "Nyotaimori (\u5973\u4f53\u76db\u308a) - Concept",
2862
+ "https://civitai.com/models/544685",
2863
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/31c5c07a-9d7f-4ec5-8539-7cc8e60e504b/width=450/17711939.jpeg"
2864
+ ],
2865
  "ofuda_on_nipples_A31_e1-000010": [
2866
  "talisman / ofuda on nipples / ofuda on pussy",
2867
  "SDXL 1.0",
 
3163
  "https://civitai.com/models/460612",
3164
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/317fdc7f-6c93-4653-99db-11d85b027e03/width=450/12768924.jpeg"
3165
  ],
3166
+ "ponyxl_armpit_sex": [
3167
+ "armpit sex / arm up / arms up / arm down",
3168
+ "Pony",
3169
+ "Armpit Sex // PonyXL Concept LoRA",
3170
+ "https://civitai.com/models/525840",
3171
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/cce89ce1-8f3d-4fc5-a7de-e05cdb506627/width=450/16393164.jpeg"
3172
+ ],
3173
  "poolladder_Pony_v1": [
3174
  "pool ladder",
3175
  "Pony",
 
3184
  "https://civitai.com/models/407339",
3185
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/e2ed960a-a9d6-4d3e-929d-01bc0ce5602c/width=450/10176823.jpeg"
3186
  ],
3187
+ "portal_from_penis_1": [
3188
+ "penis from portal",
3189
+ "Pony",
3190
+ "[PonyXL] - Penis from Portal/Wormhole - autofellatio, autopenetration",
3191
+ "https://civitai.com/models/532146",
3192
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/3dc9657a-6f0a-45d3-aa8e-c148d7ef36a8/width=450/16791812.jpeg"
3193
+ ],
3194
  "potty_Pony_v1": [
3195
  "potty",
3196
  "Pony",
 
3205
  "https://civitai.com/models/540509",
3206
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/d233b85a-1dfd-48d1-98eb-b758ef5079af/width=450/17360529.jpeg"
3207
  ],
3208
+ "povsit": [
3209
+ "povsit / from below",
3210
+ "Pony",
3211
+ "POV Facesitting / Impending Facesitting",
3212
+ "https://civitai.com/models/518838",
3213
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/b239c461-cd59-462f-b915-172b4bba1568/width=450/15998009.jpeg"
3214
+ ],
3215
  "present_panties_XL_V1_0": [
3216
  "holding panties, unworn panties",
3217
  "SDXL 1.0",
 
3303
  "https://civitai.com/models/451983",
3304
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a239680f-38bb-456c-89f2-e87505162cf2/width=450/12311203.jpeg"
3305
  ],
3306
+ "rattle_Pony_v1": [
3307
+ "rattle",
3308
+ "Pony",
3309
+ "[SDXL&Pony] rattle / \u30ac\u30e9\u30ac\u30e9 / \u30e9\u30c8\u30eb",
3310
+ "https://civitai.com/models/517933",
3311
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/7a32e172-00f4-45a7-b85c-ad1e23d9ebf2/width=450/18052793.jpeg"
3312
+ ],
3313
+ "rattle_XL_v1": [
3314
+ "rattle",
3315
+ "SDXL 1.0",
3316
+ "[SDXL&Pony] rattle / \u30ac\u30e9\u30ac\u30e9 / \u30e9\u30c8\u30eb",
3317
+ "https://civitai.com/models/517933",
3318
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/8b339ddb-2573-468f-872b-2f1cdf2fab45/width=450/15935806.jpeg"
3319
+ ],
3320
  "recorderXLv1": [
3321
  "recorder,",
3322
  "SDXL 1.0",
 
3373
  "https://civitai.com/models/498892",
3374
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9822ab8f-9832-4471-9ff7-3fe6a00714c8/width=450/14826239.jpeg"
3375
  ],
3376
+ "revealing_forehead_concept-soralz": [
3377
+ "revealing forehead, hand on own hair, forehead, head tilt",
3378
+ "Pony",
3379
+ "[PDXL] Concept - Revealing Forehead",
3380
+ "https://civitai.com/models/533743",
3381
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/73fcdfa4-7129-44d5-8f5e-785d9870405f/width=450/16897912.jpeg"
3382
+ ],
3383
  "ribbon-trimmed_underwear_3-000010": [
3384
  "ribbon-trimmed bra / ribbon-trimmed panties",
3385
  "SD 1.5",
 
3457
  "https://civitai.com/models/285806",
3458
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/0753b9ad-4f85-49d8-b2fb-a56818836d2f/width=450/11722783.jpeg"
3459
  ],
3460
+ "scaredv4-000009": [
3461
+ "scared expression / shaded face",
3462
+ "Pony",
3463
+ "[PonyXL] Scared Expression LoRA",
3464
+ "https://civitai.com/models/425598",
3465
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/84930474-9488-4fba-ada0-3474dc952495/width=450/15817473.jpeg"
3466
+ ],
3467
  "schoolEntrancePony": [
3468
  "school shoe rack, entrance / (wood duckboard on ground),asphalt / (wood duckboard on asphalt)",
3469
  "Pony",
 
3555
  "https://civitai.com/models/474245",
3556
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/6e1a16db-a5d2-4972-9814-13376f54a9ef/width=450/13485640.jpeg"
3557
  ],
3558
+ "sidepositionxl16": [
3559
+ "side,scenery,part of landscape",
3560
+ "SDXL 1.0",
3561
+ "XL- enhance angle",
3562
+ "https://civitai.com/models/521559",
3563
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/604e4841-75a3-4f64-8da5-daf545a07701/width=450/16553655.jpeg"
3564
+ ],
3565
  "sit_on_seat_spread_legs_XL": [
3566
  "sit on seat spread legs",
3567
  "SDXL 1.0",
 
3590
  "https://civitai.com/models/552152",
3591
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/9ee78490-d6c5-45c1-a1a0-92cb965faa10/width=450/18135129.jpeg"
3592
  ],
3593
+ "sotohane_hairXL": [
3594
+ "Straight Flipped Hair",
3595
+ "Pony",
3596
+ "Sotohane Hair / Flipped Hair (Pony)",
3597
+ "https://civitai.com/models/515257",
3598
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/21932edc-873b-4afc-973d-a3367839ed60/width=450/15781528.jpeg"
3599
+ ],
3600
  "spagainstScreenXLPony": [
3601
  "against glass, breast press, cheek press",
3602
  "Pony",
 
3667
  "https://civitai.com/models/543103",
3668
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/df9aa9e3-fc30-4eba-861e-f43c7e638ff8/width=450/17534043.jpeg"
3669
  ],
3670
+ "stun_baton": [
3671
+ " stun baton / stun baton attack / electricity / electrostimulation ",
3672
+ "Pony",
3673
+ "[PonyXL] Stun baton",
3674
+ "https://civitai.com/models/516478",
3675
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/c73b5dfc-d9d5-47a1-a768-fcfc6b2fd0be/width=450/15848437.jpeg"
3676
+ ],
3677
  "submerged_nipples_pony_v04Ta": [
3678
  " submerged nipples, nude",
3679
  "Pony",
 
3807
  "https://civitai.com/models/492172",
3808
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/b3d9b1d1-f829-4900-bdde-a7b1ed99fa30/width=450/14913939.jpeg"
3809
  ],
3810
+ "testicle-sucking-ponyxl-lora-nochekaiser": [
3811
+ "<lora:testicle-sucking-ponyxl-lora-nochekaiser:1>, testicle sucking, nude, naked, oral, penis, penis on face, erection, ",
3812
+ "Pony",
3813
+ "Testicle Sucking - Concept",
3814
+ "https://civitai.com/models/545236",
3815
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/a290e1bc-c7cc-4465-9454-9b537e73843d/width=450/17687361.jpeg"
3816
+ ],
3817
  "thighV2": [
3818
  "",
3819
  "SDXL 1.0",
 
3849
  "https://civitai.com/models/499436",
3850
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/8f4ac8a2-2034-4c53-9d20-fc2108840cf5/width=450/14855524.jpeg"
3851
  ],
3852
+ "topanglexl16": [
3853
+ "above / from above",
3854
+ "SDXL 1.0",
3855
+ "XL- enhance angle",
3856
+ "https://civitai.com/models/521559",
3857
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/3e9a5020-a0ac-4f56-80ea-a3f606a7bf03/width=450/16151426.jpeg"
3858
+ ],
3859
  "torn_clothes_pony_V1_0": [
3860
  "torn clothes / panties / bra / pantyhose / nipples / pussy / anal",
3861
  "Pony",
 
3926
  "https://civitai.com/models/292024",
3927
  "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/381c91b8-5f2d-4f6e-9416-fc76beab210b/width=450/7299766.jpeg"
3928
  ],
3929
+ "underanglexl16": [
3930
+ " from below,shoes,delicate detailed eyes",
3931
+ "SDXL 1.0",
3932
+ "XL- enhance angle",
3933
+ "https://civitai.com/models/521559",
3934
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/1ba41096-1386-4576-9e1c-81fbd786b9b0/width=450/16171481.jpeg"
3935
+ ],
3936
+ "undressing-ponyxl-lora-nochekaiser": [
3937
+ "<lora:undressing-ponyxl-lora-nochekaiser:1>, undressing, underwear, clothes pull, pulling own clothes, bra, panties, panty pull, shirt lift, open shirt, skirt pull, clothes lift,",
3938
+ "Pony",
3939
+ "Undressing - Concept",
3940
+ "https://civitai.com/models/545258",
3941
+ "https://image.civitai.com/xG1nkqKTMzGDvpLrqFT7WA/176e85e7-9bfa-4f23-b19c-0992c24c9aad/width=450/17684871.jpeg"
3942
+ ],
3943
  "unsexx_XL1_1": [
3944
  "UNSEXX / 1girl / 1boy / penis / pussy",
3945
  "SDXL 1.0",
modutils.py CHANGED
@@ -5,7 +5,10 @@ from PIL import Image
5
  from huggingface_hub import HfApi
6
  from requests import HTTPError, Timeout
7
 
8
- HF_LORA_PRIVATE_REPOS = ['John6666/loratest1', 'John6666/loratest3', 'John6666/loratest4', 'John6666/loratest6', 'John6666/loratest10', 'John6666/loratest']
 
 
 
9
  HF_LORA_ESSENTIAL_PRIVATE_REPO = 'John6666/loratest1'
10
  directory_loras = 'loras'
11
  CIVITAI_API_KEY = os.environ.get("CIVITAI_API_KEY")
@@ -114,11 +117,14 @@ def get_private_model_list(repo_id, dir_path):
114
  return model_list
115
 
116
 
117
- def get_private_model_lists(repo_id_list, dir_path):
118
- models = []
119
- for repo in repo_id_list:
120
- models.extend(get_private_model_list(repo, dir_path))
121
- models = list_uniq(models)
 
 
 
122
  return models
123
 
124
 
@@ -284,7 +290,8 @@ def set_optimization(opt, steps_gui, cfg_gui, sampler_gui, clip_skip_gui, lora1_
284
  gr.update(value=clip_skip), gr.update(value=lora1), gr.update(value=lora_scale_1),
285
 
286
 
287
- def set_lora_prompt(prompt_gui, prompt_syntax_gui, lora1_gui, lora_scale_1_gui, lora2_gui, lora_scale_2_gui, lora3_gui, lora_scale_3_gui, lora4_gui, lora_scale_4_gui, lora5_gui, lora_scale_5_gui):
 
288
  import os
289
  if not "Classic" in str(prompt_syntax_gui): return prompt_gui
290
  loras = []
@@ -409,7 +416,7 @@ def set_lora_trigger(lora_gui: str):
409
  if not lora_gui or lora_gui == "None": return gr.update(value="", visible=False), gr.update(visible=False), gr.update(value="", visible=False), gr.update(value="", visible=True)
410
  path = Path(lora_gui)
411
  new_path = Path(f'{path.parent.name}/{escape_lora_basename(path.stem)}{path.suffix}')
412
- if not new_path.stem in lora_trigger_dict.keys() and not str(path) in set(get_private_model_lists(HF_LORA_PRIVATE_REPOS, directory_loras) + get_model_list(directory_loras)):
413
  return gr.update(value="", visible=False), gr.update(visible=False), gr.update(value="", visible=False), gr.update(value="", visible=True)
414
  if not new_path.exists():
415
  download_private_file_from_somewhere(str(path), True)
@@ -435,7 +442,7 @@ def set_lora_trigger(lora_gui: str):
435
  elif items[3]:
436
  md = f'[LoRA Model URL]({items[3]})'
437
  if tag and flag:
438
- new_lora_model_list = list_uniq(get_private_model_lists(HF_LORA_PRIVATE_REPOS, directory_loras) + get_model_list(directory_loras))
439
  return gr.update(value=tag, label=label, visible=True), gr.update(visible=True),\
440
  gr.update(value=md, visible=True), gr.update(value=str(new_path), choices=get_lora_tupled_list(new_lora_model_list))
441
  elif tag:
@@ -462,7 +469,7 @@ def apply_lora_prompt(prompt_gui: str, lora_trigger_gui: str):
462
 
463
  def upload_file_lora(files):
464
  file_paths = [file.name for file in files]
465
- return gr.update(value=file_paths, visible=True)
466
 
467
 
468
  def move_file_lora(filepaths):
@@ -474,7 +481,7 @@ def move_file_lora(filepaths):
474
  path.rename(newpath)
475
  update_lora_dict(str(newpath))
476
 
477
- new_lora_model_list = list_uniq(get_private_model_lists(HF_LORA_PRIVATE_REPOS, directory_loras) + get_model_list(directory_loras))
478
  new_lora_model_list.insert(0, "None")
479
 
480
  return gr.update(
@@ -533,7 +540,8 @@ civitai_lora_last_results = {}
533
  def search_civitai_lora(query, base_model):
534
  global civitai_lora_last_results
535
  items = search_lora_on_civitai(query, base_model)
536
- if not items: return gr.update(choices=[("", "")], value="", visible=False), gr.update(value="", visible=False)
 
537
  civitai_lora_last_results = {}
538
  choices = []
539
  for item in items:
@@ -542,9 +550,11 @@ def search_civitai_lora(query, base_model):
542
  value = item['dl_url']
543
  choices.append((name, value))
544
  civitai_lora_last_results[value] = item['md']
545
- if not choices: return gr.update(choices=[("", "")], value="", visible=False), gr.update(value="", visible=False)
 
546
  md = civitai_lora_last_results.get(choices[0][1], "None")
547
- return gr.update(choices=choices, value=choices[0][1], visible=True), gr.update(value=md, visible=True)
 
548
 
549
 
550
  def select_civitai_lora(search_result):
 
5
  from huggingface_hub import HfApi
6
  from requests import HTTPError, Timeout
7
 
8
+
9
+ HF_LORA_PRIVATE_REPOS1 = ['John6666/loratest1', 'John6666/loratest3', 'John6666/loratest4', 'John6666/loratest6']
10
+ HF_LORA_PRIVATE_REPOS2 = ['John6666/loratest10', 'John6666/loratest']
11
+ HF_LORA_PRIVATE_REPOS = HF_LORA_PRIVATE_REPOS1 + HF_LORA_PRIVATE_REPOS2
12
  HF_LORA_ESSENTIAL_PRIVATE_REPO = 'John6666/loratest1'
13
  directory_loras = 'loras'
14
  CIVITAI_API_KEY = os.environ.get("CIVITAI_API_KEY")
 
117
  return model_list
118
 
119
 
120
+ def get_private_lora_model_lists():
121
+ models1 = []
122
+ models2 = []
123
+ for repo in HF_LORA_PRIVATE_REPOS1:
124
+ models1.extend(get_private_model_list(repo, directory_loras))
125
+ for repo in HF_LORA_PRIVATE_REPOS2:
126
+ models2.extend(get_private_model_list(repo, directory_loras))
127
+ models = list_uniq(models1 + sorted(models2))
128
  return models
129
 
130
 
 
290
  gr.update(value=clip_skip), gr.update(value=lora1), gr.update(value=lora_scale_1),
291
 
292
 
293
+ def set_lora_prompt(prompt_gui, prompt_syntax_gui, lora1_gui, lora_scale_1_gui, lora2_gui, lora_scale_2_gui,\
294
+ lora3_gui, lora_scale_3_gui, lora4_gui, lora_scale_4_gui, lora5_gui, lora_scale_5_gui):
295
  import os
296
  if not "Classic" in str(prompt_syntax_gui): return prompt_gui
297
  loras = []
 
416
  if not lora_gui or lora_gui == "None": return gr.update(value="", visible=False), gr.update(visible=False), gr.update(value="", visible=False), gr.update(value="", visible=True)
417
  path = Path(lora_gui)
418
  new_path = Path(f'{path.parent.name}/{escape_lora_basename(path.stem)}{path.suffix}')
419
+ if not new_path.stem in lora_trigger_dict.keys() and not str(path) in set(get_private_lora_model_lists() + get_model_list(directory_loras)):
420
  return gr.update(value="", visible=False), gr.update(visible=False), gr.update(value="", visible=False), gr.update(value="", visible=True)
421
  if not new_path.exists():
422
  download_private_file_from_somewhere(str(path), True)
 
442
  elif items[3]:
443
  md = f'[LoRA Model URL]({items[3]})'
444
  if tag and flag:
445
+ new_lora_model_list = list_uniq(get_private_lora_model_lists() + get_model_list(directory_loras))
446
  return gr.update(value=tag, label=label, visible=True), gr.update(visible=True),\
447
  gr.update(value=md, visible=True), gr.update(value=str(new_path), choices=get_lora_tupled_list(new_lora_model_list))
448
  elif tag:
 
469
 
470
  def upload_file_lora(files):
471
  file_paths = [file.name for file in files]
472
+ return gr.update(value=file_paths, visible=True), gr.update(visible=True)
473
 
474
 
475
  def move_file_lora(filepaths):
 
481
  path.rename(newpath)
482
  update_lora_dict(str(newpath))
483
 
484
+ new_lora_model_list = list_uniq(get_private_lora_model_lists() + get_model_list(directory_loras))
485
  new_lora_model_list.insert(0, "None")
486
 
487
  return gr.update(
 
540
  def search_civitai_lora(query, base_model):
541
  global civitai_lora_last_results
542
  items = search_lora_on_civitai(query, base_model)
543
+ if not items: return gr.update(choices=[("", "")], value="", visible=False),\
544
+ gr.update(value="", visible=False), gr.update(visible=True), gr.update(visible=True)
545
  civitai_lora_last_results = {}
546
  choices = []
547
  for item in items:
 
550
  value = item['dl_url']
551
  choices.append((name, value))
552
  civitai_lora_last_results[value] = item['md']
553
+ if not choices: return gr.update(choices=[("", "")], value="", visible=False),\
554
+ gr.update(value="", visible=False), gr.update(visible=True), gr.update(visible=True)
555
  md = civitai_lora_last_results.get(choices[0][1], "None")
556
+ return gr.update(choices=choices, value=choices[0][1], visible=True), gr.update(value=md, visible=True),\
557
+ gr.update(visible=True), gr.update(visible=True)
558
 
559
 
560
  def select_civitai_lora(search_result):