mirror of
https://github.com/invoke-ai/InvokeAI
synced 2024-08-30 20:32:17 +00:00
add curated set of HuggingFace diffusers models for 2.3.1 release
- Final list can be found in invokeai/configs/INITIAL_MODELS.yaml - After installing all the models, I discovered a bug in the file selection form that caused a crash when no remaining uninstalled models remained. So had to fix this.
This commit is contained in:
parent
c69fcb1c10
commit
a540cc537f
@ -6,53 +6,78 @@ stable-diffusion-1.5:
|
|||||||
repo_id: stabilityai/sd-vae-ft-mse
|
repo_id: stabilityai/sd-vae-ft-mse
|
||||||
recommended: True
|
recommended: True
|
||||||
default: True
|
default: True
|
||||||
inpainting-1.5:
|
sd-inpainting-1.5:
|
||||||
description: RunwayML SD 1.5 model optimized for inpainting, diffusers version (4.27 GB)
|
description: RunwayML SD 1.5 model optimized for inpainting, diffusers version (4.27 GB)
|
||||||
repo_id: runwayml/stable-diffusion-inpainting
|
repo_id: runwayml/stable-diffusion-inpainting
|
||||||
format: diffusers
|
format: diffusers
|
||||||
vae:
|
vae:
|
||||||
repo_id: stabilityai/sd-vae-ft-mse
|
repo_id: stabilityai/sd-vae-ft-mse
|
||||||
recommended: True
|
recommended: True
|
||||||
dreamlike-diffusion-1.0:
|
stable-diffusion-2.1:
|
||||||
description: An SD 1.5 model fine tuned on high quality art by dreamlike.art, diffusers version (2.13 BG)
|
|
||||||
format: diffusers
|
|
||||||
repo_id: dreamlike-art/dreamlike-diffusion-1.0
|
|
||||||
vae:
|
|
||||||
repo_id: stabilityai/sd-vae-ft-mse
|
|
||||||
recommended: True
|
|
||||||
dreamlike-photoreal-2.0:
|
|
||||||
description: A photorealistic model trained on 768 pixel images based on SD 1.5 (2.13 GB)
|
|
||||||
format: diffusers
|
|
||||||
repo_id: dreamlike-art/dreamlike-photoreal-2.0
|
|
||||||
recommended: False
|
|
||||||
stable-diffusion-2.1-768:
|
|
||||||
description: Stable Diffusion version 2.1 diffusers model, trained on 768 pixel images (5.21 GB)
|
description: Stable Diffusion version 2.1 diffusers model, trained on 768 pixel images (5.21 GB)
|
||||||
repo_id: stabilityai/stable-diffusion-2-1
|
repo_id: stabilityai/stable-diffusion-2-1
|
||||||
format: diffusers
|
format: diffusers
|
||||||
recommended: True
|
recommended: True
|
||||||
stable-diffusion-2.1-base:
|
sd-inpainting-2.0:
|
||||||
description: Stable Diffusion version 2.1 diffusers base model, trained on 512 pixel images (5.21 GB)
|
description: Stable Diffusion version 2.0 inpainting model (5.21 GB)
|
||||||
repo_id: stabilityai/stable-diffusion-2-1-base
|
repo_id: stabilityai/stable-diffusion-2-1
|
||||||
format: diffusers
|
format: diffusers
|
||||||
recommended: False
|
recommended: False
|
||||||
|
analog-diffusion-1.0:
|
||||||
|
description: An SD-1.5 model trained on diverse analog photographs (2.13 GB)
|
||||||
|
repo_id: wavymulder/Analog-Diffusion
|
||||||
|
format: diffusers
|
||||||
|
recommended: false
|
||||||
|
deliberate-1.0:
|
||||||
|
description: Versatile model that produces detailed images up to 768px (4.27 GB)
|
||||||
|
format: diffusers
|
||||||
|
repo_id: XpucT/Deliberate
|
||||||
|
recommended: False
|
||||||
|
d&d-diffusion-1.0:
|
||||||
|
description: Dungeons & Dragons characters (2.13 GB)
|
||||||
|
format: diffusers
|
||||||
|
repo_id: 0xJustin/Dungeons-and-Diffusion
|
||||||
|
recommended: False
|
||||||
|
dreamlike-photoreal-2.0:
|
||||||
|
description: A photorealistic model trained on 768 pixel images based on SD 1.5 (2.13 GB)
|
||||||
|
format: diffusers
|
||||||
|
repo_id: dreamlike-art/dreamlike-photoreal-2.0
|
||||||
|
recommended: False
|
||||||
|
inkpunk-1.0:
|
||||||
|
description: Stylized illustrations inspired by Gorillaz, FLCL and Shinkawa; prompt with "nvinkpunk" (4.27 GB)
|
||||||
|
format: diffusers
|
||||||
|
repo_id: Envvi/Inkpunk-Diffusion
|
||||||
|
recommended: False
|
||||||
openjourney-4.0:
|
openjourney-4.0:
|
||||||
description: An SD 1.5 model fine tuned on Midjourney images by PromptHero - include "mdjrny-v4 style" in your prompts (2.13 GB)
|
description: An SD 1.5 model fine tuned on Midjourney; prompt with "mdjrny-v4 style" (2.13 GB)
|
||||||
format: diffusers
|
format: diffusers
|
||||||
repo_id: prompthero/openjourney
|
repo_id: prompthero/openjourney
|
||||||
vae:
|
vae:
|
||||||
repo_id: stabilityai/sd-vae-ft-mse
|
repo_id: stabilityai/sd-vae-ft-mse
|
||||||
recommended: False
|
recommended: False
|
||||||
nitro-diffusion-1.0:
|
portrait-plus-1.0:
|
||||||
description: A SD 1.5 model trained on three artstyles - prompt with "archer style", "arcane style" and/or "modern disney style" (2.13 GB)
|
description: An SD-1.5 model trained on close range portraits of people; prompt with "portrait+" (2.13 GB)
|
||||||
repo_id: nitrosocke/Nitro-Diffusion
|
format: diffusers
|
||||||
|
repo_id: wavymulder/portraitplus
|
||||||
|
recommended: False
|
||||||
|
seek-art-mega-1.0:
|
||||||
|
description: A general use SD-1.5 "anything" model that supports multiple styles (2.1 GB)
|
||||||
|
repo_id: coreco/seek.art_MEGA
|
||||||
format: diffusers
|
format: diffusers
|
||||||
vae:
|
vae:
|
||||||
repo_id: stabilityai/sd-vae-ft-mse
|
repo_id: stabilityai/sd-vae-ft-mse
|
||||||
recommended: False
|
recommended: False
|
||||||
trinart-2.0:
|
trinart-2.0:
|
||||||
description: An SD model finetuned with ~40,000 assorted high resolution manga/anime-style pictures, diffusers version (2.13 GB)
|
description: An SD-1.5 model finetuned with ~40K assorted high resolution manga/anime-style images (2.13 GB)
|
||||||
repo_id: naclbit/trinart_stable_diffusion_v2
|
repo_id: naclbit/trinart_stable_diffusion_v2
|
||||||
format: diffusers
|
format: diffusers
|
||||||
vae:
|
vae:
|
||||||
repo_id: stabilityai/sd-vae-ft-mse
|
repo_id: stabilityai/sd-vae-ft-mse
|
||||||
recommended: False
|
recommended: False
|
||||||
|
waifu-diffusion-1.4:
|
||||||
|
description: An SD-1.5 model trained on 680k anime/manga-style images (2.13 GB)
|
||||||
|
repo_id: hakurei/waifu-diffusion
|
||||||
|
format: diffusers
|
||||||
|
vae:
|
||||||
|
repo_id: stabilityai/sd-vae-ft-mse
|
||||||
|
recommended: False
|
||||||
|
@ -114,37 +114,37 @@ class addModelsForm(npyscreen.FormMultiPage):
|
|||||||
relx=4,
|
relx=4,
|
||||||
)
|
)
|
||||||
self.nextrely += 1
|
self.nextrely += 1
|
||||||
self.add_widget_intelligent(
|
if len(self.starter_model_list) > 0:
|
||||||
CenteredTitleText,
|
self.add_widget_intelligent(
|
||||||
name="== STARTER MODELS (recommended ones selected) ==",
|
CenteredTitleText,
|
||||||
editable=False,
|
name="== STARTER MODELS (recommended ones selected) ==",
|
||||||
color="CONTROL",
|
editable=False,
|
||||||
)
|
color="CONTROL",
|
||||||
self.nextrely -= 1
|
)
|
||||||
self.add_widget_intelligent(
|
self.nextrely -= 1
|
||||||
CenteredTitleText,
|
self.add_widget_intelligent(
|
||||||
name="Select from a starter set of Stable Diffusion models from HuggingFace:",
|
CenteredTitleText,
|
||||||
editable=False,
|
name="Select from a starter set of Stable Diffusion models from HuggingFace.",
|
||||||
labelColor="CAUTION",
|
editable=False,
|
||||||
)
|
labelColor="CAUTION",
|
||||||
|
)
|
||||||
self.nextrely -= 1
|
self.nextrely -= 1
|
||||||
# if user has already installed some initial models, then don't patronize them
|
# if user has already installed some initial models, then don't patronize them
|
||||||
# by showing more recommendations
|
# by showing more recommendations
|
||||||
show_recommended = not self.existing_models
|
show_recommended = not self.existing_models
|
||||||
self.models_selected = self.add_widget_intelligent(
|
self.models_selected = self.add_widget_intelligent(
|
||||||
npyscreen.MultiSelect,
|
npyscreen.MultiSelect,
|
||||||
name="Install Starter Models",
|
name="Install Starter Models",
|
||||||
values=starter_model_labels,
|
values=starter_model_labels,
|
||||||
value=[
|
value=[
|
||||||
self.starter_model_list.index(x)
|
self.starter_model_list.index(x)
|
||||||
for x in self.starter_model_list
|
for x in self.starter_model_list
|
||||||
if show_recommended and x in recommended_models
|
if show_recommended and x in recommended_models
|
||||||
],
|
],
|
||||||
max_height=len(starter_model_labels) + 1,
|
max_height=len(starter_model_labels) + 1,
|
||||||
relx=4,
|
relx=4,
|
||||||
scroll_exit=True,
|
scroll_exit=True,
|
||||||
)
|
)
|
||||||
self.add_widget_intelligent(
|
self.add_widget_intelligent(
|
||||||
CenteredTitleText,
|
CenteredTitleText,
|
||||||
name='== IMPORT LOCAL AND REMOTE MODELS ==',
|
name='== IMPORT LOCAL AND REMOTE MODELS ==',
|
||||||
@ -166,7 +166,11 @@ class addModelsForm(npyscreen.FormMultiPage):
|
|||||||
)
|
)
|
||||||
self.nextrely -= 1
|
self.nextrely -= 1
|
||||||
self.import_model_paths = self.add_widget_intelligent(
|
self.import_model_paths = self.add_widget_intelligent(
|
||||||
TextBox, max_height=5, scroll_exit=True, editable=True, relx=4
|
TextBox,
|
||||||
|
max_height=7,
|
||||||
|
scroll_exit=True,
|
||||||
|
editable=True,
|
||||||
|
relx=4
|
||||||
)
|
)
|
||||||
self.nextrely += 1
|
self.nextrely += 1
|
||||||
self.show_directory_fields = self.add_widget_intelligent(
|
self.show_directory_fields = self.add_widget_intelligent(
|
||||||
@ -241,7 +245,8 @@ class addModelsForm(npyscreen.FormMultiPage):
|
|||||||
|
|
||||||
def resize(self):
|
def resize(self):
|
||||||
super().resize()
|
super().resize()
|
||||||
self.models_selected.values = self._get_starter_model_labels()
|
if hasattr(self,'models_selected'):
|
||||||
|
self.models_selected.values = self._get_starter_model_labels()
|
||||||
|
|
||||||
def _clear_scan_directory(self):
|
def _clear_scan_directory(self):
|
||||||
if not self.show_directory_fields.value:
|
if not self.show_directory_fields.value:
|
||||||
@ -320,11 +325,14 @@ class addModelsForm(npyscreen.FormMultiPage):
|
|||||||
selections = self.parentApp.user_selections
|
selections = self.parentApp.user_selections
|
||||||
|
|
||||||
# starter models to install/remove
|
# starter models to install/remove
|
||||||
starter_models = dict(
|
if hasattr(self,'models_selected'):
|
||||||
map(
|
starter_models = dict(
|
||||||
lambda x: (self.starter_model_list[x], True), self.models_selected.value
|
map(
|
||||||
|
lambda x: (self.starter_model_list[x], True), self.models_selected.value
|
||||||
|
)
|
||||||
)
|
)
|
||||||
)
|
else:
|
||||||
|
starter_models = dict()
|
||||||
selections.purge_deleted_models = False
|
selections.purge_deleted_models = False
|
||||||
if hasattr(self, "previously_installed_models"):
|
if hasattr(self, "previously_installed_models"):
|
||||||
unchecked = [
|
unchecked = [
|
||||||
|
Loading…
x
Reference in New Issue
Block a user