Integrated portrait_generator_v001 512x512 diffusion model

pull/124/head
Adam Letts 2 years ago
parent 68c37c0966
commit d6d68b0125
  1. 32
      Disco_Diffusion.ipynb
  2. 6
      README.md
  3. 30
      disco.py

@ -16,7 +16,7 @@
"id": "TitleTop"
},
"source": [
"# Disco Diffusion v5.5 - Now with Pixel Art Diffusion, Watercolor, Pulp Sci-Fi, and OpenCLIP models\n",
"# Disco Diffusion v5.6 - Now with portrait_generator_v001\n",
"\n",
"Disco Diffusion - http://discodiffusion.com/ , https://github.com/alembics/disco-diffusion\n",
"\n",
@ -74,7 +74,9 @@
"\n",
"Pixel Art Diffusion, Watercolor Diffusion, and Pulp SciFi Diffusion models from KaliYuga (https://twitter.com/KaliYuga_ai). Follow KaliYuga's Twitter for the latest models and for notebooks with specialized settings.\n",
"\n",
"Integration of OpenCLIP models and initiation of integration of KaliYuga models by Palmweaver / Chris Scalf (https://twitter.com/ChrisScalf11)"
"Integration of OpenCLIP models and initiation of integration of KaliYuga models by Palmweaver / Chris Scalf (https://twitter.com/ChrisScalf11)\n",
"\n",
"Integrated portrait_generator_v001 from Felipe3DArtist (https://twitter.com/Felipe3DArtist)"
]
},
{
@ -319,6 +321,10 @@
" Pixel Art Diffusion, Watercolor Diffusion, and Pulp SciFi Diffusion models\n",
"\n",
" cut_ic_pow scheduling\n",
"\n",
" v5.6 Update: Jul 13th 2022 - Felipe3DArtist integration by gandamu / Adam Letts\n",
"\n",
" portrait_generator_v001 diffusion model integrated\n",
" '''\n",
" )"
],
@ -1869,7 +1875,7 @@
},
"source": [
"#@markdown ####**Models Settings (note: For pixel art, the best is pixelartdiffusion_expanded):**\n",
"diffusion_model = \"512x512_diffusion_uncond_finetune_008100\" #@param [\"256x256_diffusion_uncond\", \"512x512_diffusion_uncond_finetune_008100\", \"pixelartdiffusion_expanded\", \"pixel_art_diffusion_hard_256\", \"pixel_art_diffusion_soft_256\", \"pixelartdiffusion4k\", \"watercolordiffusion_2\", \"watercolordiffusion\", \"PulpSciFiDiffusion\", \"custom\"]\n",
"diffusion_model = \"512x512_diffusion_uncond_finetune_008100\" #@param [\"256x256_diffusion_uncond\", \"512x512_diffusion_uncond_finetune_008100\", \"portrait_generator_v001\", \"pixelartdiffusion_expanded\", \"pixel_art_diffusion_hard_256\", \"pixel_art_diffusion_soft_256\", \"pixelartdiffusion4k\", \"watercolordiffusion_2\", \"watercolordiffusion\", \"PulpSciFiDiffusion\", \"custom\"]\n",
"\n",
"use_secondary_model = True #@param {type: 'boolean'}\n",
"diffusion_sampling_mode = 'ddim' #@param ['plms','ddim']\n",
@ -1909,6 +1915,7 @@
"diff_model_map = {\n",
" '256x256_diffusion_uncond': { 'downloaded': False, 'sha': 'a37c32fffd316cd494cf3f35b339936debdc1576dad13fe57c42399a5dbc78b1', 'uri_list': ['https://openaipublic.blob.core.windows.net/diffusion/jul-2021/256x256_diffusion_uncond.pt', 'https://www.dropbox.com/s/9tqnqo930mpnpcn/256x256_diffusion_uncond.pt'] },\n",
" '512x512_diffusion_uncond_finetune_008100': { 'downloaded': False, 'sha': '9c111ab89e214862b76e1fa6a1b3f1d329b1a88281885943d2cdbe357ad57648', 'uri_list': ['https://the-eye.eu/public/AI/models/512x512_diffusion_unconditional_ImageNet/512x512_diffusion_uncond_finetune_008100.pt', 'https://huggingface.co/lowlevelware/512x512_diffusion_unconditional_ImageNet/resolve/main/512x512_diffusion_uncond_finetune_008100.pt'] },\n",
" 'portrait_generator_v001': { 'downloaded': False, 'sha': 'b7e8c747af880d4480b6707006f1ace000b058dd0eac5bb13558ba3752d9b5b9', 'uri_list': ['https://huggingface.co/felipe3dartist/portrait_generator_v001/resolve/main/portrait_generator_v001_ema_0.9999_1MM.pt'] },\n",
" 'pixelartdiffusion_expanded': { 'downloaded': False, 'sha': 'a73b40556634034bf43b5a716b531b46fb1ab890634d854f5bcbbef56838739a', 'uri_list': ['https://huggingface.co/KaliYuga/PADexpanded/resolve/main/PADexpanded.pt'] },\n",
" 'pixel_art_diffusion_hard_256': { 'downloaded': False, 'sha': 'be4a9de943ec06eef32c65a1008c60ad017723a4d35dc13169c66bb322234161', 'uri_list': ['https://huggingface.co/KaliYuga/pixel_art_diffusion_hard_256/resolve/main/pixel_art_diffusion_hard_256.pt'] },\n",
" 'pixel_art_diffusion_soft_256': { 'downloaded': False, 'sha': 'd321590e46b679bf6def1f1914b47c89e762c76f19ab3e3392c8ca07c791039c', 'uri_list': ['https://huggingface.co/KaliYuga/pixel_art_diffusion_soft_256/resolve/main/pixel_art_diffusion_soft_256.pt'] },\n",
@ -2003,6 +2010,23 @@
" 'use_fp16': not useCPU,\n",
" 'use_scale_shift_norm': True,\n",
" })\n",
"elif diffusion_model == 'portrait_generator_v001':\n",
" model_config.update({\n",
" 'attention_resolutions': '32, 16, 8',\n",
" 'class_cond': False,\n",
" 'diffusion_steps': 1000,\n",
" 'rescale_timesteps': True,\n",
" 'image_size': 512,\n",
" 'learn_sigma': True,\n",
" 'noise_schedule': 'linear',\n",
" 'num_channels': 128,\n",
" 'num_heads': 4,\n",
" 'num_res_blocks': 2,\n",
" 'resblock_updown': True,\n",
" 'use_checkpoint': use_checkpoint,\n",
" 'use_fp16': True,\n",
" 'use_scale_shift_norm': True,\n",
" })\n",
"else: # E.g. A model finetuned by KaliYuga\n",
" model_config.update({\n",
" 'attention_resolutions': '16',\n",
@ -3330,7 +3354,7 @@
"FlowFns2"
],
"machine_shape": "hm",
"name": "Disco Diffusion v5.5 [Now with Pixel Art Diffusion, Watercolor, Pulp Sci-Fi, and OpenCLIP models]",
"name": "Disco Diffusion v5.6 [Now with portrait_generator_v001]",
"private_outputs": true,
"provenance": [],
"include_colab_link": true

@ -93,6 +93,10 @@ the tool being used is called [Colab-Convert](https://github.com/MSFTserver/cola
* Pixel Art Diffusion, Watercolor Diffusion, and Pulp SciFi Diffusion models
* cut_ic_pow scheduling
#### v5.6 Update: Jul 13th 2022 - Felipe3DArtist, integration by gandamu / Adam Letts
* Integrated portrait_generator_v001 - 512x512 diffusion model trained on faces - from Felipe3DArtist
## Notebook Provenance
Original notebook by Katherine Crowson (https://github.com/crowsonkb, https://twitter.com/RiversHaveWings). It uses either OpenAI's 256x256 unconditional ImageNet or Katherine Crowson's fine-tuned 512x512 diffusion model (https://github.com/openai/guided-diffusion), together with CLIP (https://github.com/openai/CLIP) to connect text prompts with images.
@ -126,3 +130,5 @@ Warp and custom model support by Alex Spirin (https://twitter.com/devdef).
Pixel Art Diffusion, Watercolor Diffusion, and Pulp SciFi Diffusion models from KaliYuga (https://twitter.com/KaliYuga_ai). Follow KaliYuga's Twitter for the latest models and for notebooks with specialized settings.
Integration of OpenCLIP models and initiation of integration of KaliYuga models by Palmweaver / Chris Scalf (https://twitter.com/ChrisScalf11)
Integrated portrait_generator_v001 from Felipe3DArtist (https://twitter.com/Felipe3DArtist)

@ -12,7 +12,7 @@
# !! "id": "TitleTop"
# !! }}
"""
# Disco Diffusion v5.5 - Now with Pixel Art Diffusion, Watercolor, Pulp Sci-Fi, and OpenCLIP models
# Disco Diffusion v5.6 - Now with portrait_generator_v001
Disco Diffusion - http://discodiffusion.com/ , https://github.com/alembics/disco-diffusion
@ -69,6 +69,8 @@ Warp and custom model support by Alex Spirin (https://twitter.com/devdef).
Pixel Art Diffusion, Watercolor Diffusion, and Pulp SciFi Diffusion models from KaliYuga (https://twitter.com/KaliYuga_ai). Follow KaliYuga's Twitter for the latest models and for notebooks with specialized settings.
Integration of OpenCLIP models and initiation of integration of KaliYuga models by Palmweaver / Chris Scalf (https://twitter.com/ChrisScalf11)
Integrated portrait_generator_v001 from Felipe3DArtist (https://twitter.com/Felipe3DArtist)
"""
# %%
@ -308,6 +310,10 @@ if skip_for_run_all == False:
Pixel Art Diffusion, Watercolor Diffusion, and Pulp SciFi Diffusion models
cut_ic_pow scheduling
v5.6 Update: Jul 13th 2022 - Felipe3DArtist integration by gandamu / Adam Letts
portrait_generator_v001 diffusion model integrated
'''
)
@ -1819,7 +1825,7 @@ class SecondaryDiffusionImageNet2(nn.Module):
# !! "id": "ModelSettings"
# !! }}
#@markdown ####**Models Settings (note: For pixel art, the best is pixelartdiffusion_expanded):**
diffusion_model = "512x512_diffusion_uncond_finetune_008100" #@param ["256x256_diffusion_uncond", "512x512_diffusion_uncond_finetune_008100", "pixelartdiffusion_expanded", "pixel_art_diffusion_hard_256", "pixel_art_diffusion_soft_256", "pixelartdiffusion4k", "watercolordiffusion_2", "watercolordiffusion", "PulpSciFiDiffusion", "custom"]
diffusion_model = "512x512_diffusion_uncond_finetune_008100" #@param ["256x256_diffusion_uncond", "512x512_diffusion_uncond_finetune_008100", "portrait_generator_v001", "pixelartdiffusion_expanded", "pixel_art_diffusion_hard_256", "pixel_art_diffusion_soft_256", "pixelartdiffusion4k", "watercolordiffusion_2", "watercolordiffusion", "PulpSciFiDiffusion", "custom"]
use_secondary_model = True #@param {type: 'boolean'}
diffusion_sampling_mode = 'ddim' #@param ['plms','ddim']
@ -1859,6 +1865,7 @@ check_model_SHA = False #@param{type:"boolean"}
diff_model_map = {
'256x256_diffusion_uncond': { 'downloaded': False, 'sha': 'a37c32fffd316cd494cf3f35b339936debdc1576dad13fe57c42399a5dbc78b1', 'uri_list': ['https://openaipublic.blob.core.windows.net/diffusion/jul-2021/256x256_diffusion_uncond.pt', 'https://www.dropbox.com/s/9tqnqo930mpnpcn/256x256_diffusion_uncond.pt'] },
'512x512_diffusion_uncond_finetune_008100': { 'downloaded': False, 'sha': '9c111ab89e214862b76e1fa6a1b3f1d329b1a88281885943d2cdbe357ad57648', 'uri_list': ['https://the-eye.eu/public/AI/models/512x512_diffusion_unconditional_ImageNet/512x512_diffusion_uncond_finetune_008100.pt', 'https://huggingface.co/lowlevelware/512x512_diffusion_unconditional_ImageNet/resolve/main/512x512_diffusion_uncond_finetune_008100.pt'] },
'portrait_generator_v001': { 'downloaded': False, 'sha': 'b7e8c747af880d4480b6707006f1ace000b058dd0eac5bb13558ba3752d9b5b9', 'uri_list': ['https://huggingface.co/felipe3dartist/portrait_generator_v001/resolve/main/portrait_generator_v001_ema_0.9999_1MM.pt'] },
'pixelartdiffusion_expanded': { 'downloaded': False, 'sha': 'a73b40556634034bf43b5a716b531b46fb1ab890634d854f5bcbbef56838739a', 'uri_list': ['https://huggingface.co/KaliYuga/PADexpanded/resolve/main/PADexpanded.pt'] },
'pixel_art_diffusion_hard_256': { 'downloaded': False, 'sha': 'be4a9de943ec06eef32c65a1008c60ad017723a4d35dc13169c66bb322234161', 'uri_list': ['https://huggingface.co/KaliYuga/pixel_art_diffusion_hard_256/resolve/main/pixel_art_diffusion_hard_256.pt'] },
'pixel_art_diffusion_soft_256': { 'downloaded': False, 'sha': 'd321590e46b679bf6def1f1914b47c89e762c76f19ab3e3392c8ca07c791039c', 'uri_list': ['https://huggingface.co/KaliYuga/pixel_art_diffusion_soft_256/resolve/main/pixel_art_diffusion_soft_256.pt'] },
@ -1953,6 +1960,23 @@ elif diffusion_model == '256x256_diffusion_uncond':
'use_fp16': not useCPU,
'use_scale_shift_norm': True,
})
elif diffusion_model == 'portrait_generator_v001':
model_config.update({
'attention_resolutions': '32, 16, 8',
'class_cond': False,
'diffusion_steps': 1000,
'rescale_timesteps': True,
'image_size': 512,
'learn_sigma': True,
'noise_schedule': 'linear',
'num_channels': 128,
'num_heads': 4,
'num_res_blocks': 2,
'resblock_updown': True,
'use_checkpoint': use_checkpoint,
'use_fp16': True,
'use_scale_shift_norm': True,
})
else: # E.g. A model finetuned by KaliYuga
model_config.update({
'attention_resolutions': '16',
@ -3223,7 +3247,7 @@ else:
# !! "FlowFns2"
# !! ],
# !! "machine_shape": "hm",
# !! "name": "Disco Diffusion v5.5 [Now with Pixel Art Diffusion, Watercolor, Pulp Sci-Fi, and OpenCLIP models]",
# !! "name": "Disco Diffusion v5.6 [Now with portrait_generator_v001]",
# !! "private_outputs": true,
# !! "provenance": [],
# !! "include_colab_link": true

Loading…
Cancel
Save