Upload folder using huggingface_hub
Browse files- .ipynb_checkpoints/test_infer-checkpoint.ipynb +2034 -0
- taylor_lora_1500steps_generated_images/prompt_1.jpg +0 -0
- taylor_lora_1500steps_generated_images/prompt_10.jpg +0 -0
- taylor_lora_1500steps_generated_images/prompt_2.jpg +0 -0
- taylor_lora_1500steps_generated_images/prompt_3.jpg +0 -0
- taylor_lora_1500steps_generated_images/prompt_4.jpg +0 -0
- taylor_lora_1500steps_generated_images/prompt_5.jpg +0 -0
- taylor_lora_1500steps_generated_images/prompt_6.jpg +0 -0
- taylor_lora_1500steps_generated_images/prompt_7.jpg +0 -0
- taylor_lora_1500steps_generated_images/prompt_8.jpg +0 -0
- taylor_lora_1500steps_generated_images/prompt_9.jpg +0 -0
- taylor_lora_2000steps_generated_images/prompt_1.jpg +0 -0
- taylor_lora_2000steps_generated_images/prompt_10.jpg +0 -0
- taylor_lora_2000steps_generated_images/prompt_2.jpg +0 -0
- taylor_lora_2000steps_generated_images/prompt_3.jpg +0 -0
- taylor_lora_2000steps_generated_images/prompt_4.jpg +0 -0
- taylor_lora_2000steps_generated_images/prompt_5.jpg +0 -0
- taylor_lora_2000steps_generated_images/prompt_6.jpg +0 -0
- taylor_lora_2000steps_generated_images/prompt_7.jpg +0 -0
- taylor_lora_2000steps_generated_images/prompt_8.jpg +0 -0
- taylor_lora_2000steps_generated_images/prompt_9.jpg +0 -0
- taylor_lora_2500steps_generated_images/prompt_1.jpg +0 -0
- taylor_lora_2500steps_generated_images/prompt_10.jpg +0 -0
- taylor_lora_2500steps_generated_images/prompt_2.jpg +0 -0
- taylor_lora_2500steps_generated_images/prompt_3.jpg +0 -0
- taylor_lora_2500steps_generated_images/prompt_4.jpg +0 -0
- taylor_lora_2500steps_generated_images/prompt_5.jpg +0 -0
- taylor_lora_2500steps_generated_images/prompt_6.jpg +0 -0
- taylor_lora_2500steps_generated_images/prompt_7.jpg +0 -0
- taylor_lora_2500steps_generated_images/prompt_8.jpg +0 -0
- taylor_lora_2500steps_generated_images/prompt_9.jpg +0 -0
- taylor_lora_finalsteps_generated_images/prompt_1.jpg +0 -0
- taylor_lora_finalsteps_generated_images/prompt_10.jpg +0 -0
- taylor_lora_finalsteps_generated_images/prompt_2.jpg +0 -0
- taylor_lora_finalsteps_generated_images/prompt_3.jpg +0 -0
- taylor_lora_finalsteps_generated_images/prompt_4.jpg +0 -0
- taylor_lora_finalsteps_generated_images/prompt_5.jpg +0 -0
- taylor_lora_finalsteps_generated_images/prompt_6.jpg +0 -0
- taylor_lora_finalsteps_generated_images/prompt_7.jpg +0 -0
- taylor_lora_finalsteps_generated_images/prompt_8.jpg +0 -0
- taylor_lora_finalsteps_generated_images/prompt_9.jpg +0 -0
- test_infer.ipynb +2034 -0
.ipynb_checkpoints/test_infer-checkpoint.ipynb
ADDED
@@ -0,0 +1,2034 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"cells": [
|
3 |
+
{
|
4 |
+
"cell_type": "code",
|
5 |
+
"execution_count": 1,
|
6 |
+
"id": "d21f84c4-c847-4748-823a-7f83c392ef7b",
|
7 |
+
"metadata": {
|
8 |
+
"scrolled": true
|
9 |
+
},
|
10 |
+
"outputs": [
|
11 |
+
{
|
12 |
+
"name": "stdout",
|
13 |
+
"output_type": "stream",
|
14 |
+
"text": [
|
15 |
+
"Collecting diffusers\n",
|
16 |
+
" Downloading diffusers-0.32.1-py3-none-any.whl.metadata (18 kB)\n",
|
17 |
+
"Collecting transformers\n",
|
18 |
+
" Downloading transformers-4.47.1-py3-none-any.whl.metadata (44 kB)\n",
|
19 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m44.1/44.1 kB\u001b[0m \u001b[31m3.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
20 |
+
"\u001b[?25hRequirement already satisfied: torch in /usr/local/lib/python3.10/dist-packages (2.1.0+cu118)\n",
|
21 |
+
"Collecting sentencepiece\n",
|
22 |
+
" Downloading sentencepiece-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (7.7 kB)\n",
|
23 |
+
"Collecting protobuf\n",
|
24 |
+
" Downloading protobuf-5.29.3-cp38-abi3-manylinux2014_x86_64.whl.metadata (592 bytes)\n",
|
25 |
+
"Collecting peft\n",
|
26 |
+
" Downloading peft-0.14.0-py3-none-any.whl.metadata (13 kB)\n",
|
27 |
+
"Collecting accelerate\n",
|
28 |
+
" Downloading accelerate-1.2.1-py3-none-any.whl.metadata (19 kB)\n",
|
29 |
+
"Requirement already satisfied: importlib-metadata in /usr/lib/python3/dist-packages (from diffusers) (4.6.4)\n",
|
30 |
+
"Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from diffusers) (3.9.0)\n",
|
31 |
+
"Collecting huggingface-hub>=0.23.2 (from diffusers)\n",
|
32 |
+
" Downloading huggingface_hub-0.27.1-py3-none-any.whl.metadata (13 kB)\n",
|
33 |
+
"Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (from diffusers) (1.24.1)\n",
|
34 |
+
"Collecting regex!=2019.12.17 (from diffusers)\n",
|
35 |
+
" Downloading regex-2024.11.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (40 kB)\n",
|
36 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m40.5/40.5 kB\u001b[0m \u001b[31m14.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
37 |
+
"\u001b[?25hRequirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from diffusers) (2.31.0)\n",
|
38 |
+
"Collecting safetensors>=0.3.1 (from diffusers)\n",
|
39 |
+
" Downloading safetensors-0.5.2-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.8 kB)\n",
|
40 |
+
"Requirement already satisfied: Pillow in /usr/local/lib/python3.10/dist-packages (from diffusers) (9.3.0)\n",
|
41 |
+
"Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from transformers) (23.2)\n",
|
42 |
+
"Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from transformers) (6.0.1)\n",
|
43 |
+
"Collecting tokenizers<0.22,>=0.21 (from transformers)\n",
|
44 |
+
" Downloading tokenizers-0.21.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.7 kB)\n",
|
45 |
+
"Collecting tqdm>=4.27 (from transformers)\n",
|
46 |
+
" Downloading tqdm-4.67.1-py3-none-any.whl.metadata (57 kB)\n",
|
47 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m57.7/57.7 kB\u001b[0m \u001b[31m21.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
48 |
+
"\u001b[?25hRequirement already satisfied: typing-extensions in /usr/local/lib/python3.10/dist-packages (from torch) (4.4.0)\n",
|
49 |
+
"Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch) (1.12)\n",
|
50 |
+
"Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch) (3.0)\n",
|
51 |
+
"Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch) (3.1.2)\n",
|
52 |
+
"Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch) (2023.4.0)\n",
|
53 |
+
"Requirement already satisfied: triton==2.1.0 in /usr/local/lib/python3.10/dist-packages (from torch) (2.1.0)\n",
|
54 |
+
"Requirement already satisfied: psutil in /usr/local/lib/python3.10/dist-packages (from peft) (5.9.6)\n",
|
55 |
+
"Collecting fsspec (from torch)\n",
|
56 |
+
" Downloading fsspec-2024.12.0-py3-none-any.whl.metadata (11 kB)\n",
|
57 |
+
"Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch) (2.1.2)\n",
|
58 |
+
"Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->diffusers) (2.1.1)\n",
|
59 |
+
"Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->diffusers) (3.4)\n",
|
60 |
+
"Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->diffusers) (1.26.13)\n",
|
61 |
+
"Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->diffusers) (2022.12.7)\n",
|
62 |
+
"Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.10/dist-packages (from sympy->torch) (1.3.0)\n",
|
63 |
+
"Downloading diffusers-0.32.1-py3-none-any.whl (3.2 MB)\n",
|
64 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.2/3.2 MB\u001b[0m \u001b[31m149.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
65 |
+
"\u001b[?25hDownloading transformers-4.47.1-py3-none-any.whl (10.1 MB)\n",
|
66 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m10.1/10.1 MB\u001b[0m \u001b[31m151.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m \u001b[36m0:00:01\u001b[0m\n",
|
67 |
+
"\u001b[?25hDownloading sentencepiece-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB)\n",
|
68 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.3/1.3 MB\u001b[0m \u001b[31m157.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
69 |
+
"\u001b[?25hDownloading protobuf-5.29.3-cp38-abi3-manylinux2014_x86_64.whl (319 kB)\n",
|
70 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m319.7/319.7 kB\u001b[0m \u001b[31m98.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
71 |
+
"\u001b[?25hDownloading peft-0.14.0-py3-none-any.whl (374 kB)\n",
|
72 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m374.8/374.8 kB\u001b[0m \u001b[31m102.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
73 |
+
"\u001b[?25hDownloading accelerate-1.2.1-py3-none-any.whl (336 kB)\n",
|
74 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m336.4/336.4 kB\u001b[0m \u001b[31m102.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
75 |
+
"\u001b[?25hDownloading huggingface_hub-0.27.1-py3-none-any.whl (450 kB)\n",
|
76 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m450.7/450.7 kB\u001b[0m \u001b[31m112.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
77 |
+
"\u001b[?25hDownloading fsspec-2024.12.0-py3-none-any.whl (183 kB)\n",
|
78 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m183.9/183.9 kB\u001b[0m \u001b[31m71.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
79 |
+
"\u001b[?25hDownloading regex-2024.11.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (781 kB)\n",
|
80 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m781.7/781.7 kB\u001b[0m \u001b[31m144.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
81 |
+
"\u001b[?25hDownloading safetensors-0.5.2-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (461 kB)\n",
|
82 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m462.0/462.0 kB\u001b[0m \u001b[31m117.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
83 |
+
"\u001b[?25hDownloading tokenizers-0.21.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB)\n",
|
84 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.0/3.0 MB\u001b[0m \u001b[31m165.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
85 |
+
"\u001b[?25hDownloading tqdm-4.67.1-py3-none-any.whl (78 kB)\n",
|
86 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m78.5/78.5 kB\u001b[0m \u001b[31m36.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
87 |
+
"\u001b[?25hInstalling collected packages: sentencepiece, tqdm, safetensors, regex, protobuf, fsspec, huggingface-hub, tokenizers, diffusers, accelerate, transformers, peft\n",
|
88 |
+
" Attempting uninstall: fsspec\n",
|
89 |
+
" Found existing installation: fsspec 2023.4.0\n",
|
90 |
+
" Uninstalling fsspec-2023.4.0:\n",
|
91 |
+
" Successfully uninstalled fsspec-2023.4.0\n",
|
92 |
+
"Successfully installed accelerate-1.2.1 diffusers-0.32.1 fsspec-2024.12.0 huggingface-hub-0.27.1 peft-0.14.0 protobuf-5.29.3 regex-2024.11.6 safetensors-0.5.2 sentencepiece-0.2.0 tokenizers-0.21.0 tqdm-4.67.1 transformers-4.47.1\n",
|
93 |
+
"\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
|
94 |
+
"\u001b[0m\n",
|
95 |
+
"\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.3.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.3.1\u001b[0m\n",
|
96 |
+
"\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n"
|
97 |
+
]
|
98 |
+
}
|
99 |
+
],
|
100 |
+
"source": [
|
101 |
+
"!pip install diffusers transformers torch sentencepiece protobuf peft accelerate"
|
102 |
+
]
|
103 |
+
},
|
104 |
+
{
|
105 |
+
"cell_type": "code",
|
106 |
+
"execution_count": 2,
|
107 |
+
"id": "d92544f5-8332-4ed9-8ff3-058bda3bd11e",
|
108 |
+
"metadata": {},
|
109 |
+
"outputs": [
|
110 |
+
{
|
111 |
+
"name": "stdout",
|
112 |
+
"output_type": "stream",
|
113 |
+
"text": [
|
114 |
+
"The token has not been saved to the git credentials helper. Pass `add_to_git_credential=True` in this function directly or `--add-to-git-credential` if using via `huggingface-cli` if you want to set the git credential as well.\n",
|
115 |
+
"Token is valid (permission: fineGrained).\n",
|
116 |
+
"The token `nectar` has been saved to /root/.cache/huggingface/stored_tokens\n",
|
117 |
+
"Your token has been saved to /root/.cache/huggingface/token\n",
|
118 |
+
"Login successful.\n",
|
119 |
+
"The current active token is: `nectar`\n"
|
120 |
+
]
|
121 |
+
}
|
122 |
+
],
|
123 |
+
"source": [
|
124 |
+
"!huggingface-cli login --token ..."
|
125 |
+
]
|
126 |
+
},
|
127 |
+
{
|
128 |
+
"cell_type": "code",
|
129 |
+
"execution_count": 3,
|
130 |
+
"id": "f13b5804-4f8f-45b3-9fcb-4253e9a0c9bc",
|
131 |
+
"metadata": {},
|
132 |
+
"outputs": [],
|
133 |
+
"source": [
|
134 |
+
"import os\n",
|
135 |
+
"from PIL import Image\n",
|
136 |
+
"from datetime import datetime\n",
|
137 |
+
"from tqdm.auto import tqdm\n",
|
138 |
+
"\n",
|
139 |
+
"def generate_filename(base_name, extension=\".png\"):\n",
|
140 |
+
" timestamp = datetime.now().strftime(\"%Y%m%d_%H%M%S\")\n",
|
141 |
+
" return f\"{base_name}_{timestamp}{extension}\"\n",
|
142 |
+
"\n",
|
143 |
+
"def save_image(image, directory, base_name=\"image_grid\"):\n",
|
144 |
+
" filename = generate_filename(base_name)\n",
|
145 |
+
" file_path = os.path.join(directory, filename)\n",
|
146 |
+
" image.save(file_path)\n",
|
147 |
+
" print(f\"Image saved as {file_path}\")\n",
|
148 |
+
"\n",
|
149 |
+
"def image_grid(imgs, rows, cols, save=True, save_dir='generated_images', base_name=\"image_grid\"):\n",
|
150 |
+
" if not os.path.exists(save_dir):\n",
|
151 |
+
" os.makedirs(save_dir)\n",
|
152 |
+
" \n",
|
153 |
+
" # Adjust rows and cols if the image count doesn't match\n",
|
154 |
+
" total_images = len(imgs)\n",
|
155 |
+
" expected_images = rows * cols\n",
|
156 |
+
" if total_images != expected_images:\n",
|
157 |
+
" print(f\"Warning: Expected {expected_images} images, but got {total_images}. Adjusting grid size.\")\n",
|
158 |
+
" cols = min(total_images, cols)\n",
|
159 |
+
" rows = (total_images + cols - 1) // cols # Ensure all images fit in the grid\n",
|
160 |
+
"\n",
|
161 |
+
" w, h = imgs[0].size\n",
|
162 |
+
" grid = Image.new('RGB', size=(cols * w, rows * h))\n",
|
163 |
+
"\n",
|
164 |
+
" for i, img in enumerate(imgs):\n",
|
165 |
+
" grid.paste(img, box=(i % cols * w, i // cols * h))\n",
|
166 |
+
"\n",
|
167 |
+
" if save and save_dir:\n",
|
168 |
+
" save_image(grid, save_dir, base_name)\n",
|
169 |
+
"\n",
|
170 |
+
" return grid\n",
|
171 |
+
"\n",
|
172 |
+
"\n",
|
173 |
+
"def download_image(url):\n",
|
174 |
+
" try:\n",
|
175 |
+
" response = requests.get(url)\n",
|
176 |
+
" except:\n",
|
177 |
+
" return None\n",
|
178 |
+
" return Image.open(BytesIO(response.content)).convert(\"RGB\")\n"
|
179 |
+
]
|
180 |
+
},
|
181 |
+
{
|
182 |
+
"cell_type": "code",
|
183 |
+
"execution_count": 5,
|
184 |
+
"id": "8e476bbe-deb5-4c23-a007-4386606e41b4",
|
185 |
+
"metadata": {
|
186 |
+
"scrolled": true
|
187 |
+
},
|
188 |
+
"outputs": [
|
189 |
+
{
|
190 |
+
"data": {
|
191 |
+
"application/vnd.jupyter.widget-view+json": {
|
192 |
+
"model_id": "57594311206b4300a4da9a9a102cd2fa",
|
193 |
+
"version_major": 2,
|
194 |
+
"version_minor": 0
|
195 |
+
},
|
196 |
+
"text/plain": [
|
197 |
+
"model_index.json: 0%| | 0.00/536 [00:00<?, ?B/s]"
|
198 |
+
]
|
199 |
+
},
|
200 |
+
"metadata": {},
|
201 |
+
"output_type": "display_data"
|
202 |
+
},
|
203 |
+
{
|
204 |
+
"data": {
|
205 |
+
"application/vnd.jupyter.widget-view+json": {
|
206 |
+
"model_id": "e20df890dabf459daa7ef53d15889a66",
|
207 |
+
"version_major": 2,
|
208 |
+
"version_minor": 0
|
209 |
+
},
|
210 |
+
"text/plain": [
|
211 |
+
"Fetching 23 files: 0%| | 0/23 [00:00<?, ?it/s]"
|
212 |
+
]
|
213 |
+
},
|
214 |
+
"metadata": {},
|
215 |
+
"output_type": "display_data"
|
216 |
+
},
|
217 |
+
{
|
218 |
+
"data": {
|
219 |
+
"application/vnd.jupyter.widget-view+json": {
|
220 |
+
"model_id": "f7d51ce5b1bc41a7bc050ebd87fdbe50",
|
221 |
+
"version_major": 2,
|
222 |
+
"version_minor": 0
|
223 |
+
},
|
224 |
+
"text/plain": [
|
225 |
+
"Loading pipeline components...: 0%| | 0/7 [00:00<?, ?it/s]"
|
226 |
+
]
|
227 |
+
},
|
228 |
+
"metadata": {},
|
229 |
+
"output_type": "display_data"
|
230 |
+
},
|
231 |
+
{
|
232 |
+
"name": "stderr",
|
233 |
+
"output_type": "stream",
|
234 |
+
"text": [
|
235 |
+
"You set `add_prefix_space`. The tokenizer needs to be converted from the slow tokenizers\n"
|
236 |
+
]
|
237 |
+
},
|
238 |
+
{
|
239 |
+
"data": {
|
240 |
+
"application/vnd.jupyter.widget-view+json": {
|
241 |
+
"model_id": "830d0846385546c49b7faf51d9cec2ca",
|
242 |
+
"version_major": 2,
|
243 |
+
"version_minor": 0
|
244 |
+
},
|
245 |
+
"text/plain": [
|
246 |
+
"Loading checkpoint shards: 0%| | 0/2 [00:00<?, ?it/s]"
|
247 |
+
]
|
248 |
+
},
|
249 |
+
"metadata": {},
|
250 |
+
"output_type": "display_data"
|
251 |
+
}
|
252 |
+
],
|
253 |
+
"source": [
|
254 |
+
"# import torch\n",
|
255 |
+
"# from diffusers import FluxPipeline\n",
|
256 |
+
"\n",
|
257 |
+
"# pipe = FluxPipeline.from_pretrained(\"black-forest-labs/FLUX.1-dev\", cache_dir=\".\", torch_dtype=torch.bfloat16, force_download=True).to(\"cuda\")"
|
258 |
+
]
|
259 |
+
},
|
260 |
+
{
|
261 |
+
"cell_type": "code",
|
262 |
+
"execution_count": 4,
|
263 |
+
"id": "376eaa46-0db0-4d7c-8a46-4226badaf639",
|
264 |
+
"metadata": {
|
265 |
+
"scrolled": true
|
266 |
+
},
|
267 |
+
"outputs": [
|
268 |
+
{
|
269 |
+
"name": "stderr",
|
270 |
+
"output_type": "stream",
|
271 |
+
"text": [
|
272 |
+
"The cache for model files in Transformers v4.22.0 has been updated. Migrating your old cache. This is a one-time only operation. You can interrupt this and resume the migration later on by calling `transformers.utils.move_cache()`.\n"
|
273 |
+
]
|
274 |
+
},
|
275 |
+
{
|
276 |
+
"data": {
|
277 |
+
"application/vnd.jupyter.widget-view+json": {
|
278 |
+
"model_id": "a3bc5e5702f64798a09367d49e2430c8",
|
279 |
+
"version_major": 2,
|
280 |
+
"version_minor": 0
|
281 |
+
},
|
282 |
+
"text/plain": [
|
283 |
+
"0it [00:00, ?it/s]"
|
284 |
+
]
|
285 |
+
},
|
286 |
+
"metadata": {},
|
287 |
+
"output_type": "display_data"
|
288 |
+
},
|
289 |
+
{
|
290 |
+
"data": {
|
291 |
+
"application/vnd.jupyter.widget-view+json": {
|
292 |
+
"model_id": "d0508157a6cb4bd282ebb8ac937c6a06",
|
293 |
+
"version_major": 2,
|
294 |
+
"version_minor": 0
|
295 |
+
},
|
296 |
+
"text/plain": [
|
297 |
+
"model_index.json: 0%| | 0.00/536 [00:00<?, ?B/s]"
|
298 |
+
]
|
299 |
+
},
|
300 |
+
"metadata": {},
|
301 |
+
"output_type": "display_data"
|
302 |
+
},
|
303 |
+
{
|
304 |
+
"data": {
|
305 |
+
"application/vnd.jupyter.widget-view+json": {
|
306 |
+
"model_id": "c8cf30a221974a2dbc89a2365420f890",
|
307 |
+
"version_major": 2,
|
308 |
+
"version_minor": 0
|
309 |
+
},
|
310 |
+
"text/plain": [
|
311 |
+
"Fetching 23 files: 0%| | 0/23 [00:00<?, ?it/s]"
|
312 |
+
]
|
313 |
+
},
|
314 |
+
"metadata": {},
|
315 |
+
"output_type": "display_data"
|
316 |
+
},
|
317 |
+
{
|
318 |
+
"data": {
|
319 |
+
"application/vnd.jupyter.widget-view+json": {
|
320 |
+
"model_id": "34ff8d84d08c4bcfa4bbbc8919406d1b",
|
321 |
+
"version_major": 2,
|
322 |
+
"version_minor": 0
|
323 |
+
},
|
324 |
+
"text/plain": [
|
325 |
+
"tokenizer/merges.txt: 0%| | 0.00/525k [00:00<?, ?B/s]"
|
326 |
+
]
|
327 |
+
},
|
328 |
+
"metadata": {},
|
329 |
+
"output_type": "display_data"
|
330 |
+
},
|
331 |
+
{
|
332 |
+
"data": {
|
333 |
+
"application/vnd.jupyter.widget-view+json": {
|
334 |
+
"model_id": "e3882d33752348f5b427f7ada56e62bd",
|
335 |
+
"version_major": 2,
|
336 |
+
"version_minor": 0
|
337 |
+
},
|
338 |
+
"text/plain": [
|
339 |
+
"scheduler/scheduler_config.json: 0%| | 0.00/273 [00:00<?, ?B/s]"
|
340 |
+
]
|
341 |
+
},
|
342 |
+
"metadata": {},
|
343 |
+
"output_type": "display_data"
|
344 |
+
},
|
345 |
+
{
|
346 |
+
"data": {
|
347 |
+
"application/vnd.jupyter.widget-view+json": {
|
348 |
+
"model_id": "55f165c3e7604ef1a811980f9b2fb6bb",
|
349 |
+
"version_major": 2,
|
350 |
+
"version_minor": 0
|
351 |
+
},
|
352 |
+
"text/plain": [
|
353 |
+
"(…)t_encoder_2/model.safetensors.index.json: 0%| | 0.00/19.9k [00:00<?, ?B/s]"
|
354 |
+
]
|
355 |
+
},
|
356 |
+
"metadata": {},
|
357 |
+
"output_type": "display_data"
|
358 |
+
},
|
359 |
+
{
|
360 |
+
"data": {
|
361 |
+
"application/vnd.jupyter.widget-view+json": {
|
362 |
+
"model_id": "beead06204ac45a8b7491c8b6f0ef763",
|
363 |
+
"version_major": 2,
|
364 |
+
"version_minor": 0
|
365 |
+
},
|
366 |
+
"text/plain": [
|
367 |
+
"text_encoder/config.json: 0%| | 0.00/613 [00:00<?, ?B/s]"
|
368 |
+
]
|
369 |
+
},
|
370 |
+
"metadata": {},
|
371 |
+
"output_type": "display_data"
|
372 |
+
},
|
373 |
+
{
|
374 |
+
"data": {
|
375 |
+
"application/vnd.jupyter.widget-view+json": {
|
376 |
+
"model_id": "67f648521e25407ea48a3cee16f5fe86",
|
377 |
+
"version_major": 2,
|
378 |
+
"version_minor": 0
|
379 |
+
},
|
380 |
+
"text/plain": [
|
381 |
+
"model.safetensors: 0%| | 0.00/246M [00:00<?, ?B/s]"
|
382 |
+
]
|
383 |
+
},
|
384 |
+
"metadata": {},
|
385 |
+
"output_type": "display_data"
|
386 |
+
},
|
387 |
+
{
|
388 |
+
"data": {
|
389 |
+
"application/vnd.jupyter.widget-view+json": {
|
390 |
+
"model_id": "bbac917ce62e47c795dbe5ed1be6e09f",
|
391 |
+
"version_major": 2,
|
392 |
+
"version_minor": 0
|
393 |
+
},
|
394 |
+
"text/plain": [
|
395 |
+
"tokenizer/special_tokens_map.json: 0%| | 0.00/588 [00:00<?, ?B/s]"
|
396 |
+
]
|
397 |
+
},
|
398 |
+
"metadata": {},
|
399 |
+
"output_type": "display_data"
|
400 |
+
},
|
401 |
+
{
|
402 |
+
"data": {
|
403 |
+
"application/vnd.jupyter.widget-view+json": {
|
404 |
+
"model_id": "d6b357f1951f47d9a731ff406353397a",
|
405 |
+
"version_major": 2,
|
406 |
+
"version_minor": 0
|
407 |
+
},
|
408 |
+
"text/plain": [
|
409 |
+
"text_encoder_2/config.json: 0%| | 0.00/782 [00:00<?, ?B/s]"
|
410 |
+
]
|
411 |
+
},
|
412 |
+
"metadata": {},
|
413 |
+
"output_type": "display_data"
|
414 |
+
},
|
415 |
+
{
|
416 |
+
"data": {
|
417 |
+
"application/vnd.jupyter.widget-view+json": {
|
418 |
+
"model_id": "fa47f58e41ff4dbfad41b9f1a0960876",
|
419 |
+
"version_major": 2,
|
420 |
+
"version_minor": 0
|
421 |
+
},
|
422 |
+
"text/plain": [
|
423 |
+
"tokenizer/tokenizer_config.json: 0%| | 0.00/705 [00:00<?, ?B/s]"
|
424 |
+
]
|
425 |
+
},
|
426 |
+
"metadata": {},
|
427 |
+
"output_type": "display_data"
|
428 |
+
},
|
429 |
+
{
|
430 |
+
"data": {
|
431 |
+
"application/vnd.jupyter.widget-view+json": {
|
432 |
+
"model_id": "ebcc69a04e3d4bc891c51fcd0667ba70",
|
433 |
+
"version_major": 2,
|
434 |
+
"version_minor": 0
|
435 |
+
},
|
436 |
+
"text/plain": [
|
437 |
+
"tokenizer/vocab.json: 0%| | 0.00/1.06M [00:00<?, ?B/s]"
|
438 |
+
]
|
439 |
+
},
|
440 |
+
"metadata": {},
|
441 |
+
"output_type": "display_data"
|
442 |
+
},
|
443 |
+
{
|
444 |
+
"data": {
|
445 |
+
"application/vnd.jupyter.widget-view+json": {
|
446 |
+
"model_id": "d708968cc23d432189565f7daad39375",
|
447 |
+
"version_major": 2,
|
448 |
+
"version_minor": 0
|
449 |
+
},
|
450 |
+
"text/plain": [
|
451 |
+
"model-00001-of-00002.safetensors: 0%| | 0.00/4.99G [00:00<?, ?B/s]"
|
452 |
+
]
|
453 |
+
},
|
454 |
+
"metadata": {},
|
455 |
+
"output_type": "display_data"
|
456 |
+
},
|
457 |
+
{
|
458 |
+
"data": {
|
459 |
+
"application/vnd.jupyter.widget-view+json": {
|
460 |
+
"model_id": "fd95c41827ca40458f832d51f7756fa8",
|
461 |
+
"version_major": 2,
|
462 |
+
"version_minor": 0
|
463 |
+
},
|
464 |
+
"text/plain": [
|
465 |
+
"tokenizer_2/special_tokens_map.json: 0%| | 0.00/2.54k [00:00<?, ?B/s]"
|
466 |
+
]
|
467 |
+
},
|
468 |
+
"metadata": {},
|
469 |
+
"output_type": "display_data"
|
470 |
+
},
|
471 |
+
{
|
472 |
+
"data": {
|
473 |
+
"application/vnd.jupyter.widget-view+json": {
|
474 |
+
"model_id": "f0bfedb0f9b84265b8bd18de02d411c8",
|
475 |
+
"version_major": 2,
|
476 |
+
"version_minor": 0
|
477 |
+
},
|
478 |
+
"text/plain": [
|
479 |
+
"model-00002-of-00002.safetensors: 0%| | 0.00/4.53G [00:00<?, ?B/s]"
|
480 |
+
]
|
481 |
+
},
|
482 |
+
"metadata": {},
|
483 |
+
"output_type": "display_data"
|
484 |
+
},
|
485 |
+
{
|
486 |
+
"data": {
|
487 |
+
"application/vnd.jupyter.widget-view+json": {
|
488 |
+
"model_id": "4bdf545c6157435fbe8a801aa389fee9",
|
489 |
+
"version_major": 2,
|
490 |
+
"version_minor": 0
|
491 |
+
},
|
492 |
+
"text/plain": [
|
493 |
+
"spiece.model: 0%| | 0.00/792k [00:00<?, ?B/s]"
|
494 |
+
]
|
495 |
+
},
|
496 |
+
"metadata": {},
|
497 |
+
"output_type": "display_data"
|
498 |
+
},
|
499 |
+
{
|
500 |
+
"data": {
|
501 |
+
"application/vnd.jupyter.widget-view+json": {
|
502 |
+
"model_id": "f27c2bb1d8e549369d05d9f7cbb92971",
|
503 |
+
"version_major": 2,
|
504 |
+
"version_minor": 0
|
505 |
+
},
|
506 |
+
"text/plain": [
|
507 |
+
"tokenizer_2/tokenizer.json: 0%| | 0.00/2.42M [00:00<?, ?B/s]"
|
508 |
+
]
|
509 |
+
},
|
510 |
+
"metadata": {},
|
511 |
+
"output_type": "display_data"
|
512 |
+
},
|
513 |
+
{
|
514 |
+
"data": {
|
515 |
+
"application/vnd.jupyter.widget-view+json": {
|
516 |
+
"model_id": "e1b8efb017c8464b86632c9542fd70a0",
|
517 |
+
"version_major": 2,
|
518 |
+
"version_minor": 0
|
519 |
+
},
|
520 |
+
"text/plain": [
|
521 |
+
"transformer/config.json: 0%| | 0.00/378 [00:00<?, ?B/s]"
|
522 |
+
]
|
523 |
+
},
|
524 |
+
"metadata": {},
|
525 |
+
"output_type": "display_data"
|
526 |
+
},
|
527 |
+
{
|
528 |
+
"data": {
|
529 |
+
"application/vnd.jupyter.widget-view+json": {
|
530 |
+
"model_id": "46cf458c4adf406d9c5a2cfb27902971",
|
531 |
+
"version_major": 2,
|
532 |
+
"version_minor": 0
|
533 |
+
},
|
534 |
+
"text/plain": [
|
535 |
+
"tokenizer_2/tokenizer_config.json: 0%| | 0.00/20.8k [00:00<?, ?B/s]"
|
536 |
+
]
|
537 |
+
},
|
538 |
+
"metadata": {},
|
539 |
+
"output_type": "display_data"
|
540 |
+
},
|
541 |
+
{
|
542 |
+
"data": {
|
543 |
+
"application/vnd.jupyter.widget-view+json": {
|
544 |
+
"model_id": "40736f32d24b4ad38bb7df5db57c9536",
|
545 |
+
"version_major": 2,
|
546 |
+
"version_minor": 0
|
547 |
+
},
|
548 |
+
"text/plain": [
|
549 |
+
"(…)pytorch_model-00001-of-00003.safetensors: 0%| | 0.00/9.98G [00:00<?, ?B/s]"
|
550 |
+
]
|
551 |
+
},
|
552 |
+
"metadata": {},
|
553 |
+
"output_type": "display_data"
|
554 |
+
},
|
555 |
+
{
|
556 |
+
"data": {
|
557 |
+
"application/vnd.jupyter.widget-view+json": {
|
558 |
+
"model_id": "41b16c4865a241a6abb3d89a4c17696d",
|
559 |
+
"version_major": 2,
|
560 |
+
"version_minor": 0
|
561 |
+
},
|
562 |
+
"text/plain": [
|
563 |
+
"(…)pytorch_model-00002-of-00003.safetensors: 0%| | 0.00/9.95G [00:00<?, ?B/s]"
|
564 |
+
]
|
565 |
+
},
|
566 |
+
"metadata": {},
|
567 |
+
"output_type": "display_data"
|
568 |
+
},
|
569 |
+
{
|
570 |
+
"data": {
|
571 |
+
"application/vnd.jupyter.widget-view+json": {
|
572 |
+
"model_id": "95075fed8a1e4e428db8d271746f7dfe",
|
573 |
+
"version_major": 2,
|
574 |
+
"version_minor": 0
|
575 |
+
},
|
576 |
+
"text/plain": [
|
577 |
+
"(…)ion_pytorch_model.safetensors.index.json: 0%| | 0.00/121k [00:00<?, ?B/s]"
|
578 |
+
]
|
579 |
+
},
|
580 |
+
"metadata": {},
|
581 |
+
"output_type": "display_data"
|
582 |
+
},
|
583 |
+
{
|
584 |
+
"data": {
|
585 |
+
"application/vnd.jupyter.widget-view+json": {
|
586 |
+
"model_id": "5c60a31732b4497eb59826dd42cb023d",
|
587 |
+
"version_major": 2,
|
588 |
+
"version_minor": 0
|
589 |
+
},
|
590 |
+
"text/plain": [
|
591 |
+
"(…)pytorch_model-00003-of-00003.safetensors: 0%| | 0.00/3.87G [00:00<?, ?B/s]"
|
592 |
+
]
|
593 |
+
},
|
594 |
+
"metadata": {},
|
595 |
+
"output_type": "display_data"
|
596 |
+
},
|
597 |
+
{
|
598 |
+
"data": {
|
599 |
+
"application/vnd.jupyter.widget-view+json": {
|
600 |
+
"model_id": "f2dace42aaf943f98777fdfac15c0797",
|
601 |
+
"version_major": 2,
|
602 |
+
"version_minor": 0
|
603 |
+
},
|
604 |
+
"text/plain": [
|
605 |
+
"vae/config.json: 0%| | 0.00/820 [00:00<?, ?B/s]"
|
606 |
+
]
|
607 |
+
},
|
608 |
+
"metadata": {},
|
609 |
+
"output_type": "display_data"
|
610 |
+
},
|
611 |
+
{
|
612 |
+
"data": {
|
613 |
+
"application/vnd.jupyter.widget-view+json": {
|
614 |
+
"model_id": "72cf113565b84b55b053d6dd32ac88fc",
|
615 |
+
"version_major": 2,
|
616 |
+
"version_minor": 0
|
617 |
+
},
|
618 |
+
"text/plain": [
|
619 |
+
"diffusion_pytorch_model.safetensors: 0%| | 0.00/168M [00:00<?, ?B/s]"
|
620 |
+
]
|
621 |
+
},
|
622 |
+
"metadata": {},
|
623 |
+
"output_type": "display_data"
|
624 |
+
},
|
625 |
+
{
|
626 |
+
"data": {
|
627 |
+
"application/vnd.jupyter.widget-view+json": {
|
628 |
+
"model_id": "df785e1a4bf5456da2179e57790008a9",
|
629 |
+
"version_major": 2,
|
630 |
+
"version_minor": 0
|
631 |
+
},
|
632 |
+
"text/plain": [
|
633 |
+
"Loading pipeline components...: 0%| | 0/7 [00:00<?, ?it/s]"
|
634 |
+
]
|
635 |
+
},
|
636 |
+
"metadata": {},
|
637 |
+
"output_type": "display_data"
|
638 |
+
},
|
639 |
+
{
|
640 |
+
"name": "stderr",
|
641 |
+
"output_type": "stream",
|
642 |
+
"text": [
|
643 |
+
"You set `add_prefix_space`. The tokenizer needs to be converted from the slow tokenizers\n"
|
644 |
+
]
|
645 |
+
},
|
646 |
+
{
|
647 |
+
"data": {
|
648 |
+
"application/vnd.jupyter.widget-view+json": {
|
649 |
+
"model_id": "d39c297447c14cb1a4639efa26ac6828",
|
650 |
+
"version_major": 2,
|
651 |
+
"version_minor": 0
|
652 |
+
},
|
653 |
+
"text/plain": [
|
654 |
+
"Loading checkpoint shards: 0%| | 0/2 [00:00<?, ?it/s]"
|
655 |
+
]
|
656 |
+
},
|
657 |
+
"metadata": {},
|
658 |
+
"output_type": "display_data"
|
659 |
+
}
|
660 |
+
],
|
661 |
+
"source": [
|
662 |
+
"import torch\n",
|
663 |
+
"from diffusers import FluxPipeline\n",
|
664 |
+
"\n",
|
665 |
+
"flux_dev_pipe = FluxPipeline.from_pretrained(\"black-forest-labs/FLUX.1-dev\", cache_dir=\".\", torch_dtype=torch.bfloat16, force_download=True).to(\"cuda\")"
|
666 |
+
]
|
667 |
+
},
|
668 |
+
{
|
669 |
+
"cell_type": "markdown",
|
670 |
+
"id": "5e88a8b3-da8d-4090-b52e-c5f22924eb91",
|
671 |
+
"metadata": {},
|
672 |
+
"source": [
|
673 |
+
"### 2500 steps"
|
674 |
+
]
|
675 |
+
},
|
676 |
+
{
|
677 |
+
"cell_type": "code",
|
678 |
+
"execution_count": 5,
|
679 |
+
"id": "3b059ea0-4e50-46b9-99ba-dc7b8f7d9582",
|
680 |
+
"metadata": {
|
681 |
+
"scrolled": true
|
682 |
+
},
|
683 |
+
"outputs": [
|
684 |
+
{
|
685 |
+
"data": {
|
686 |
+
"text/plain": [
|
687 |
+
"FluxPipeline {\n",
|
688 |
+
" \"_class_name\": \"FluxPipeline\",\n",
|
689 |
+
" \"_diffusers_version\": \"0.32.1\",\n",
|
690 |
+
" \"_name_or_path\": \"black-forest-labs/FLUX.1-dev\",\n",
|
691 |
+
" \"feature_extractor\": [\n",
|
692 |
+
" null,\n",
|
693 |
+
" null\n",
|
694 |
+
" ],\n",
|
695 |
+
" \"image_encoder\": [\n",
|
696 |
+
" null,\n",
|
697 |
+
" null\n",
|
698 |
+
" ],\n",
|
699 |
+
" \"scheduler\": [\n",
|
700 |
+
" \"diffusers\",\n",
|
701 |
+
" \"FlowMatchEulerDiscreteScheduler\"\n",
|
702 |
+
" ],\n",
|
703 |
+
" \"text_encoder\": [\n",
|
704 |
+
" \"transformers\",\n",
|
705 |
+
" \"CLIPTextModel\"\n",
|
706 |
+
" ],\n",
|
707 |
+
" \"text_encoder_2\": [\n",
|
708 |
+
" \"transformers\",\n",
|
709 |
+
" \"T5EncoderModel\"\n",
|
710 |
+
" ],\n",
|
711 |
+
" \"tokenizer\": [\n",
|
712 |
+
" \"transformers\",\n",
|
713 |
+
" \"CLIPTokenizer\"\n",
|
714 |
+
" ],\n",
|
715 |
+
" \"tokenizer_2\": [\n",
|
716 |
+
" \"transformers\",\n",
|
717 |
+
" \"T5TokenizerFast\"\n",
|
718 |
+
" ],\n",
|
719 |
+
" \"transformer\": [\n",
|
720 |
+
" \"diffusers\",\n",
|
721 |
+
" \"FluxTransformer2DModel\"\n",
|
722 |
+
" ],\n",
|
723 |
+
" \"vae\": [\n",
|
724 |
+
" \"diffusers\",\n",
|
725 |
+
" \"AutoencoderKL\"\n",
|
726 |
+
" ]\n",
|
727 |
+
"}"
|
728 |
+
]
|
729 |
+
},
|
730 |
+
"execution_count": 5,
|
731 |
+
"metadata": {},
|
732 |
+
"output_type": "execute_result"
|
733 |
+
}
|
734 |
+
],
|
735 |
+
"source": [
|
736 |
+
"lora_path = \"/workspace/taylor-rank16-multi-1e-4-constant/checkpoint-2500/pytorch_lora_weights.safetensors\"\n",
|
737 |
+
"flux_dev_pipe.load_lora_weights(lora_path)\n",
|
738 |
+
"flux_dev_pipe.to(\"cuda\")"
|
739 |
+
]
|
740 |
+
},
|
741 |
+
{
|
742 |
+
"cell_type": "code",
|
743 |
+
"execution_count": 6,
|
744 |
+
"id": "f6490810-f598-4b3d-9748-2895dbfc4409",
|
745 |
+
"metadata": {
|
746 |
+
"scrolled": true
|
747 |
+
},
|
748 |
+
"outputs": [
|
749 |
+
{
|
750 |
+
"name": "stdout",
|
751 |
+
"output_type": "stream",
|
752 |
+
"text": [
|
753 |
+
"Generating images for prompt 1/10: Close up photo of rwx woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\n"
|
754 |
+
]
|
755 |
+
},
|
756 |
+
{
|
757 |
+
"data": {
|
758 |
+
"application/vnd.jupyter.widget-view+json": {
|
759 |
+
"model_id": "b15de8a62a0f4d9595d4d972e84722a1",
|
760 |
+
"version_major": 2,
|
761 |
+
"version_minor": 0
|
762 |
+
},
|
763 |
+
"text/plain": [
|
764 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
765 |
+
]
|
766 |
+
},
|
767 |
+
"metadata": {},
|
768 |
+
"output_type": "display_data"
|
769 |
+
},
|
770 |
+
{
|
771 |
+
"name": "stdout",
|
772 |
+
"output_type": "stream",
|
773 |
+
"text": [
|
774 |
+
"Generating images for prompt 2/10: Close up photo of rwx woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\n"
|
775 |
+
]
|
776 |
+
},
|
777 |
+
{
|
778 |
+
"data": {
|
779 |
+
"application/vnd.jupyter.widget-view+json": {
|
780 |
+
"model_id": "be0975dc87c647448f1aef01148a83db",
|
781 |
+
"version_major": 2,
|
782 |
+
"version_minor": 0
|
783 |
+
},
|
784 |
+
"text/plain": [
|
785 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
786 |
+
]
|
787 |
+
},
|
788 |
+
"metadata": {},
|
789 |
+
"output_type": "display_data"
|
790 |
+
},
|
791 |
+
{
|
792 |
+
"name": "stdout",
|
793 |
+
"output_type": "stream",
|
794 |
+
"text": [
|
795 |
+
"Generating images for prompt 3/10: Close up photo of rwx woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\n"
|
796 |
+
]
|
797 |
+
},
|
798 |
+
{
|
799 |
+
"data": {
|
800 |
+
"application/vnd.jupyter.widget-view+json": {
|
801 |
+
"model_id": "2267bcb8446148c9b5eb5e5b4a45e8f0",
|
802 |
+
"version_major": 2,
|
803 |
+
"version_minor": 0
|
804 |
+
},
|
805 |
+
"text/plain": [
|
806 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
807 |
+
]
|
808 |
+
},
|
809 |
+
"metadata": {},
|
810 |
+
"output_type": "display_data"
|
811 |
+
},
|
812 |
+
{
|
813 |
+
"name": "stdout",
|
814 |
+
"output_type": "stream",
|
815 |
+
"text": [
|
816 |
+
"Generating images for prompt 4/10: Close up photo of rwx woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\n"
|
817 |
+
]
|
818 |
+
},
|
819 |
+
{
|
820 |
+
"data": {
|
821 |
+
"application/vnd.jupyter.widget-view+json": {
|
822 |
+
"model_id": "1e35a85110924cf099df9c133fa7c955",
|
823 |
+
"version_major": 2,
|
824 |
+
"version_minor": 0
|
825 |
+
},
|
826 |
+
"text/plain": [
|
827 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
828 |
+
]
|
829 |
+
},
|
830 |
+
"metadata": {},
|
831 |
+
"output_type": "display_data"
|
832 |
+
},
|
833 |
+
{
|
834 |
+
"name": "stdout",
|
835 |
+
"output_type": "stream",
|
836 |
+
"text": [
|
837 |
+
"Generating images for prompt 5/10: Medium shot photo of rwx woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\n"
|
838 |
+
]
|
839 |
+
},
|
840 |
+
{
|
841 |
+
"data": {
|
842 |
+
"application/vnd.jupyter.widget-view+json": {
|
843 |
+
"model_id": "444c17c374de4b45a4397f7e6df8ddc4",
|
844 |
+
"version_major": 2,
|
845 |
+
"version_minor": 0
|
846 |
+
},
|
847 |
+
"text/plain": [
|
848 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
849 |
+
]
|
850 |
+
},
|
851 |
+
"metadata": {},
|
852 |
+
"output_type": "display_data"
|
853 |
+
},
|
854 |
+
{
|
855 |
+
"name": "stdout",
|
856 |
+
"output_type": "stream",
|
857 |
+
"text": [
|
858 |
+
"Generating images for prompt 6/10: Medium shot photo of rwx woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\n"
|
859 |
+
]
|
860 |
+
},
|
861 |
+
{
|
862 |
+
"data": {
|
863 |
+
"application/vnd.jupyter.widget-view+json": {
|
864 |
+
"model_id": "d5a6938e5bb442b191539f5e4e6500ba",
|
865 |
+
"version_major": 2,
|
866 |
+
"version_minor": 0
|
867 |
+
},
|
868 |
+
"text/plain": [
|
869 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
870 |
+
]
|
871 |
+
},
|
872 |
+
"metadata": {},
|
873 |
+
"output_type": "display_data"
|
874 |
+
},
|
875 |
+
{
|
876 |
+
"name": "stdout",
|
877 |
+
"output_type": "stream",
|
878 |
+
"text": [
|
879 |
+
"Generating images for prompt 7/10: Medium shot photo of rwx woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\n"
|
880 |
+
]
|
881 |
+
},
|
882 |
+
{
|
883 |
+
"data": {
|
884 |
+
"application/vnd.jupyter.widget-view+json": {
|
885 |
+
"model_id": "8b1778fa30a242dc9649af2bf47808c7",
|
886 |
+
"version_major": 2,
|
887 |
+
"version_minor": 0
|
888 |
+
},
|
889 |
+
"text/plain": [
|
890 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
891 |
+
]
|
892 |
+
},
|
893 |
+
"metadata": {},
|
894 |
+
"output_type": "display_data"
|
895 |
+
},
|
896 |
+
{
|
897 |
+
"name": "stdout",
|
898 |
+
"output_type": "stream",
|
899 |
+
"text": [
|
900 |
+
"Generating images for prompt 8/10: Full shot photo of rwx woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\n"
|
901 |
+
]
|
902 |
+
},
|
903 |
+
{
|
904 |
+
"data": {
|
905 |
+
"application/vnd.jupyter.widget-view+json": {
|
906 |
+
"model_id": "a46513e141c24b9ba994f41524b864bc",
|
907 |
+
"version_major": 2,
|
908 |
+
"version_minor": 0
|
909 |
+
},
|
910 |
+
"text/plain": [
|
911 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
912 |
+
]
|
913 |
+
},
|
914 |
+
"metadata": {},
|
915 |
+
"output_type": "display_data"
|
916 |
+
},
|
917 |
+
{
|
918 |
+
"name": "stdout",
|
919 |
+
"output_type": "stream",
|
920 |
+
"text": [
|
921 |
+
"Generating images for prompt 9/10: Full shot photo of rwx woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\n"
|
922 |
+
]
|
923 |
+
},
|
924 |
+
{
|
925 |
+
"data": {
|
926 |
+
"application/vnd.jupyter.widget-view+json": {
|
927 |
+
"model_id": "a7af347a813946299b945bde3bfcde48",
|
928 |
+
"version_major": 2,
|
929 |
+
"version_minor": 0
|
930 |
+
},
|
931 |
+
"text/plain": [
|
932 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
933 |
+
]
|
934 |
+
},
|
935 |
+
"metadata": {},
|
936 |
+
"output_type": "display_data"
|
937 |
+
},
|
938 |
+
{
|
939 |
+
"name": "stdout",
|
940 |
+
"output_type": "stream",
|
941 |
+
"text": [
|
942 |
+
"Generating images for prompt 10/10: Full shot photo of rwx woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\n"
|
943 |
+
]
|
944 |
+
},
|
945 |
+
{
|
946 |
+
"data": {
|
947 |
+
"application/vnd.jupyter.widget-view+json": {
|
948 |
+
"model_id": "1a4b779ea0704ad7b148a65c09945dab",
|
949 |
+
"version_major": 2,
|
950 |
+
"version_minor": 0
|
951 |
+
},
|
952 |
+
"text/plain": [
|
953 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
954 |
+
]
|
955 |
+
},
|
956 |
+
"metadata": {},
|
957 |
+
"output_type": "display_data"
|
958 |
+
}
|
959 |
+
],
|
960 |
+
"source": [
|
961 |
+
"prompts = [\n",
|
962 |
+
" \"Close up photo of rwx woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\",\n",
|
963 |
+
" \"Close up photo of rwx woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\",\n",
|
964 |
+
" \"Close up photo of rwx woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\",\n",
|
965 |
+
" \"Close up photo of rwx woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\",\n",
|
966 |
+
" \"Medium shot photo of rwx woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\",\n",
|
967 |
+
" \"Medium shot photo of rwx woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\",\n",
|
968 |
+
" \"Medium shot photo of rwx woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\",\n",
|
969 |
+
" \"Full shot photo of rwx woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\",\n",
|
970 |
+
" \"Full shot photo of rwx woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\",\n",
|
971 |
+
" \"Full shot photo of rwx woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\"\n",
|
972 |
+
"]\n",
|
973 |
+
"\n",
|
974 |
+
"save_dir = \"taylor_lora_2500steps_generated_images\"\n",
|
975 |
+
"for i, prompt in enumerate(prompts):\n",
|
976 |
+
" print(f\"Generating images for prompt {i+1}/{len(prompts)}: {prompt}\")\n",
|
977 |
+
" images = flux_dev_pipe(prompt, \n",
|
978 |
+
" num_inference_steps=35, \n",
|
979 |
+
" num_images_per_prompt=1, \n",
|
980 |
+
" width=1024,\n",
|
981 |
+
" height=1024,\n",
|
982 |
+
" guidance_scale=3.5,\n",
|
983 |
+
" generator=torch.Generator(\"cpu\").manual_seed(1024)).images\n",
|
984 |
+
"\n",
|
985 |
+
" if not os.path.exists(save_dir):\n",
|
986 |
+
" os.makedirs(save_dir)\n",
|
987 |
+
" \n",
|
988 |
+
" images[0].save(f\"{save_dir}/prompt_{i+1}.jpg\")"
|
989 |
+
]
|
990 |
+
},
|
991 |
+
{
|
992 |
+
"cell_type": "markdown",
|
993 |
+
"id": "e577d171-79d7-4a91-8cea-8327acc584df",
|
994 |
+
"metadata": {},
|
995 |
+
"source": [
|
996 |
+
"### 2000 steps"
|
997 |
+
]
|
998 |
+
},
|
999 |
+
{
|
1000 |
+
"cell_type": "code",
|
1001 |
+
"execution_count": 7,
|
1002 |
+
"id": "1dd352b6-d0b8-41b8-a38d-503cb8db9ea5",
|
1003 |
+
"metadata": {
|
1004 |
+
"scrolled": true
|
1005 |
+
},
|
1006 |
+
"outputs": [],
|
1007 |
+
"source": [
|
1008 |
+
"flux_dev_pipe.fuse_lora(lora_scale=0)"
|
1009 |
+
]
|
1010 |
+
},
|
1011 |
+
{
|
1012 |
+
"cell_type": "code",
|
1013 |
+
"execution_count": 8,
|
1014 |
+
"id": "2f79cdf8-a39a-4a22-93b6-d83fd0182a79",
|
1015 |
+
"metadata": {
|
1016 |
+
"scrolled": true
|
1017 |
+
},
|
1018 |
+
"outputs": [
|
1019 |
+
{
|
1020 |
+
"name": "stderr",
|
1021 |
+
"output_type": "stream",
|
1022 |
+
"text": [
|
1023 |
+
"/usr/local/lib/python3.10/dist-packages/peft/tuners/lora/model.py:431: UserWarning: Adapter cannot be set when the model is merged. Unmerging the model first.\n",
|
1024 |
+
" warnings.warn(\"Adapter cannot be set when the model is merged. Unmerging the model first.\")\n"
|
1025 |
+
]
|
1026 |
+
},
|
1027 |
+
{
|
1028 |
+
"data": {
|
1029 |
+
"text/plain": [
|
1030 |
+
"FluxPipeline {\n",
|
1031 |
+
" \"_class_name\": \"FluxPipeline\",\n",
|
1032 |
+
" \"_diffusers_version\": \"0.32.1\",\n",
|
1033 |
+
" \"_name_or_path\": \"black-forest-labs/FLUX.1-dev\",\n",
|
1034 |
+
" \"feature_extractor\": [\n",
|
1035 |
+
" null,\n",
|
1036 |
+
" null\n",
|
1037 |
+
" ],\n",
|
1038 |
+
" \"image_encoder\": [\n",
|
1039 |
+
" null,\n",
|
1040 |
+
" null\n",
|
1041 |
+
" ],\n",
|
1042 |
+
" \"scheduler\": [\n",
|
1043 |
+
" \"diffusers\",\n",
|
1044 |
+
" \"FlowMatchEulerDiscreteScheduler\"\n",
|
1045 |
+
" ],\n",
|
1046 |
+
" \"text_encoder\": [\n",
|
1047 |
+
" \"transformers\",\n",
|
1048 |
+
" \"CLIPTextModel\"\n",
|
1049 |
+
" ],\n",
|
1050 |
+
" \"text_encoder_2\": [\n",
|
1051 |
+
" \"transformers\",\n",
|
1052 |
+
" \"T5EncoderModel\"\n",
|
1053 |
+
" ],\n",
|
1054 |
+
" \"tokenizer\": [\n",
|
1055 |
+
" \"transformers\",\n",
|
1056 |
+
" \"CLIPTokenizer\"\n",
|
1057 |
+
" ],\n",
|
1058 |
+
" \"tokenizer_2\": [\n",
|
1059 |
+
" \"transformers\",\n",
|
1060 |
+
" \"T5TokenizerFast\"\n",
|
1061 |
+
" ],\n",
|
1062 |
+
" \"transformer\": [\n",
|
1063 |
+
" \"diffusers\",\n",
|
1064 |
+
" \"FluxTransformer2DModel\"\n",
|
1065 |
+
" ],\n",
|
1066 |
+
" \"vae\": [\n",
|
1067 |
+
" \"diffusers\",\n",
|
1068 |
+
" \"AutoencoderKL\"\n",
|
1069 |
+
" ]\n",
|
1070 |
+
"}"
|
1071 |
+
]
|
1072 |
+
},
|
1073 |
+
"execution_count": 8,
|
1074 |
+
"metadata": {},
|
1075 |
+
"output_type": "execute_result"
|
1076 |
+
}
|
1077 |
+
],
|
1078 |
+
"source": [
|
1079 |
+
"lora_path = \"/workspace/taylor-rank16-multi-1e-4-constant/checkpoint-2000/pytorch_lora_weights.safetensors\"\n",
|
1080 |
+
"flux_dev_pipe.load_lora_weights(lora_path)\n",
|
1081 |
+
"flux_dev_pipe.to(\"cuda\")"
|
1082 |
+
]
|
1083 |
+
},
|
1084 |
+
{
|
1085 |
+
"cell_type": "code",
|
1086 |
+
"execution_count": 9,
|
1087 |
+
"id": "4d14fb44-106c-4225-848f-c79da7c2d725",
|
1088 |
+
"metadata": {
|
1089 |
+
"scrolled": true
|
1090 |
+
},
|
1091 |
+
"outputs": [
|
1092 |
+
{
|
1093 |
+
"name": "stdout",
|
1094 |
+
"output_type": "stream",
|
1095 |
+
"text": [
|
1096 |
+
"Generating images for prompt 1/10: Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\n"
|
1097 |
+
]
|
1098 |
+
},
|
1099 |
+
{
|
1100 |
+
"data": {
|
1101 |
+
"application/vnd.jupyter.widget-view+json": {
|
1102 |
+
"model_id": "f2e191d21daf4cd9a67b055274b85a60",
|
1103 |
+
"version_major": 2,
|
1104 |
+
"version_minor": 0
|
1105 |
+
},
|
1106 |
+
"text/plain": [
|
1107 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1108 |
+
]
|
1109 |
+
},
|
1110 |
+
"metadata": {},
|
1111 |
+
"output_type": "display_data"
|
1112 |
+
},
|
1113 |
+
{
|
1114 |
+
"name": "stdout",
|
1115 |
+
"output_type": "stream",
|
1116 |
+
"text": [
|
1117 |
+
"Generating images for prompt 2/10: Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\n"
|
1118 |
+
]
|
1119 |
+
},
|
1120 |
+
{
|
1121 |
+
"data": {
|
1122 |
+
"application/vnd.jupyter.widget-view+json": {
|
1123 |
+
"model_id": "60394f15302e486f88f41af5257621c4",
|
1124 |
+
"version_major": 2,
|
1125 |
+
"version_minor": 0
|
1126 |
+
},
|
1127 |
+
"text/plain": [
|
1128 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1129 |
+
]
|
1130 |
+
},
|
1131 |
+
"metadata": {},
|
1132 |
+
"output_type": "display_data"
|
1133 |
+
},
|
1134 |
+
{
|
1135 |
+
"name": "stdout",
|
1136 |
+
"output_type": "stream",
|
1137 |
+
"text": [
|
1138 |
+
"Generating images for prompt 3/10: Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\n"
|
1139 |
+
]
|
1140 |
+
},
|
1141 |
+
{
|
1142 |
+
"data": {
|
1143 |
+
"application/vnd.jupyter.widget-view+json": {
|
1144 |
+
"model_id": "8600b4419476493f96ef0ed7d87e3663",
|
1145 |
+
"version_major": 2,
|
1146 |
+
"version_minor": 0
|
1147 |
+
},
|
1148 |
+
"text/plain": [
|
1149 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1150 |
+
]
|
1151 |
+
},
|
1152 |
+
"metadata": {},
|
1153 |
+
"output_type": "display_data"
|
1154 |
+
},
|
1155 |
+
{
|
1156 |
+
"name": "stdout",
|
1157 |
+
"output_type": "stream",
|
1158 |
+
"text": [
|
1159 |
+
"Generating images for prompt 4/10: Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\n"
|
1160 |
+
]
|
1161 |
+
},
|
1162 |
+
{
|
1163 |
+
"data": {
|
1164 |
+
"application/vnd.jupyter.widget-view+json": {
|
1165 |
+
"model_id": "045342b2c9684dbe8e184c679eb4cf8c",
|
1166 |
+
"version_major": 2,
|
1167 |
+
"version_minor": 0
|
1168 |
+
},
|
1169 |
+
"text/plain": [
|
1170 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1171 |
+
]
|
1172 |
+
},
|
1173 |
+
"metadata": {},
|
1174 |
+
"output_type": "display_data"
|
1175 |
+
},
|
1176 |
+
{
|
1177 |
+
"name": "stdout",
|
1178 |
+
"output_type": "stream",
|
1179 |
+
"text": [
|
1180 |
+
"Generating images for prompt 5/10: Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\n"
|
1181 |
+
]
|
1182 |
+
},
|
1183 |
+
{
|
1184 |
+
"data": {
|
1185 |
+
"application/vnd.jupyter.widget-view+json": {
|
1186 |
+
"model_id": "3b546d949fac4659ba3457782e2156a6",
|
1187 |
+
"version_major": 2,
|
1188 |
+
"version_minor": 0
|
1189 |
+
},
|
1190 |
+
"text/plain": [
|
1191 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1192 |
+
]
|
1193 |
+
},
|
1194 |
+
"metadata": {},
|
1195 |
+
"output_type": "display_data"
|
1196 |
+
},
|
1197 |
+
{
|
1198 |
+
"name": "stdout",
|
1199 |
+
"output_type": "stream",
|
1200 |
+
"text": [
|
1201 |
+
"Generating images for prompt 6/10: Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\n"
|
1202 |
+
]
|
1203 |
+
},
|
1204 |
+
{
|
1205 |
+
"data": {
|
1206 |
+
"application/vnd.jupyter.widget-view+json": {
|
1207 |
+
"model_id": "e6a5f678e3ed41a7a80bfd4c13f5020e",
|
1208 |
+
"version_major": 2,
|
1209 |
+
"version_minor": 0
|
1210 |
+
},
|
1211 |
+
"text/plain": [
|
1212 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1213 |
+
]
|
1214 |
+
},
|
1215 |
+
"metadata": {},
|
1216 |
+
"output_type": "display_data"
|
1217 |
+
},
|
1218 |
+
{
|
1219 |
+
"name": "stdout",
|
1220 |
+
"output_type": "stream",
|
1221 |
+
"text": [
|
1222 |
+
"Generating images for prompt 7/10: Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\n"
|
1223 |
+
]
|
1224 |
+
},
|
1225 |
+
{
|
1226 |
+
"data": {
|
1227 |
+
"application/vnd.jupyter.widget-view+json": {
|
1228 |
+
"model_id": "cf781fda68084775a7722256f32bebcc",
|
1229 |
+
"version_major": 2,
|
1230 |
+
"version_minor": 0
|
1231 |
+
},
|
1232 |
+
"text/plain": [
|
1233 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1234 |
+
]
|
1235 |
+
},
|
1236 |
+
"metadata": {},
|
1237 |
+
"output_type": "display_data"
|
1238 |
+
},
|
1239 |
+
{
|
1240 |
+
"name": "stdout",
|
1241 |
+
"output_type": "stream",
|
1242 |
+
"text": [
|
1243 |
+
"Generating images for prompt 8/10: Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\n"
|
1244 |
+
]
|
1245 |
+
},
|
1246 |
+
{
|
1247 |
+
"data": {
|
1248 |
+
"application/vnd.jupyter.widget-view+json": {
|
1249 |
+
"model_id": "dd43e6cd2ad3464ea2cc0bd6fd15f7db",
|
1250 |
+
"version_major": 2,
|
1251 |
+
"version_minor": 0
|
1252 |
+
},
|
1253 |
+
"text/plain": [
|
1254 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1255 |
+
]
|
1256 |
+
},
|
1257 |
+
"metadata": {},
|
1258 |
+
"output_type": "display_data"
|
1259 |
+
},
|
1260 |
+
{
|
1261 |
+
"name": "stdout",
|
1262 |
+
"output_type": "stream",
|
1263 |
+
"text": [
|
1264 |
+
"Generating images for prompt 9/10: Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\n"
|
1265 |
+
]
|
1266 |
+
},
|
1267 |
+
{
|
1268 |
+
"data": {
|
1269 |
+
"application/vnd.jupyter.widget-view+json": {
|
1270 |
+
"model_id": "740d1fb40b404d07b65aae7844ecb8f3",
|
1271 |
+
"version_major": 2,
|
1272 |
+
"version_minor": 0
|
1273 |
+
},
|
1274 |
+
"text/plain": [
|
1275 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1276 |
+
]
|
1277 |
+
},
|
1278 |
+
"metadata": {},
|
1279 |
+
"output_type": "display_data"
|
1280 |
+
},
|
1281 |
+
{
|
1282 |
+
"name": "stdout",
|
1283 |
+
"output_type": "stream",
|
1284 |
+
"text": [
|
1285 |
+
"Generating images for prompt 10/10: Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\n"
|
1286 |
+
]
|
1287 |
+
},
|
1288 |
+
{
|
1289 |
+
"data": {
|
1290 |
+
"application/vnd.jupyter.widget-view+json": {
|
1291 |
+
"model_id": "e13432e9b2ac48ca9d963a0155822203",
|
1292 |
+
"version_major": 2,
|
1293 |
+
"version_minor": 0
|
1294 |
+
},
|
1295 |
+
"text/plain": [
|
1296 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1297 |
+
]
|
1298 |
+
},
|
1299 |
+
"metadata": {},
|
1300 |
+
"output_type": "display_data"
|
1301 |
+
}
|
1302 |
+
],
|
1303 |
+
"source": [
|
1304 |
+
"prompts = [\n",
|
1305 |
+
" \"Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\",\n",
|
1306 |
+
" \"Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\",\n",
|
1307 |
+
" \"Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\",\n",
|
1308 |
+
" \"Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\",\n",
|
1309 |
+
" \"Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\",\n",
|
1310 |
+
" \"Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\",\n",
|
1311 |
+
" \"Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\",\n",
|
1312 |
+
" \"Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\",\n",
|
1313 |
+
" \"Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\",\n",
|
1314 |
+
" \"Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\"\n",
|
1315 |
+
"]\n",
|
1316 |
+
"\n",
|
1317 |
+
"save_dir = \"lora_2000steps_generated_images\"\n",
|
1318 |
+
"for i, prompt in enumerate(prompts):\n",
|
1319 |
+
" print(f\"Generating images for prompt {i+1}/{len(prompts)}: {prompt}\")\n",
|
1320 |
+
" images = flux_dev_pipe(prompt, \n",
|
1321 |
+
" num_inference_steps=35, \n",
|
1322 |
+
" num_images_per_prompt=1, \n",
|
1323 |
+
" width=1024,\n",
|
1324 |
+
" height=1024,\n",
|
1325 |
+
" guidance_scale=3.5,\n",
|
1326 |
+
" generator=torch.Generator(\"cpu\").manual_seed(1024)).images\n",
|
1327 |
+
"\n",
|
1328 |
+
" if not os.path.exists(save_dir):\n",
|
1329 |
+
" os.makedirs(save_dir)\n",
|
1330 |
+
" \n",
|
1331 |
+
" images[0].save(f\"{save_dir}/prompt_{i+1}.jpg\")"
|
1332 |
+
]
|
1333 |
+
},
|
1334 |
+
{
|
1335 |
+
"cell_type": "markdown",
|
1336 |
+
"id": "79844ea2-e27a-4043-8f71-1f21ed14f16d",
|
1337 |
+
"metadata": {},
|
1338 |
+
"source": [
|
1339 |
+
"### 1500 steps"
|
1340 |
+
]
|
1341 |
+
},
|
1342 |
+
{
|
1343 |
+
"cell_type": "code",
|
1344 |
+
"execution_count": 10,
|
1345 |
+
"id": "270fcbfc-72d2-4655-9407-2162c3d16df4",
|
1346 |
+
"metadata": {},
|
1347 |
+
"outputs": [],
|
1348 |
+
"source": [
|
1349 |
+
"flux_dev_pipe.fuse_lora(lora_scale=0)"
|
1350 |
+
]
|
1351 |
+
},
|
1352 |
+
{
|
1353 |
+
"cell_type": "code",
|
1354 |
+
"execution_count": 11,
|
1355 |
+
"id": "cc6eea5b-8811-455a-b9bb-bff5a5f0326e",
|
1356 |
+
"metadata": {
|
1357 |
+
"scrolled": true
|
1358 |
+
},
|
1359 |
+
"outputs": [
|
1360 |
+
{
|
1361 |
+
"data": {
|
1362 |
+
"text/plain": [
|
1363 |
+
"FluxPipeline {\n",
|
1364 |
+
" \"_class_name\": \"FluxPipeline\",\n",
|
1365 |
+
" \"_diffusers_version\": \"0.32.1\",\n",
|
1366 |
+
" \"_name_or_path\": \"black-forest-labs/FLUX.1-dev\",\n",
|
1367 |
+
" \"feature_extractor\": [\n",
|
1368 |
+
" null,\n",
|
1369 |
+
" null\n",
|
1370 |
+
" ],\n",
|
1371 |
+
" \"image_encoder\": [\n",
|
1372 |
+
" null,\n",
|
1373 |
+
" null\n",
|
1374 |
+
" ],\n",
|
1375 |
+
" \"scheduler\": [\n",
|
1376 |
+
" \"diffusers\",\n",
|
1377 |
+
" \"FlowMatchEulerDiscreteScheduler\"\n",
|
1378 |
+
" ],\n",
|
1379 |
+
" \"text_encoder\": [\n",
|
1380 |
+
" \"transformers\",\n",
|
1381 |
+
" \"CLIPTextModel\"\n",
|
1382 |
+
" ],\n",
|
1383 |
+
" \"text_encoder_2\": [\n",
|
1384 |
+
" \"transformers\",\n",
|
1385 |
+
" \"T5EncoderModel\"\n",
|
1386 |
+
" ],\n",
|
1387 |
+
" \"tokenizer\": [\n",
|
1388 |
+
" \"transformers\",\n",
|
1389 |
+
" \"CLIPTokenizer\"\n",
|
1390 |
+
" ],\n",
|
1391 |
+
" \"tokenizer_2\": [\n",
|
1392 |
+
" \"transformers\",\n",
|
1393 |
+
" \"T5TokenizerFast\"\n",
|
1394 |
+
" ],\n",
|
1395 |
+
" \"transformer\": [\n",
|
1396 |
+
" \"diffusers\",\n",
|
1397 |
+
" \"FluxTransformer2DModel\"\n",
|
1398 |
+
" ],\n",
|
1399 |
+
" \"vae\": [\n",
|
1400 |
+
" \"diffusers\",\n",
|
1401 |
+
" \"AutoencoderKL\"\n",
|
1402 |
+
" ]\n",
|
1403 |
+
"}"
|
1404 |
+
]
|
1405 |
+
},
|
1406 |
+
"execution_count": 11,
|
1407 |
+
"metadata": {},
|
1408 |
+
"output_type": "execute_result"
|
1409 |
+
}
|
1410 |
+
],
|
1411 |
+
"source": [
|
1412 |
+
"lora_path = \"/workspace/taylor-rank16-multi-1e-4-constant/checkpoint-1500/pytorch_lora_weights.safetensors\"\n",
|
1413 |
+
"flux_dev_pipe.load_lora_weights(lora_path)\n",
|
1414 |
+
"flux_dev_pipe.to(\"cuda\")"
|
1415 |
+
]
|
1416 |
+
},
|
1417 |
+
{
|
1418 |
+
"cell_type": "code",
|
1419 |
+
"execution_count": 12,
|
1420 |
+
"id": "9dfb7f4c-aeaf-4ec8-a227-fbecded489c3",
|
1421 |
+
"metadata": {
|
1422 |
+
"scrolled": true
|
1423 |
+
},
|
1424 |
+
"outputs": [
|
1425 |
+
{
|
1426 |
+
"name": "stdout",
|
1427 |
+
"output_type": "stream",
|
1428 |
+
"text": [
|
1429 |
+
"Generating images for prompt 1/10: Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\n"
|
1430 |
+
]
|
1431 |
+
},
|
1432 |
+
{
|
1433 |
+
"data": {
|
1434 |
+
"application/vnd.jupyter.widget-view+json": {
|
1435 |
+
"model_id": "33b2a3017a63415e94020620e969f868",
|
1436 |
+
"version_major": 2,
|
1437 |
+
"version_minor": 0
|
1438 |
+
},
|
1439 |
+
"text/plain": [
|
1440 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1441 |
+
]
|
1442 |
+
},
|
1443 |
+
"metadata": {},
|
1444 |
+
"output_type": "display_data"
|
1445 |
+
},
|
1446 |
+
{
|
1447 |
+
"name": "stdout",
|
1448 |
+
"output_type": "stream",
|
1449 |
+
"text": [
|
1450 |
+
"Generating images for prompt 2/10: Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\n"
|
1451 |
+
]
|
1452 |
+
},
|
1453 |
+
{
|
1454 |
+
"data": {
|
1455 |
+
"application/vnd.jupyter.widget-view+json": {
|
1456 |
+
"model_id": "62910d8d8bee4b1bb0ed5dcc8d9ce933",
|
1457 |
+
"version_major": 2,
|
1458 |
+
"version_minor": 0
|
1459 |
+
},
|
1460 |
+
"text/plain": [
|
1461 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1462 |
+
]
|
1463 |
+
},
|
1464 |
+
"metadata": {},
|
1465 |
+
"output_type": "display_data"
|
1466 |
+
},
|
1467 |
+
{
|
1468 |
+
"name": "stdout",
|
1469 |
+
"output_type": "stream",
|
1470 |
+
"text": [
|
1471 |
+
"Generating images for prompt 3/10: Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\n"
|
1472 |
+
]
|
1473 |
+
},
|
1474 |
+
{
|
1475 |
+
"data": {
|
1476 |
+
"application/vnd.jupyter.widget-view+json": {
|
1477 |
+
"model_id": "938be427eeb04a37bb699f48786787c3",
|
1478 |
+
"version_major": 2,
|
1479 |
+
"version_minor": 0
|
1480 |
+
},
|
1481 |
+
"text/plain": [
|
1482 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1483 |
+
]
|
1484 |
+
},
|
1485 |
+
"metadata": {},
|
1486 |
+
"output_type": "display_data"
|
1487 |
+
},
|
1488 |
+
{
|
1489 |
+
"name": "stdout",
|
1490 |
+
"output_type": "stream",
|
1491 |
+
"text": [
|
1492 |
+
"Generating images for prompt 4/10: Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\n"
|
1493 |
+
]
|
1494 |
+
},
|
1495 |
+
{
|
1496 |
+
"data": {
|
1497 |
+
"application/vnd.jupyter.widget-view+json": {
|
1498 |
+
"model_id": "e56d500dad614136bd8c773a10081acf",
|
1499 |
+
"version_major": 2,
|
1500 |
+
"version_minor": 0
|
1501 |
+
},
|
1502 |
+
"text/plain": [
|
1503 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1504 |
+
]
|
1505 |
+
},
|
1506 |
+
"metadata": {},
|
1507 |
+
"output_type": "display_data"
|
1508 |
+
},
|
1509 |
+
{
|
1510 |
+
"name": "stdout",
|
1511 |
+
"output_type": "stream",
|
1512 |
+
"text": [
|
1513 |
+
"Generating images for prompt 5/10: Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\n"
|
1514 |
+
]
|
1515 |
+
},
|
1516 |
+
{
|
1517 |
+
"data": {
|
1518 |
+
"application/vnd.jupyter.widget-view+json": {
|
1519 |
+
"model_id": "4127cb5cac35459693e4e3f89baeb818",
|
1520 |
+
"version_major": 2,
|
1521 |
+
"version_minor": 0
|
1522 |
+
},
|
1523 |
+
"text/plain": [
|
1524 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1525 |
+
]
|
1526 |
+
},
|
1527 |
+
"metadata": {},
|
1528 |
+
"output_type": "display_data"
|
1529 |
+
},
|
1530 |
+
{
|
1531 |
+
"name": "stdout",
|
1532 |
+
"output_type": "stream",
|
1533 |
+
"text": [
|
1534 |
+
"Generating images for prompt 6/10: Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\n"
|
1535 |
+
]
|
1536 |
+
},
|
1537 |
+
{
|
1538 |
+
"data": {
|
1539 |
+
"application/vnd.jupyter.widget-view+json": {
|
1540 |
+
"model_id": "b941b7e6426f4700b3ee20290b18b36d",
|
1541 |
+
"version_major": 2,
|
1542 |
+
"version_minor": 0
|
1543 |
+
},
|
1544 |
+
"text/plain": [
|
1545 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1546 |
+
]
|
1547 |
+
},
|
1548 |
+
"metadata": {},
|
1549 |
+
"output_type": "display_data"
|
1550 |
+
},
|
1551 |
+
{
|
1552 |
+
"name": "stdout",
|
1553 |
+
"output_type": "stream",
|
1554 |
+
"text": [
|
1555 |
+
"Generating images for prompt 7/10: Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\n"
|
1556 |
+
]
|
1557 |
+
},
|
1558 |
+
{
|
1559 |
+
"data": {
|
1560 |
+
"application/vnd.jupyter.widget-view+json": {
|
1561 |
+
"model_id": "fe96f984b8a54bf28233199afabe2bca",
|
1562 |
+
"version_major": 2,
|
1563 |
+
"version_minor": 0
|
1564 |
+
},
|
1565 |
+
"text/plain": [
|
1566 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1567 |
+
]
|
1568 |
+
},
|
1569 |
+
"metadata": {},
|
1570 |
+
"output_type": "display_data"
|
1571 |
+
},
|
1572 |
+
{
|
1573 |
+
"name": "stdout",
|
1574 |
+
"output_type": "stream",
|
1575 |
+
"text": [
|
1576 |
+
"Generating images for prompt 8/10: Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\n"
|
1577 |
+
]
|
1578 |
+
},
|
1579 |
+
{
|
1580 |
+
"data": {
|
1581 |
+
"application/vnd.jupyter.widget-view+json": {
|
1582 |
+
"model_id": "fda0102c3ca24c4a8efdad2e37c7d31d",
|
1583 |
+
"version_major": 2,
|
1584 |
+
"version_minor": 0
|
1585 |
+
},
|
1586 |
+
"text/plain": [
|
1587 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1588 |
+
]
|
1589 |
+
},
|
1590 |
+
"metadata": {},
|
1591 |
+
"output_type": "display_data"
|
1592 |
+
},
|
1593 |
+
{
|
1594 |
+
"name": "stdout",
|
1595 |
+
"output_type": "stream",
|
1596 |
+
"text": [
|
1597 |
+
"Generating images for prompt 9/10: Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\n"
|
1598 |
+
]
|
1599 |
+
},
|
1600 |
+
{
|
1601 |
+
"data": {
|
1602 |
+
"application/vnd.jupyter.widget-view+json": {
|
1603 |
+
"model_id": "eaddf4e7efc24fa3971fbd9e4595cf94",
|
1604 |
+
"version_major": 2,
|
1605 |
+
"version_minor": 0
|
1606 |
+
},
|
1607 |
+
"text/plain": [
|
1608 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1609 |
+
]
|
1610 |
+
},
|
1611 |
+
"metadata": {},
|
1612 |
+
"output_type": "display_data"
|
1613 |
+
},
|
1614 |
+
{
|
1615 |
+
"name": "stdout",
|
1616 |
+
"output_type": "stream",
|
1617 |
+
"text": [
|
1618 |
+
"Generating images for prompt 10/10: Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\n"
|
1619 |
+
]
|
1620 |
+
},
|
1621 |
+
{
|
1622 |
+
"data": {
|
1623 |
+
"application/vnd.jupyter.widget-view+json": {
|
1624 |
+
"model_id": "09476e1b429548e49ef625f935fe3b92",
|
1625 |
+
"version_major": 2,
|
1626 |
+
"version_minor": 0
|
1627 |
+
},
|
1628 |
+
"text/plain": [
|
1629 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1630 |
+
]
|
1631 |
+
},
|
1632 |
+
"metadata": {},
|
1633 |
+
"output_type": "display_data"
|
1634 |
+
}
|
1635 |
+
],
|
1636 |
+
"source": [
|
1637 |
+
"prompts = [\n",
|
1638 |
+
" \"Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\",\n",
|
1639 |
+
" \"Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\",\n",
|
1640 |
+
" \"Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\",\n",
|
1641 |
+
" \"Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\",\n",
|
1642 |
+
" \"Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\",\n",
|
1643 |
+
" \"Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\",\n",
|
1644 |
+
" \"Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\",\n",
|
1645 |
+
" \"Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\",\n",
|
1646 |
+
" \"Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\",\n",
|
1647 |
+
" \"Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\"\n",
|
1648 |
+
"]\n",
|
1649 |
+
"\n",
|
1650 |
+
"save_dir = \"taylor_lora_1500steps_generated_images\"\n",
|
1651 |
+
"for i, prompt in enumerate(prompts):\n",
|
1652 |
+
" print(f\"Generating images for prompt {i+1}/{len(prompts)}: {prompt}\")\n",
|
1653 |
+
" images = flux_dev_pipe(prompt, \n",
|
1654 |
+
" num_inference_steps=35, \n",
|
1655 |
+
" num_images_per_prompt=1, \n",
|
1656 |
+
" width=1024,\n",
|
1657 |
+
" height=1024,\n",
|
1658 |
+
" guidance_scale=3.5,\n",
|
1659 |
+
" generator=torch.Generator(\"cpu\").manual_seed(1024)).images\n",
|
1660 |
+
"\n",
|
1661 |
+
" if not os.path.exists(save_dir):\n",
|
1662 |
+
" os.makedirs(save_dir)\n",
|
1663 |
+
" \n",
|
1664 |
+
" images[0].save(f\"{save_dir}/prompt_{i+1}.jpg\")"
|
1665 |
+
]
|
1666 |
+
},
|
1667 |
+
{
|
1668 |
+
"cell_type": "markdown",
|
1669 |
+
"id": "8b710166-d3f0-49fa-9dbc-231d455ae949",
|
1670 |
+
"metadata": {},
|
1671 |
+
"source": [
|
1672 |
+
"### Final steps"
|
1673 |
+
]
|
1674 |
+
},
|
1675 |
+
{
|
1676 |
+
"cell_type": "code",
|
1677 |
+
"execution_count": 13,
|
1678 |
+
"id": "1284085a-c2f6-4e3e-9add-8b086b7f898b",
|
1679 |
+
"metadata": {},
|
1680 |
+
"outputs": [],
|
1681 |
+
"source": [
|
1682 |
+
"flux_dev_pipe.fuse_lora(lora_scale=0)"
|
1683 |
+
]
|
1684 |
+
},
|
1685 |
+
{
|
1686 |
+
"cell_type": "code",
|
1687 |
+
"execution_count": 15,
|
1688 |
+
"id": "7e4e1195-bdec-4dc9-b291-4b95b0703009",
|
1689 |
+
"metadata": {
|
1690 |
+
"scrolled": true
|
1691 |
+
},
|
1692 |
+
"outputs": [
|
1693 |
+
{
|
1694 |
+
"data": {
|
1695 |
+
"text/plain": [
|
1696 |
+
"FluxPipeline {\n",
|
1697 |
+
" \"_class_name\": \"FluxPipeline\",\n",
|
1698 |
+
" \"_diffusers_version\": \"0.32.1\",\n",
|
1699 |
+
" \"_name_or_path\": \"black-forest-labs/FLUX.1-dev\",\n",
|
1700 |
+
" \"feature_extractor\": [\n",
|
1701 |
+
" null,\n",
|
1702 |
+
" null\n",
|
1703 |
+
" ],\n",
|
1704 |
+
" \"image_encoder\": [\n",
|
1705 |
+
" null,\n",
|
1706 |
+
" null\n",
|
1707 |
+
" ],\n",
|
1708 |
+
" \"scheduler\": [\n",
|
1709 |
+
" \"diffusers\",\n",
|
1710 |
+
" \"FlowMatchEulerDiscreteScheduler\"\n",
|
1711 |
+
" ],\n",
|
1712 |
+
" \"text_encoder\": [\n",
|
1713 |
+
" \"transformers\",\n",
|
1714 |
+
" \"CLIPTextModel\"\n",
|
1715 |
+
" ],\n",
|
1716 |
+
" \"text_encoder_2\": [\n",
|
1717 |
+
" \"transformers\",\n",
|
1718 |
+
" \"T5EncoderModel\"\n",
|
1719 |
+
" ],\n",
|
1720 |
+
" \"tokenizer\": [\n",
|
1721 |
+
" \"transformers\",\n",
|
1722 |
+
" \"CLIPTokenizer\"\n",
|
1723 |
+
" ],\n",
|
1724 |
+
" \"tokenizer_2\": [\n",
|
1725 |
+
" \"transformers\",\n",
|
1726 |
+
" \"T5TokenizerFast\"\n",
|
1727 |
+
" ],\n",
|
1728 |
+
" \"transformer\": [\n",
|
1729 |
+
" \"diffusers\",\n",
|
1730 |
+
" \"FluxTransformer2DModel\"\n",
|
1731 |
+
" ],\n",
|
1732 |
+
" \"vae\": [\n",
|
1733 |
+
" \"diffusers\",\n",
|
1734 |
+
" \"AutoencoderKL\"\n",
|
1735 |
+
" ]\n",
|
1736 |
+
"}"
|
1737 |
+
]
|
1738 |
+
},
|
1739 |
+
"execution_count": 15,
|
1740 |
+
"metadata": {},
|
1741 |
+
"output_type": "execute_result"
|
1742 |
+
}
|
1743 |
+
],
|
1744 |
+
"source": [
|
1745 |
+
"lora_path = \"/workspace/taylor-rank16-multi-1e-4-constant/pytorch_lora_weights.safetensors\"\n",
|
1746 |
+
"flux_dev_pipe.load_lora_weights(lora_path)\n",
|
1747 |
+
"flux_dev_pipe.to(\"cuda\")"
|
1748 |
+
]
|
1749 |
+
},
|
1750 |
+
{
|
1751 |
+
"cell_type": "code",
|
1752 |
+
"execution_count": 16,
|
1753 |
+
"id": "c0d25993-fd61-4dd3-947f-7255e691ac48",
|
1754 |
+
"metadata": {
|
1755 |
+
"scrolled": true
|
1756 |
+
},
|
1757 |
+
"outputs": [
|
1758 |
+
{
|
1759 |
+
"name": "stdout",
|
1760 |
+
"output_type": "stream",
|
1761 |
+
"text": [
|
1762 |
+
"Generating images for prompt 1/10: Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\n"
|
1763 |
+
]
|
1764 |
+
},
|
1765 |
+
{
|
1766 |
+
"data": {
|
1767 |
+
"application/vnd.jupyter.widget-view+json": {
|
1768 |
+
"model_id": "cb6a2eab3f2e408d9080cb333895c910",
|
1769 |
+
"version_major": 2,
|
1770 |
+
"version_minor": 0
|
1771 |
+
},
|
1772 |
+
"text/plain": [
|
1773 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1774 |
+
]
|
1775 |
+
},
|
1776 |
+
"metadata": {},
|
1777 |
+
"output_type": "display_data"
|
1778 |
+
},
|
1779 |
+
{
|
1780 |
+
"name": "stdout",
|
1781 |
+
"output_type": "stream",
|
1782 |
+
"text": [
|
1783 |
+
"Generating images for prompt 2/10: Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\n"
|
1784 |
+
]
|
1785 |
+
},
|
1786 |
+
{
|
1787 |
+
"data": {
|
1788 |
+
"application/vnd.jupyter.widget-view+json": {
|
1789 |
+
"model_id": "a930af1ed23945e783081e0578dae6b5",
|
1790 |
+
"version_major": 2,
|
1791 |
+
"version_minor": 0
|
1792 |
+
},
|
1793 |
+
"text/plain": [
|
1794 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1795 |
+
]
|
1796 |
+
},
|
1797 |
+
"metadata": {},
|
1798 |
+
"output_type": "display_data"
|
1799 |
+
},
|
1800 |
+
{
|
1801 |
+
"name": "stdout",
|
1802 |
+
"output_type": "stream",
|
1803 |
+
"text": [
|
1804 |
+
"Generating images for prompt 3/10: Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\n"
|
1805 |
+
]
|
1806 |
+
},
|
1807 |
+
{
|
1808 |
+
"data": {
|
1809 |
+
"application/vnd.jupyter.widget-view+json": {
|
1810 |
+
"model_id": "9ed94025a7fa449ab20b5fedf9e191a9",
|
1811 |
+
"version_major": 2,
|
1812 |
+
"version_minor": 0
|
1813 |
+
},
|
1814 |
+
"text/plain": [
|
1815 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1816 |
+
]
|
1817 |
+
},
|
1818 |
+
"metadata": {},
|
1819 |
+
"output_type": "display_data"
|
1820 |
+
},
|
1821 |
+
{
|
1822 |
+
"name": "stdout",
|
1823 |
+
"output_type": "stream",
|
1824 |
+
"text": [
|
1825 |
+
"Generating images for prompt 4/10: Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\n"
|
1826 |
+
]
|
1827 |
+
},
|
1828 |
+
{
|
1829 |
+
"data": {
|
1830 |
+
"application/vnd.jupyter.widget-view+json": {
|
1831 |
+
"model_id": "ba126d975abd4765ae4360a414dc7111",
|
1832 |
+
"version_major": 2,
|
1833 |
+
"version_minor": 0
|
1834 |
+
},
|
1835 |
+
"text/plain": [
|
1836 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1837 |
+
]
|
1838 |
+
},
|
1839 |
+
"metadata": {},
|
1840 |
+
"output_type": "display_data"
|
1841 |
+
},
|
1842 |
+
{
|
1843 |
+
"name": "stdout",
|
1844 |
+
"output_type": "stream",
|
1845 |
+
"text": [
|
1846 |
+
"Generating images for prompt 5/10: Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\n"
|
1847 |
+
]
|
1848 |
+
},
|
1849 |
+
{
|
1850 |
+
"data": {
|
1851 |
+
"application/vnd.jupyter.widget-view+json": {
|
1852 |
+
"model_id": "ec8bcbb9cb1647ac96bda4d2ffdb9118",
|
1853 |
+
"version_major": 2,
|
1854 |
+
"version_minor": 0
|
1855 |
+
},
|
1856 |
+
"text/plain": [
|
1857 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1858 |
+
]
|
1859 |
+
},
|
1860 |
+
"metadata": {},
|
1861 |
+
"output_type": "display_data"
|
1862 |
+
},
|
1863 |
+
{
|
1864 |
+
"name": "stdout",
|
1865 |
+
"output_type": "stream",
|
1866 |
+
"text": [
|
1867 |
+
"Generating images for prompt 6/10: Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\n"
|
1868 |
+
]
|
1869 |
+
},
|
1870 |
+
{
|
1871 |
+
"data": {
|
1872 |
+
"application/vnd.jupyter.widget-view+json": {
|
1873 |
+
"model_id": "4698da0d342942b69fd567cd009ce469",
|
1874 |
+
"version_major": 2,
|
1875 |
+
"version_minor": 0
|
1876 |
+
},
|
1877 |
+
"text/plain": [
|
1878 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1879 |
+
]
|
1880 |
+
},
|
1881 |
+
"metadata": {},
|
1882 |
+
"output_type": "display_data"
|
1883 |
+
},
|
1884 |
+
{
|
1885 |
+
"name": "stdout",
|
1886 |
+
"output_type": "stream",
|
1887 |
+
"text": [
|
1888 |
+
"Generating images for prompt 7/10: Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\n"
|
1889 |
+
]
|
1890 |
+
},
|
1891 |
+
{
|
1892 |
+
"data": {
|
1893 |
+
"application/vnd.jupyter.widget-view+json": {
|
1894 |
+
"model_id": "433f7cd387da4342be4c27f06e220e6f",
|
1895 |
+
"version_major": 2,
|
1896 |
+
"version_minor": 0
|
1897 |
+
},
|
1898 |
+
"text/plain": [
|
1899 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1900 |
+
]
|
1901 |
+
},
|
1902 |
+
"metadata": {},
|
1903 |
+
"output_type": "display_data"
|
1904 |
+
},
|
1905 |
+
{
|
1906 |
+
"name": "stdout",
|
1907 |
+
"output_type": "stream",
|
1908 |
+
"text": [
|
1909 |
+
"Generating images for prompt 8/10: Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\n"
|
1910 |
+
]
|
1911 |
+
},
|
1912 |
+
{
|
1913 |
+
"data": {
|
1914 |
+
"application/vnd.jupyter.widget-view+json": {
|
1915 |
+
"model_id": "842b11a0b7c84722aa1f0842af3adc81",
|
1916 |
+
"version_major": 2,
|
1917 |
+
"version_minor": 0
|
1918 |
+
},
|
1919 |
+
"text/plain": [
|
1920 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1921 |
+
]
|
1922 |
+
},
|
1923 |
+
"metadata": {},
|
1924 |
+
"output_type": "display_data"
|
1925 |
+
},
|
1926 |
+
{
|
1927 |
+
"name": "stdout",
|
1928 |
+
"output_type": "stream",
|
1929 |
+
"text": [
|
1930 |
+
"Generating images for prompt 9/10: Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\n"
|
1931 |
+
]
|
1932 |
+
},
|
1933 |
+
{
|
1934 |
+
"data": {
|
1935 |
+
"application/vnd.jupyter.widget-view+json": {
|
1936 |
+
"model_id": "19b0042870534f5ca1e73ac2869b7570",
|
1937 |
+
"version_major": 2,
|
1938 |
+
"version_minor": 0
|
1939 |
+
},
|
1940 |
+
"text/plain": [
|
1941 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1942 |
+
]
|
1943 |
+
},
|
1944 |
+
"metadata": {},
|
1945 |
+
"output_type": "display_data"
|
1946 |
+
},
|
1947 |
+
{
|
1948 |
+
"name": "stdout",
|
1949 |
+
"output_type": "stream",
|
1950 |
+
"text": [
|
1951 |
+
"Generating images for prompt 10/10: Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\n"
|
1952 |
+
]
|
1953 |
+
},
|
1954 |
+
{
|
1955 |
+
"data": {
|
1956 |
+
"application/vnd.jupyter.widget-view+json": {
|
1957 |
+
"model_id": "7977fad788e04b5bb5c014aadc6cd468",
|
1958 |
+
"version_major": 2,
|
1959 |
+
"version_minor": 0
|
1960 |
+
},
|
1961 |
+
"text/plain": [
|
1962 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1963 |
+
]
|
1964 |
+
},
|
1965 |
+
"metadata": {},
|
1966 |
+
"output_type": "display_data"
|
1967 |
+
}
|
1968 |
+
],
|
1969 |
+
"source": [
|
1970 |
+
"prompts = [\n",
|
1971 |
+
" \"Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\",\n",
|
1972 |
+
" \"Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\",\n",
|
1973 |
+
" \"Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\",\n",
|
1974 |
+
" \"Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\",\n",
|
1975 |
+
" \"Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\",\n",
|
1976 |
+
" \"Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\",\n",
|
1977 |
+
" \"Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\",\n",
|
1978 |
+
" \"Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\",\n",
|
1979 |
+
" \"Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\",\n",
|
1980 |
+
" \"Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\"\n",
|
1981 |
+
"]\n",
|
1982 |
+
"\n",
|
1983 |
+
"negative_prompt = \"(old,wrinkles,deformed iris, deformed pupils, semi-realistic, cgi, 3d, render, sketch, cartoon, drawing, anime), text, cropped, out of frame, worst quality, low quality, jpeg artifacts, ugly, duplicate, morbid, mutilated, extra fingers, mutated hands, poorly drawn hands, poorly drawn face, mutation, deformed, blurry, dehydrated, bad anatomy, bad proportions, extra limbs, cloned face, disfigured, gross proportions, malformed limbs, missing arms, missing legs, extra arms, extra legs, fused fingers, too many fingers, long neck\"\n",
|
1984 |
+
"\n",
|
1985 |
+
"save_dir = \"taylor_lora_finalsteps_generated_images\"\n",
|
1986 |
+
"for i, prompt in enumerate(prompts):\n",
|
1987 |
+
" print(f\"Generating images for prompt {i+1}/{len(prompts)}: {prompt}\")\n",
|
1988 |
+
" images = flux_dev_pipe(prompt, \n",
|
1989 |
+
" negative_prompt=negative_prompt,\n",
|
1990 |
+
" num_inference_steps=35, \n",
|
1991 |
+
" num_images_per_prompt=1, \n",
|
1992 |
+
" width=1024,\n",
|
1993 |
+
" height=1024,\n",
|
1994 |
+
" guidance_scale=3.5,\n",
|
1995 |
+
" generator=torch.Generator(\"cpu\").manual_seed(1024)\n",
|
1996 |
+
" ).images\n",
|
1997 |
+
"\n",
|
1998 |
+
" if not os.path.exists(save_dir):\n",
|
1999 |
+
" os.makedirs(save_dir)\n",
|
2000 |
+
" \n",
|
2001 |
+
" images[0].save(f\"{save_dir}/prompt_{i+1}.jpg\")"
|
2002 |
+
]
|
2003 |
+
},
|
2004 |
+
{
|
2005 |
+
"cell_type": "code",
|
2006 |
+
"execution_count": null,
|
2007 |
+
"id": "4306f6c1-561b-43cc-a965-64f844dc9a89",
|
2008 |
+
"metadata": {},
|
2009 |
+
"outputs": [],
|
2010 |
+
"source": []
|
2011 |
+
}
|
2012 |
+
],
|
2013 |
+
"metadata": {
|
2014 |
+
"kernelspec": {
|
2015 |
+
"display_name": "Python 3 (ipykernel)",
|
2016 |
+
"language": "python",
|
2017 |
+
"name": "python3"
|
2018 |
+
},
|
2019 |
+
"language_info": {
|
2020 |
+
"codemirror_mode": {
|
2021 |
+
"name": "ipython",
|
2022 |
+
"version": 3
|
2023 |
+
},
|
2024 |
+
"file_extension": ".py",
|
2025 |
+
"mimetype": "text/x-python",
|
2026 |
+
"name": "python",
|
2027 |
+
"nbconvert_exporter": "python",
|
2028 |
+
"pygments_lexer": "ipython3",
|
2029 |
+
"version": "3.10.12"
|
2030 |
+
}
|
2031 |
+
},
|
2032 |
+
"nbformat": 4,
|
2033 |
+
"nbformat_minor": 5
|
2034 |
+
}
|
taylor_lora_1500steps_generated_images/prompt_1.jpg
ADDED
taylor_lora_1500steps_generated_images/prompt_10.jpg
ADDED
taylor_lora_1500steps_generated_images/prompt_2.jpg
ADDED
taylor_lora_1500steps_generated_images/prompt_3.jpg
ADDED
taylor_lora_1500steps_generated_images/prompt_4.jpg
ADDED
taylor_lora_1500steps_generated_images/prompt_5.jpg
ADDED
taylor_lora_1500steps_generated_images/prompt_6.jpg
ADDED
taylor_lora_1500steps_generated_images/prompt_7.jpg
ADDED
taylor_lora_1500steps_generated_images/prompt_8.jpg
ADDED
taylor_lora_1500steps_generated_images/prompt_9.jpg
ADDED
taylor_lora_2000steps_generated_images/prompt_1.jpg
ADDED
taylor_lora_2000steps_generated_images/prompt_10.jpg
ADDED
taylor_lora_2000steps_generated_images/prompt_2.jpg
ADDED
taylor_lora_2000steps_generated_images/prompt_3.jpg
ADDED
taylor_lora_2000steps_generated_images/prompt_4.jpg
ADDED
taylor_lora_2000steps_generated_images/prompt_5.jpg
ADDED
taylor_lora_2000steps_generated_images/prompt_6.jpg
ADDED
taylor_lora_2000steps_generated_images/prompt_7.jpg
ADDED
taylor_lora_2000steps_generated_images/prompt_8.jpg
ADDED
taylor_lora_2000steps_generated_images/prompt_9.jpg
ADDED
taylor_lora_2500steps_generated_images/prompt_1.jpg
ADDED
taylor_lora_2500steps_generated_images/prompt_10.jpg
ADDED
taylor_lora_2500steps_generated_images/prompt_2.jpg
ADDED
taylor_lora_2500steps_generated_images/prompt_3.jpg
ADDED
taylor_lora_2500steps_generated_images/prompt_4.jpg
ADDED
taylor_lora_2500steps_generated_images/prompt_5.jpg
ADDED
taylor_lora_2500steps_generated_images/prompt_6.jpg
ADDED
taylor_lora_2500steps_generated_images/prompt_7.jpg
ADDED
taylor_lora_2500steps_generated_images/prompt_8.jpg
ADDED
taylor_lora_2500steps_generated_images/prompt_9.jpg
ADDED
taylor_lora_finalsteps_generated_images/prompt_1.jpg
ADDED
taylor_lora_finalsteps_generated_images/prompt_10.jpg
ADDED
taylor_lora_finalsteps_generated_images/prompt_2.jpg
ADDED
taylor_lora_finalsteps_generated_images/prompt_3.jpg
ADDED
taylor_lora_finalsteps_generated_images/prompt_4.jpg
ADDED
taylor_lora_finalsteps_generated_images/prompt_5.jpg
ADDED
taylor_lora_finalsteps_generated_images/prompt_6.jpg
ADDED
taylor_lora_finalsteps_generated_images/prompt_7.jpg
ADDED
taylor_lora_finalsteps_generated_images/prompt_8.jpg
ADDED
taylor_lora_finalsteps_generated_images/prompt_9.jpg
ADDED
test_infer.ipynb
ADDED
@@ -0,0 +1,2034 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"cells": [
|
3 |
+
{
|
4 |
+
"cell_type": "code",
|
5 |
+
"execution_count": 1,
|
6 |
+
"id": "d21f84c4-c847-4748-823a-7f83c392ef7b",
|
7 |
+
"metadata": {
|
8 |
+
"scrolled": true
|
9 |
+
},
|
10 |
+
"outputs": [
|
11 |
+
{
|
12 |
+
"name": "stdout",
|
13 |
+
"output_type": "stream",
|
14 |
+
"text": [
|
15 |
+
"Collecting diffusers\n",
|
16 |
+
" Downloading diffusers-0.32.1-py3-none-any.whl.metadata (18 kB)\n",
|
17 |
+
"Collecting transformers\n",
|
18 |
+
" Downloading transformers-4.47.1-py3-none-any.whl.metadata (44 kB)\n",
|
19 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m44.1/44.1 kB\u001b[0m \u001b[31m3.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
20 |
+
"\u001b[?25hRequirement already satisfied: torch in /usr/local/lib/python3.10/dist-packages (2.1.0+cu118)\n",
|
21 |
+
"Collecting sentencepiece\n",
|
22 |
+
" Downloading sentencepiece-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (7.7 kB)\n",
|
23 |
+
"Collecting protobuf\n",
|
24 |
+
" Downloading protobuf-5.29.3-cp38-abi3-manylinux2014_x86_64.whl.metadata (592 bytes)\n",
|
25 |
+
"Collecting peft\n",
|
26 |
+
" Downloading peft-0.14.0-py3-none-any.whl.metadata (13 kB)\n",
|
27 |
+
"Collecting accelerate\n",
|
28 |
+
" Downloading accelerate-1.2.1-py3-none-any.whl.metadata (19 kB)\n",
|
29 |
+
"Requirement already satisfied: importlib-metadata in /usr/lib/python3/dist-packages (from diffusers) (4.6.4)\n",
|
30 |
+
"Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from diffusers) (3.9.0)\n",
|
31 |
+
"Collecting huggingface-hub>=0.23.2 (from diffusers)\n",
|
32 |
+
" Downloading huggingface_hub-0.27.1-py3-none-any.whl.metadata (13 kB)\n",
|
33 |
+
"Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (from diffusers) (1.24.1)\n",
|
34 |
+
"Collecting regex!=2019.12.17 (from diffusers)\n",
|
35 |
+
" Downloading regex-2024.11.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (40 kB)\n",
|
36 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m40.5/40.5 kB\u001b[0m \u001b[31m14.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
37 |
+
"\u001b[?25hRequirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from diffusers) (2.31.0)\n",
|
38 |
+
"Collecting safetensors>=0.3.1 (from diffusers)\n",
|
39 |
+
" Downloading safetensors-0.5.2-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.8 kB)\n",
|
40 |
+
"Requirement already satisfied: Pillow in /usr/local/lib/python3.10/dist-packages (from diffusers) (9.3.0)\n",
|
41 |
+
"Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from transformers) (23.2)\n",
|
42 |
+
"Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from transformers) (6.0.1)\n",
|
43 |
+
"Collecting tokenizers<0.22,>=0.21 (from transformers)\n",
|
44 |
+
" Downloading tokenizers-0.21.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.7 kB)\n",
|
45 |
+
"Collecting tqdm>=4.27 (from transformers)\n",
|
46 |
+
" Downloading tqdm-4.67.1-py3-none-any.whl.metadata (57 kB)\n",
|
47 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m57.7/57.7 kB\u001b[0m \u001b[31m21.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
48 |
+
"\u001b[?25hRequirement already satisfied: typing-extensions in /usr/local/lib/python3.10/dist-packages (from torch) (4.4.0)\n",
|
49 |
+
"Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch) (1.12)\n",
|
50 |
+
"Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch) (3.0)\n",
|
51 |
+
"Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch) (3.1.2)\n",
|
52 |
+
"Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch) (2023.4.0)\n",
|
53 |
+
"Requirement already satisfied: triton==2.1.0 in /usr/local/lib/python3.10/dist-packages (from torch) (2.1.0)\n",
|
54 |
+
"Requirement already satisfied: psutil in /usr/local/lib/python3.10/dist-packages (from peft) (5.9.6)\n",
|
55 |
+
"Collecting fsspec (from torch)\n",
|
56 |
+
" Downloading fsspec-2024.12.0-py3-none-any.whl.metadata (11 kB)\n",
|
57 |
+
"Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch) (2.1.2)\n",
|
58 |
+
"Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->diffusers) (2.1.1)\n",
|
59 |
+
"Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->diffusers) (3.4)\n",
|
60 |
+
"Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->diffusers) (1.26.13)\n",
|
61 |
+
"Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->diffusers) (2022.12.7)\n",
|
62 |
+
"Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.10/dist-packages (from sympy->torch) (1.3.0)\n",
|
63 |
+
"Downloading diffusers-0.32.1-py3-none-any.whl (3.2 MB)\n",
|
64 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.2/3.2 MB\u001b[0m \u001b[31m149.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
65 |
+
"\u001b[?25hDownloading transformers-4.47.1-py3-none-any.whl (10.1 MB)\n",
|
66 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m10.1/10.1 MB\u001b[0m \u001b[31m151.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m \u001b[36m0:00:01\u001b[0m\n",
|
67 |
+
"\u001b[?25hDownloading sentencepiece-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB)\n",
|
68 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.3/1.3 MB\u001b[0m \u001b[31m157.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
69 |
+
"\u001b[?25hDownloading protobuf-5.29.3-cp38-abi3-manylinux2014_x86_64.whl (319 kB)\n",
|
70 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m319.7/319.7 kB\u001b[0m \u001b[31m98.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
71 |
+
"\u001b[?25hDownloading peft-0.14.0-py3-none-any.whl (374 kB)\n",
|
72 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m374.8/374.8 kB\u001b[0m \u001b[31m102.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
73 |
+
"\u001b[?25hDownloading accelerate-1.2.1-py3-none-any.whl (336 kB)\n",
|
74 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m336.4/336.4 kB\u001b[0m \u001b[31m102.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
75 |
+
"\u001b[?25hDownloading huggingface_hub-0.27.1-py3-none-any.whl (450 kB)\n",
|
76 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m450.7/450.7 kB\u001b[0m \u001b[31m112.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
77 |
+
"\u001b[?25hDownloading fsspec-2024.12.0-py3-none-any.whl (183 kB)\n",
|
78 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m183.9/183.9 kB\u001b[0m \u001b[31m71.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
79 |
+
"\u001b[?25hDownloading regex-2024.11.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (781 kB)\n",
|
80 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m781.7/781.7 kB\u001b[0m \u001b[31m144.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
81 |
+
"\u001b[?25hDownloading safetensors-0.5.2-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (461 kB)\n",
|
82 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m462.0/462.0 kB\u001b[0m \u001b[31m117.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
83 |
+
"\u001b[?25hDownloading tokenizers-0.21.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB)\n",
|
84 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.0/3.0 MB\u001b[0m \u001b[31m165.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
85 |
+
"\u001b[?25hDownloading tqdm-4.67.1-py3-none-any.whl (78 kB)\n",
|
86 |
+
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m78.5/78.5 kB\u001b[0m \u001b[31m36.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
|
87 |
+
"\u001b[?25hInstalling collected packages: sentencepiece, tqdm, safetensors, regex, protobuf, fsspec, huggingface-hub, tokenizers, diffusers, accelerate, transformers, peft\n",
|
88 |
+
" Attempting uninstall: fsspec\n",
|
89 |
+
" Found existing installation: fsspec 2023.4.0\n",
|
90 |
+
" Uninstalling fsspec-2023.4.0:\n",
|
91 |
+
" Successfully uninstalled fsspec-2023.4.0\n",
|
92 |
+
"Successfully installed accelerate-1.2.1 diffusers-0.32.1 fsspec-2024.12.0 huggingface-hub-0.27.1 peft-0.14.0 protobuf-5.29.3 regex-2024.11.6 safetensors-0.5.2 sentencepiece-0.2.0 tokenizers-0.21.0 tqdm-4.67.1 transformers-4.47.1\n",
|
93 |
+
"\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
|
94 |
+
"\u001b[0m\n",
|
95 |
+
"\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.3.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.3.1\u001b[0m\n",
|
96 |
+
"\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n"
|
97 |
+
]
|
98 |
+
}
|
99 |
+
],
|
100 |
+
"source": [
|
101 |
+
"!pip install diffusers transformers torch sentencepiece protobuf peft accelerate"
|
102 |
+
]
|
103 |
+
},
|
104 |
+
{
|
105 |
+
"cell_type": "code",
|
106 |
+
"execution_count": 2,
|
107 |
+
"id": "d92544f5-8332-4ed9-8ff3-058bda3bd11e",
|
108 |
+
"metadata": {},
|
109 |
+
"outputs": [
|
110 |
+
{
|
111 |
+
"name": "stdout",
|
112 |
+
"output_type": "stream",
|
113 |
+
"text": [
|
114 |
+
"The token has not been saved to the git credentials helper. Pass `add_to_git_credential=True` in this function directly or `--add-to-git-credential` if using via `huggingface-cli` if you want to set the git credential as well.\n",
|
115 |
+
"Token is valid (permission: fineGrained).\n",
|
116 |
+
"The token `nectar` has been saved to /root/.cache/huggingface/stored_tokens\n",
|
117 |
+
"Your token has been saved to /root/.cache/huggingface/token\n",
|
118 |
+
"Login successful.\n",
|
119 |
+
"The current active token is: `nectar`\n"
|
120 |
+
]
|
121 |
+
}
|
122 |
+
],
|
123 |
+
"source": [
|
124 |
+
"!huggingface-cli login --token ..."
|
125 |
+
]
|
126 |
+
},
|
127 |
+
{
|
128 |
+
"cell_type": "code",
|
129 |
+
"execution_count": 3,
|
130 |
+
"id": "f13b5804-4f8f-45b3-9fcb-4253e9a0c9bc",
|
131 |
+
"metadata": {},
|
132 |
+
"outputs": [],
|
133 |
+
"source": [
|
134 |
+
"import os\n",
|
135 |
+
"from PIL import Image\n",
|
136 |
+
"from datetime import datetime\n",
|
137 |
+
"from tqdm.auto import tqdm\n",
|
138 |
+
"\n",
|
139 |
+
"def generate_filename(base_name, extension=\".png\"):\n",
|
140 |
+
" timestamp = datetime.now().strftime(\"%Y%m%d_%H%M%S\")\n",
|
141 |
+
" return f\"{base_name}_{timestamp}{extension}\"\n",
|
142 |
+
"\n",
|
143 |
+
"def save_image(image, directory, base_name=\"image_grid\"):\n",
|
144 |
+
" filename = generate_filename(base_name)\n",
|
145 |
+
" file_path = os.path.join(directory, filename)\n",
|
146 |
+
" image.save(file_path)\n",
|
147 |
+
" print(f\"Image saved as {file_path}\")\n",
|
148 |
+
"\n",
|
149 |
+
"def image_grid(imgs, rows, cols, save=True, save_dir='generated_images', base_name=\"image_grid\"):\n",
|
150 |
+
" if not os.path.exists(save_dir):\n",
|
151 |
+
" os.makedirs(save_dir)\n",
|
152 |
+
" \n",
|
153 |
+
" # Adjust rows and cols if the image count doesn't match\n",
|
154 |
+
" total_images = len(imgs)\n",
|
155 |
+
" expected_images = rows * cols\n",
|
156 |
+
" if total_images != expected_images:\n",
|
157 |
+
" print(f\"Warning: Expected {expected_images} images, but got {total_images}. Adjusting grid size.\")\n",
|
158 |
+
" cols = min(total_images, cols)\n",
|
159 |
+
" rows = (total_images + cols - 1) // cols # Ensure all images fit in the grid\n",
|
160 |
+
"\n",
|
161 |
+
" w, h = imgs[0].size\n",
|
162 |
+
" grid = Image.new('RGB', size=(cols * w, rows * h))\n",
|
163 |
+
"\n",
|
164 |
+
" for i, img in enumerate(imgs):\n",
|
165 |
+
" grid.paste(img, box=(i % cols * w, i // cols * h))\n",
|
166 |
+
"\n",
|
167 |
+
" if save and save_dir:\n",
|
168 |
+
" save_image(grid, save_dir, base_name)\n",
|
169 |
+
"\n",
|
170 |
+
" return grid\n",
|
171 |
+
"\n",
|
172 |
+
"\n",
|
173 |
+
"def download_image(url):\n",
|
174 |
+
" try:\n",
|
175 |
+
" response = requests.get(url)\n",
|
176 |
+
" except:\n",
|
177 |
+
" return None\n",
|
178 |
+
" return Image.open(BytesIO(response.content)).convert(\"RGB\")\n"
|
179 |
+
]
|
180 |
+
},
|
181 |
+
{
|
182 |
+
"cell_type": "code",
|
183 |
+
"execution_count": 5,
|
184 |
+
"id": "8e476bbe-deb5-4c23-a007-4386606e41b4",
|
185 |
+
"metadata": {
|
186 |
+
"scrolled": true
|
187 |
+
},
|
188 |
+
"outputs": [
|
189 |
+
{
|
190 |
+
"data": {
|
191 |
+
"application/vnd.jupyter.widget-view+json": {
|
192 |
+
"model_id": "57594311206b4300a4da9a9a102cd2fa",
|
193 |
+
"version_major": 2,
|
194 |
+
"version_minor": 0
|
195 |
+
},
|
196 |
+
"text/plain": [
|
197 |
+
"model_index.json: 0%| | 0.00/536 [00:00<?, ?B/s]"
|
198 |
+
]
|
199 |
+
},
|
200 |
+
"metadata": {},
|
201 |
+
"output_type": "display_data"
|
202 |
+
},
|
203 |
+
{
|
204 |
+
"data": {
|
205 |
+
"application/vnd.jupyter.widget-view+json": {
|
206 |
+
"model_id": "e20df890dabf459daa7ef53d15889a66",
|
207 |
+
"version_major": 2,
|
208 |
+
"version_minor": 0
|
209 |
+
},
|
210 |
+
"text/plain": [
|
211 |
+
"Fetching 23 files: 0%| | 0/23 [00:00<?, ?it/s]"
|
212 |
+
]
|
213 |
+
},
|
214 |
+
"metadata": {},
|
215 |
+
"output_type": "display_data"
|
216 |
+
},
|
217 |
+
{
|
218 |
+
"data": {
|
219 |
+
"application/vnd.jupyter.widget-view+json": {
|
220 |
+
"model_id": "f7d51ce5b1bc41a7bc050ebd87fdbe50",
|
221 |
+
"version_major": 2,
|
222 |
+
"version_minor": 0
|
223 |
+
},
|
224 |
+
"text/plain": [
|
225 |
+
"Loading pipeline components...: 0%| | 0/7 [00:00<?, ?it/s]"
|
226 |
+
]
|
227 |
+
},
|
228 |
+
"metadata": {},
|
229 |
+
"output_type": "display_data"
|
230 |
+
},
|
231 |
+
{
|
232 |
+
"name": "stderr",
|
233 |
+
"output_type": "stream",
|
234 |
+
"text": [
|
235 |
+
"You set `add_prefix_space`. The tokenizer needs to be converted from the slow tokenizers\n"
|
236 |
+
]
|
237 |
+
},
|
238 |
+
{
|
239 |
+
"data": {
|
240 |
+
"application/vnd.jupyter.widget-view+json": {
|
241 |
+
"model_id": "830d0846385546c49b7faf51d9cec2ca",
|
242 |
+
"version_major": 2,
|
243 |
+
"version_minor": 0
|
244 |
+
},
|
245 |
+
"text/plain": [
|
246 |
+
"Loading checkpoint shards: 0%| | 0/2 [00:00<?, ?it/s]"
|
247 |
+
]
|
248 |
+
},
|
249 |
+
"metadata": {},
|
250 |
+
"output_type": "display_data"
|
251 |
+
}
|
252 |
+
],
|
253 |
+
"source": [
|
254 |
+
"# import torch\n",
|
255 |
+
"# from diffusers import FluxPipeline\n",
|
256 |
+
"\n",
|
257 |
+
"# pipe = FluxPipeline.from_pretrained(\"black-forest-labs/FLUX.1-dev\", cache_dir=\".\", torch_dtype=torch.bfloat16, force_download=True).to(\"cuda\")"
|
258 |
+
]
|
259 |
+
},
|
260 |
+
{
|
261 |
+
"cell_type": "code",
|
262 |
+
"execution_count": 4,
|
263 |
+
"id": "376eaa46-0db0-4d7c-8a46-4226badaf639",
|
264 |
+
"metadata": {
|
265 |
+
"scrolled": true
|
266 |
+
},
|
267 |
+
"outputs": [
|
268 |
+
{
|
269 |
+
"name": "stderr",
|
270 |
+
"output_type": "stream",
|
271 |
+
"text": [
|
272 |
+
"The cache for model files in Transformers v4.22.0 has been updated. Migrating your old cache. This is a one-time only operation. You can interrupt this and resume the migration later on by calling `transformers.utils.move_cache()`.\n"
|
273 |
+
]
|
274 |
+
},
|
275 |
+
{
|
276 |
+
"data": {
|
277 |
+
"application/vnd.jupyter.widget-view+json": {
|
278 |
+
"model_id": "a3bc5e5702f64798a09367d49e2430c8",
|
279 |
+
"version_major": 2,
|
280 |
+
"version_minor": 0
|
281 |
+
},
|
282 |
+
"text/plain": [
|
283 |
+
"0it [00:00, ?it/s]"
|
284 |
+
]
|
285 |
+
},
|
286 |
+
"metadata": {},
|
287 |
+
"output_type": "display_data"
|
288 |
+
},
|
289 |
+
{
|
290 |
+
"data": {
|
291 |
+
"application/vnd.jupyter.widget-view+json": {
|
292 |
+
"model_id": "d0508157a6cb4bd282ebb8ac937c6a06",
|
293 |
+
"version_major": 2,
|
294 |
+
"version_minor": 0
|
295 |
+
},
|
296 |
+
"text/plain": [
|
297 |
+
"model_index.json: 0%| | 0.00/536 [00:00<?, ?B/s]"
|
298 |
+
]
|
299 |
+
},
|
300 |
+
"metadata": {},
|
301 |
+
"output_type": "display_data"
|
302 |
+
},
|
303 |
+
{
|
304 |
+
"data": {
|
305 |
+
"application/vnd.jupyter.widget-view+json": {
|
306 |
+
"model_id": "c8cf30a221974a2dbc89a2365420f890",
|
307 |
+
"version_major": 2,
|
308 |
+
"version_minor": 0
|
309 |
+
},
|
310 |
+
"text/plain": [
|
311 |
+
"Fetching 23 files: 0%| | 0/23 [00:00<?, ?it/s]"
|
312 |
+
]
|
313 |
+
},
|
314 |
+
"metadata": {},
|
315 |
+
"output_type": "display_data"
|
316 |
+
},
|
317 |
+
{
|
318 |
+
"data": {
|
319 |
+
"application/vnd.jupyter.widget-view+json": {
|
320 |
+
"model_id": "34ff8d84d08c4bcfa4bbbc8919406d1b",
|
321 |
+
"version_major": 2,
|
322 |
+
"version_minor": 0
|
323 |
+
},
|
324 |
+
"text/plain": [
|
325 |
+
"tokenizer/merges.txt: 0%| | 0.00/525k [00:00<?, ?B/s]"
|
326 |
+
]
|
327 |
+
},
|
328 |
+
"metadata": {},
|
329 |
+
"output_type": "display_data"
|
330 |
+
},
|
331 |
+
{
|
332 |
+
"data": {
|
333 |
+
"application/vnd.jupyter.widget-view+json": {
|
334 |
+
"model_id": "e3882d33752348f5b427f7ada56e62bd",
|
335 |
+
"version_major": 2,
|
336 |
+
"version_minor": 0
|
337 |
+
},
|
338 |
+
"text/plain": [
|
339 |
+
"scheduler/scheduler_config.json: 0%| | 0.00/273 [00:00<?, ?B/s]"
|
340 |
+
]
|
341 |
+
},
|
342 |
+
"metadata": {},
|
343 |
+
"output_type": "display_data"
|
344 |
+
},
|
345 |
+
{
|
346 |
+
"data": {
|
347 |
+
"application/vnd.jupyter.widget-view+json": {
|
348 |
+
"model_id": "55f165c3e7604ef1a811980f9b2fb6bb",
|
349 |
+
"version_major": 2,
|
350 |
+
"version_minor": 0
|
351 |
+
},
|
352 |
+
"text/plain": [
|
353 |
+
"(…)t_encoder_2/model.safetensors.index.json: 0%| | 0.00/19.9k [00:00<?, ?B/s]"
|
354 |
+
]
|
355 |
+
},
|
356 |
+
"metadata": {},
|
357 |
+
"output_type": "display_data"
|
358 |
+
},
|
359 |
+
{
|
360 |
+
"data": {
|
361 |
+
"application/vnd.jupyter.widget-view+json": {
|
362 |
+
"model_id": "beead06204ac45a8b7491c8b6f0ef763",
|
363 |
+
"version_major": 2,
|
364 |
+
"version_minor": 0
|
365 |
+
},
|
366 |
+
"text/plain": [
|
367 |
+
"text_encoder/config.json: 0%| | 0.00/613 [00:00<?, ?B/s]"
|
368 |
+
]
|
369 |
+
},
|
370 |
+
"metadata": {},
|
371 |
+
"output_type": "display_data"
|
372 |
+
},
|
373 |
+
{
|
374 |
+
"data": {
|
375 |
+
"application/vnd.jupyter.widget-view+json": {
|
376 |
+
"model_id": "67f648521e25407ea48a3cee16f5fe86",
|
377 |
+
"version_major": 2,
|
378 |
+
"version_minor": 0
|
379 |
+
},
|
380 |
+
"text/plain": [
|
381 |
+
"model.safetensors: 0%| | 0.00/246M [00:00<?, ?B/s]"
|
382 |
+
]
|
383 |
+
},
|
384 |
+
"metadata": {},
|
385 |
+
"output_type": "display_data"
|
386 |
+
},
|
387 |
+
{
|
388 |
+
"data": {
|
389 |
+
"application/vnd.jupyter.widget-view+json": {
|
390 |
+
"model_id": "bbac917ce62e47c795dbe5ed1be6e09f",
|
391 |
+
"version_major": 2,
|
392 |
+
"version_minor": 0
|
393 |
+
},
|
394 |
+
"text/plain": [
|
395 |
+
"tokenizer/special_tokens_map.json: 0%| | 0.00/588 [00:00<?, ?B/s]"
|
396 |
+
]
|
397 |
+
},
|
398 |
+
"metadata": {},
|
399 |
+
"output_type": "display_data"
|
400 |
+
},
|
401 |
+
{
|
402 |
+
"data": {
|
403 |
+
"application/vnd.jupyter.widget-view+json": {
|
404 |
+
"model_id": "d6b357f1951f47d9a731ff406353397a",
|
405 |
+
"version_major": 2,
|
406 |
+
"version_minor": 0
|
407 |
+
},
|
408 |
+
"text/plain": [
|
409 |
+
"text_encoder_2/config.json: 0%| | 0.00/782 [00:00<?, ?B/s]"
|
410 |
+
]
|
411 |
+
},
|
412 |
+
"metadata": {},
|
413 |
+
"output_type": "display_data"
|
414 |
+
},
|
415 |
+
{
|
416 |
+
"data": {
|
417 |
+
"application/vnd.jupyter.widget-view+json": {
|
418 |
+
"model_id": "fa47f58e41ff4dbfad41b9f1a0960876",
|
419 |
+
"version_major": 2,
|
420 |
+
"version_minor": 0
|
421 |
+
},
|
422 |
+
"text/plain": [
|
423 |
+
"tokenizer/tokenizer_config.json: 0%| | 0.00/705 [00:00<?, ?B/s]"
|
424 |
+
]
|
425 |
+
},
|
426 |
+
"metadata": {},
|
427 |
+
"output_type": "display_data"
|
428 |
+
},
|
429 |
+
{
|
430 |
+
"data": {
|
431 |
+
"application/vnd.jupyter.widget-view+json": {
|
432 |
+
"model_id": "ebcc69a04e3d4bc891c51fcd0667ba70",
|
433 |
+
"version_major": 2,
|
434 |
+
"version_minor": 0
|
435 |
+
},
|
436 |
+
"text/plain": [
|
437 |
+
"tokenizer/vocab.json: 0%| | 0.00/1.06M [00:00<?, ?B/s]"
|
438 |
+
]
|
439 |
+
},
|
440 |
+
"metadata": {},
|
441 |
+
"output_type": "display_data"
|
442 |
+
},
|
443 |
+
{
|
444 |
+
"data": {
|
445 |
+
"application/vnd.jupyter.widget-view+json": {
|
446 |
+
"model_id": "d708968cc23d432189565f7daad39375",
|
447 |
+
"version_major": 2,
|
448 |
+
"version_minor": 0
|
449 |
+
},
|
450 |
+
"text/plain": [
|
451 |
+
"model-00001-of-00002.safetensors: 0%| | 0.00/4.99G [00:00<?, ?B/s]"
|
452 |
+
]
|
453 |
+
},
|
454 |
+
"metadata": {},
|
455 |
+
"output_type": "display_data"
|
456 |
+
},
|
457 |
+
{
|
458 |
+
"data": {
|
459 |
+
"application/vnd.jupyter.widget-view+json": {
|
460 |
+
"model_id": "fd95c41827ca40458f832d51f7756fa8",
|
461 |
+
"version_major": 2,
|
462 |
+
"version_minor": 0
|
463 |
+
},
|
464 |
+
"text/plain": [
|
465 |
+
"tokenizer_2/special_tokens_map.json: 0%| | 0.00/2.54k [00:00<?, ?B/s]"
|
466 |
+
]
|
467 |
+
},
|
468 |
+
"metadata": {},
|
469 |
+
"output_type": "display_data"
|
470 |
+
},
|
471 |
+
{
|
472 |
+
"data": {
|
473 |
+
"application/vnd.jupyter.widget-view+json": {
|
474 |
+
"model_id": "f0bfedb0f9b84265b8bd18de02d411c8",
|
475 |
+
"version_major": 2,
|
476 |
+
"version_minor": 0
|
477 |
+
},
|
478 |
+
"text/plain": [
|
479 |
+
"model-00002-of-00002.safetensors: 0%| | 0.00/4.53G [00:00<?, ?B/s]"
|
480 |
+
]
|
481 |
+
},
|
482 |
+
"metadata": {},
|
483 |
+
"output_type": "display_data"
|
484 |
+
},
|
485 |
+
{
|
486 |
+
"data": {
|
487 |
+
"application/vnd.jupyter.widget-view+json": {
|
488 |
+
"model_id": "4bdf545c6157435fbe8a801aa389fee9",
|
489 |
+
"version_major": 2,
|
490 |
+
"version_minor": 0
|
491 |
+
},
|
492 |
+
"text/plain": [
|
493 |
+
"spiece.model: 0%| | 0.00/792k [00:00<?, ?B/s]"
|
494 |
+
]
|
495 |
+
},
|
496 |
+
"metadata": {},
|
497 |
+
"output_type": "display_data"
|
498 |
+
},
|
499 |
+
{
|
500 |
+
"data": {
|
501 |
+
"application/vnd.jupyter.widget-view+json": {
|
502 |
+
"model_id": "f27c2bb1d8e549369d05d9f7cbb92971",
|
503 |
+
"version_major": 2,
|
504 |
+
"version_minor": 0
|
505 |
+
},
|
506 |
+
"text/plain": [
|
507 |
+
"tokenizer_2/tokenizer.json: 0%| | 0.00/2.42M [00:00<?, ?B/s]"
|
508 |
+
]
|
509 |
+
},
|
510 |
+
"metadata": {},
|
511 |
+
"output_type": "display_data"
|
512 |
+
},
|
513 |
+
{
|
514 |
+
"data": {
|
515 |
+
"application/vnd.jupyter.widget-view+json": {
|
516 |
+
"model_id": "e1b8efb017c8464b86632c9542fd70a0",
|
517 |
+
"version_major": 2,
|
518 |
+
"version_minor": 0
|
519 |
+
},
|
520 |
+
"text/plain": [
|
521 |
+
"transformer/config.json: 0%| | 0.00/378 [00:00<?, ?B/s]"
|
522 |
+
]
|
523 |
+
},
|
524 |
+
"metadata": {},
|
525 |
+
"output_type": "display_data"
|
526 |
+
},
|
527 |
+
{
|
528 |
+
"data": {
|
529 |
+
"application/vnd.jupyter.widget-view+json": {
|
530 |
+
"model_id": "46cf458c4adf406d9c5a2cfb27902971",
|
531 |
+
"version_major": 2,
|
532 |
+
"version_minor": 0
|
533 |
+
},
|
534 |
+
"text/plain": [
|
535 |
+
"tokenizer_2/tokenizer_config.json: 0%| | 0.00/20.8k [00:00<?, ?B/s]"
|
536 |
+
]
|
537 |
+
},
|
538 |
+
"metadata": {},
|
539 |
+
"output_type": "display_data"
|
540 |
+
},
|
541 |
+
{
|
542 |
+
"data": {
|
543 |
+
"application/vnd.jupyter.widget-view+json": {
|
544 |
+
"model_id": "40736f32d24b4ad38bb7df5db57c9536",
|
545 |
+
"version_major": 2,
|
546 |
+
"version_minor": 0
|
547 |
+
},
|
548 |
+
"text/plain": [
|
549 |
+
"(…)pytorch_model-00001-of-00003.safetensors: 0%| | 0.00/9.98G [00:00<?, ?B/s]"
|
550 |
+
]
|
551 |
+
},
|
552 |
+
"metadata": {},
|
553 |
+
"output_type": "display_data"
|
554 |
+
},
|
555 |
+
{
|
556 |
+
"data": {
|
557 |
+
"application/vnd.jupyter.widget-view+json": {
|
558 |
+
"model_id": "41b16c4865a241a6abb3d89a4c17696d",
|
559 |
+
"version_major": 2,
|
560 |
+
"version_minor": 0
|
561 |
+
},
|
562 |
+
"text/plain": [
|
563 |
+
"(…)pytorch_model-00002-of-00003.safetensors: 0%| | 0.00/9.95G [00:00<?, ?B/s]"
|
564 |
+
]
|
565 |
+
},
|
566 |
+
"metadata": {},
|
567 |
+
"output_type": "display_data"
|
568 |
+
},
|
569 |
+
{
|
570 |
+
"data": {
|
571 |
+
"application/vnd.jupyter.widget-view+json": {
|
572 |
+
"model_id": "95075fed8a1e4e428db8d271746f7dfe",
|
573 |
+
"version_major": 2,
|
574 |
+
"version_minor": 0
|
575 |
+
},
|
576 |
+
"text/plain": [
|
577 |
+
"(…)ion_pytorch_model.safetensors.index.json: 0%| | 0.00/121k [00:00<?, ?B/s]"
|
578 |
+
]
|
579 |
+
},
|
580 |
+
"metadata": {},
|
581 |
+
"output_type": "display_data"
|
582 |
+
},
|
583 |
+
{
|
584 |
+
"data": {
|
585 |
+
"application/vnd.jupyter.widget-view+json": {
|
586 |
+
"model_id": "5c60a31732b4497eb59826dd42cb023d",
|
587 |
+
"version_major": 2,
|
588 |
+
"version_minor": 0
|
589 |
+
},
|
590 |
+
"text/plain": [
|
591 |
+
"(…)pytorch_model-00003-of-00003.safetensors: 0%| | 0.00/3.87G [00:00<?, ?B/s]"
|
592 |
+
]
|
593 |
+
},
|
594 |
+
"metadata": {},
|
595 |
+
"output_type": "display_data"
|
596 |
+
},
|
597 |
+
{
|
598 |
+
"data": {
|
599 |
+
"application/vnd.jupyter.widget-view+json": {
|
600 |
+
"model_id": "f2dace42aaf943f98777fdfac15c0797",
|
601 |
+
"version_major": 2,
|
602 |
+
"version_minor": 0
|
603 |
+
},
|
604 |
+
"text/plain": [
|
605 |
+
"vae/config.json: 0%| | 0.00/820 [00:00<?, ?B/s]"
|
606 |
+
]
|
607 |
+
},
|
608 |
+
"metadata": {},
|
609 |
+
"output_type": "display_data"
|
610 |
+
},
|
611 |
+
{
|
612 |
+
"data": {
|
613 |
+
"application/vnd.jupyter.widget-view+json": {
|
614 |
+
"model_id": "72cf113565b84b55b053d6dd32ac88fc",
|
615 |
+
"version_major": 2,
|
616 |
+
"version_minor": 0
|
617 |
+
},
|
618 |
+
"text/plain": [
|
619 |
+
"diffusion_pytorch_model.safetensors: 0%| | 0.00/168M [00:00<?, ?B/s]"
|
620 |
+
]
|
621 |
+
},
|
622 |
+
"metadata": {},
|
623 |
+
"output_type": "display_data"
|
624 |
+
},
|
625 |
+
{
|
626 |
+
"data": {
|
627 |
+
"application/vnd.jupyter.widget-view+json": {
|
628 |
+
"model_id": "df785e1a4bf5456da2179e57790008a9",
|
629 |
+
"version_major": 2,
|
630 |
+
"version_minor": 0
|
631 |
+
},
|
632 |
+
"text/plain": [
|
633 |
+
"Loading pipeline components...: 0%| | 0/7 [00:00<?, ?it/s]"
|
634 |
+
]
|
635 |
+
},
|
636 |
+
"metadata": {},
|
637 |
+
"output_type": "display_data"
|
638 |
+
},
|
639 |
+
{
|
640 |
+
"name": "stderr",
|
641 |
+
"output_type": "stream",
|
642 |
+
"text": [
|
643 |
+
"You set `add_prefix_space`. The tokenizer needs to be converted from the slow tokenizers\n"
|
644 |
+
]
|
645 |
+
},
|
646 |
+
{
|
647 |
+
"data": {
|
648 |
+
"application/vnd.jupyter.widget-view+json": {
|
649 |
+
"model_id": "d39c297447c14cb1a4639efa26ac6828",
|
650 |
+
"version_major": 2,
|
651 |
+
"version_minor": 0
|
652 |
+
},
|
653 |
+
"text/plain": [
|
654 |
+
"Loading checkpoint shards: 0%| | 0/2 [00:00<?, ?it/s]"
|
655 |
+
]
|
656 |
+
},
|
657 |
+
"metadata": {},
|
658 |
+
"output_type": "display_data"
|
659 |
+
}
|
660 |
+
],
|
661 |
+
"source": [
|
662 |
+
"import torch\n",
|
663 |
+
"from diffusers import FluxPipeline\n",
|
664 |
+
"\n",
|
665 |
+
"flux_dev_pipe = FluxPipeline.from_pretrained(\"black-forest-labs/FLUX.1-dev\", cache_dir=\".\", torch_dtype=torch.bfloat16, force_download=True).to(\"cuda\")"
|
666 |
+
]
|
667 |
+
},
|
668 |
+
{
|
669 |
+
"cell_type": "markdown",
|
670 |
+
"id": "5e88a8b3-da8d-4090-b52e-c5f22924eb91",
|
671 |
+
"metadata": {},
|
672 |
+
"source": [
|
673 |
+
"### 2500 steps"
|
674 |
+
]
|
675 |
+
},
|
676 |
+
{
|
677 |
+
"cell_type": "code",
|
678 |
+
"execution_count": 5,
|
679 |
+
"id": "3b059ea0-4e50-46b9-99ba-dc7b8f7d9582",
|
680 |
+
"metadata": {
|
681 |
+
"scrolled": true
|
682 |
+
},
|
683 |
+
"outputs": [
|
684 |
+
{
|
685 |
+
"data": {
|
686 |
+
"text/plain": [
|
687 |
+
"FluxPipeline {\n",
|
688 |
+
" \"_class_name\": \"FluxPipeline\",\n",
|
689 |
+
" \"_diffusers_version\": \"0.32.1\",\n",
|
690 |
+
" \"_name_or_path\": \"black-forest-labs/FLUX.1-dev\",\n",
|
691 |
+
" \"feature_extractor\": [\n",
|
692 |
+
" null,\n",
|
693 |
+
" null\n",
|
694 |
+
" ],\n",
|
695 |
+
" \"image_encoder\": [\n",
|
696 |
+
" null,\n",
|
697 |
+
" null\n",
|
698 |
+
" ],\n",
|
699 |
+
" \"scheduler\": [\n",
|
700 |
+
" \"diffusers\",\n",
|
701 |
+
" \"FlowMatchEulerDiscreteScheduler\"\n",
|
702 |
+
" ],\n",
|
703 |
+
" \"text_encoder\": [\n",
|
704 |
+
" \"transformers\",\n",
|
705 |
+
" \"CLIPTextModel\"\n",
|
706 |
+
" ],\n",
|
707 |
+
" \"text_encoder_2\": [\n",
|
708 |
+
" \"transformers\",\n",
|
709 |
+
" \"T5EncoderModel\"\n",
|
710 |
+
" ],\n",
|
711 |
+
" \"tokenizer\": [\n",
|
712 |
+
" \"transformers\",\n",
|
713 |
+
" \"CLIPTokenizer\"\n",
|
714 |
+
" ],\n",
|
715 |
+
" \"tokenizer_2\": [\n",
|
716 |
+
" \"transformers\",\n",
|
717 |
+
" \"T5TokenizerFast\"\n",
|
718 |
+
" ],\n",
|
719 |
+
" \"transformer\": [\n",
|
720 |
+
" \"diffusers\",\n",
|
721 |
+
" \"FluxTransformer2DModel\"\n",
|
722 |
+
" ],\n",
|
723 |
+
" \"vae\": [\n",
|
724 |
+
" \"diffusers\",\n",
|
725 |
+
" \"AutoencoderKL\"\n",
|
726 |
+
" ]\n",
|
727 |
+
"}"
|
728 |
+
]
|
729 |
+
},
|
730 |
+
"execution_count": 5,
|
731 |
+
"metadata": {},
|
732 |
+
"output_type": "execute_result"
|
733 |
+
}
|
734 |
+
],
|
735 |
+
"source": [
|
736 |
+
"lora_path = \"/workspace/taylor-rank16-multi-1e-4-constant/checkpoint-2500/pytorch_lora_weights.safetensors\"\n",
|
737 |
+
"flux_dev_pipe.load_lora_weights(lora_path)\n",
|
738 |
+
"flux_dev_pipe.to(\"cuda\")"
|
739 |
+
]
|
740 |
+
},
|
741 |
+
{
|
742 |
+
"cell_type": "code",
|
743 |
+
"execution_count": 6,
|
744 |
+
"id": "f6490810-f598-4b3d-9748-2895dbfc4409",
|
745 |
+
"metadata": {
|
746 |
+
"scrolled": true
|
747 |
+
},
|
748 |
+
"outputs": [
|
749 |
+
{
|
750 |
+
"name": "stdout",
|
751 |
+
"output_type": "stream",
|
752 |
+
"text": [
|
753 |
+
"Generating images for prompt 1/10: Close up photo of rwx woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\n"
|
754 |
+
]
|
755 |
+
},
|
756 |
+
{
|
757 |
+
"data": {
|
758 |
+
"application/vnd.jupyter.widget-view+json": {
|
759 |
+
"model_id": "b15de8a62a0f4d9595d4d972e84722a1",
|
760 |
+
"version_major": 2,
|
761 |
+
"version_minor": 0
|
762 |
+
},
|
763 |
+
"text/plain": [
|
764 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
765 |
+
]
|
766 |
+
},
|
767 |
+
"metadata": {},
|
768 |
+
"output_type": "display_data"
|
769 |
+
},
|
770 |
+
{
|
771 |
+
"name": "stdout",
|
772 |
+
"output_type": "stream",
|
773 |
+
"text": [
|
774 |
+
"Generating images for prompt 2/10: Close up photo of rwx woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\n"
|
775 |
+
]
|
776 |
+
},
|
777 |
+
{
|
778 |
+
"data": {
|
779 |
+
"application/vnd.jupyter.widget-view+json": {
|
780 |
+
"model_id": "be0975dc87c647448f1aef01148a83db",
|
781 |
+
"version_major": 2,
|
782 |
+
"version_minor": 0
|
783 |
+
},
|
784 |
+
"text/plain": [
|
785 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
786 |
+
]
|
787 |
+
},
|
788 |
+
"metadata": {},
|
789 |
+
"output_type": "display_data"
|
790 |
+
},
|
791 |
+
{
|
792 |
+
"name": "stdout",
|
793 |
+
"output_type": "stream",
|
794 |
+
"text": [
|
795 |
+
"Generating images for prompt 3/10: Close up photo of rwx woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\n"
|
796 |
+
]
|
797 |
+
},
|
798 |
+
{
|
799 |
+
"data": {
|
800 |
+
"application/vnd.jupyter.widget-view+json": {
|
801 |
+
"model_id": "2267bcb8446148c9b5eb5e5b4a45e8f0",
|
802 |
+
"version_major": 2,
|
803 |
+
"version_minor": 0
|
804 |
+
},
|
805 |
+
"text/plain": [
|
806 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
807 |
+
]
|
808 |
+
},
|
809 |
+
"metadata": {},
|
810 |
+
"output_type": "display_data"
|
811 |
+
},
|
812 |
+
{
|
813 |
+
"name": "stdout",
|
814 |
+
"output_type": "stream",
|
815 |
+
"text": [
|
816 |
+
"Generating images for prompt 4/10: Close up photo of rwx woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\n"
|
817 |
+
]
|
818 |
+
},
|
819 |
+
{
|
820 |
+
"data": {
|
821 |
+
"application/vnd.jupyter.widget-view+json": {
|
822 |
+
"model_id": "1e35a85110924cf099df9c133fa7c955",
|
823 |
+
"version_major": 2,
|
824 |
+
"version_minor": 0
|
825 |
+
},
|
826 |
+
"text/plain": [
|
827 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
828 |
+
]
|
829 |
+
},
|
830 |
+
"metadata": {},
|
831 |
+
"output_type": "display_data"
|
832 |
+
},
|
833 |
+
{
|
834 |
+
"name": "stdout",
|
835 |
+
"output_type": "stream",
|
836 |
+
"text": [
|
837 |
+
"Generating images for prompt 5/10: Medium shot photo of rwx woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\n"
|
838 |
+
]
|
839 |
+
},
|
840 |
+
{
|
841 |
+
"data": {
|
842 |
+
"application/vnd.jupyter.widget-view+json": {
|
843 |
+
"model_id": "444c17c374de4b45a4397f7e6df8ddc4",
|
844 |
+
"version_major": 2,
|
845 |
+
"version_minor": 0
|
846 |
+
},
|
847 |
+
"text/plain": [
|
848 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
849 |
+
]
|
850 |
+
},
|
851 |
+
"metadata": {},
|
852 |
+
"output_type": "display_data"
|
853 |
+
},
|
854 |
+
{
|
855 |
+
"name": "stdout",
|
856 |
+
"output_type": "stream",
|
857 |
+
"text": [
|
858 |
+
"Generating images for prompt 6/10: Medium shot photo of rwx woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\n"
|
859 |
+
]
|
860 |
+
},
|
861 |
+
{
|
862 |
+
"data": {
|
863 |
+
"application/vnd.jupyter.widget-view+json": {
|
864 |
+
"model_id": "d5a6938e5bb442b191539f5e4e6500ba",
|
865 |
+
"version_major": 2,
|
866 |
+
"version_minor": 0
|
867 |
+
},
|
868 |
+
"text/plain": [
|
869 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
870 |
+
]
|
871 |
+
},
|
872 |
+
"metadata": {},
|
873 |
+
"output_type": "display_data"
|
874 |
+
},
|
875 |
+
{
|
876 |
+
"name": "stdout",
|
877 |
+
"output_type": "stream",
|
878 |
+
"text": [
|
879 |
+
"Generating images for prompt 7/10: Medium shot photo of rwx woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\n"
|
880 |
+
]
|
881 |
+
},
|
882 |
+
{
|
883 |
+
"data": {
|
884 |
+
"application/vnd.jupyter.widget-view+json": {
|
885 |
+
"model_id": "8b1778fa30a242dc9649af2bf47808c7",
|
886 |
+
"version_major": 2,
|
887 |
+
"version_minor": 0
|
888 |
+
},
|
889 |
+
"text/plain": [
|
890 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
891 |
+
]
|
892 |
+
},
|
893 |
+
"metadata": {},
|
894 |
+
"output_type": "display_data"
|
895 |
+
},
|
896 |
+
{
|
897 |
+
"name": "stdout",
|
898 |
+
"output_type": "stream",
|
899 |
+
"text": [
|
900 |
+
"Generating images for prompt 8/10: Full shot photo of rwx woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\n"
|
901 |
+
]
|
902 |
+
},
|
903 |
+
{
|
904 |
+
"data": {
|
905 |
+
"application/vnd.jupyter.widget-view+json": {
|
906 |
+
"model_id": "a46513e141c24b9ba994f41524b864bc",
|
907 |
+
"version_major": 2,
|
908 |
+
"version_minor": 0
|
909 |
+
},
|
910 |
+
"text/plain": [
|
911 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
912 |
+
]
|
913 |
+
},
|
914 |
+
"metadata": {},
|
915 |
+
"output_type": "display_data"
|
916 |
+
},
|
917 |
+
{
|
918 |
+
"name": "stdout",
|
919 |
+
"output_type": "stream",
|
920 |
+
"text": [
|
921 |
+
"Generating images for prompt 9/10: Full shot photo of rwx woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\n"
|
922 |
+
]
|
923 |
+
},
|
924 |
+
{
|
925 |
+
"data": {
|
926 |
+
"application/vnd.jupyter.widget-view+json": {
|
927 |
+
"model_id": "a7af347a813946299b945bde3bfcde48",
|
928 |
+
"version_major": 2,
|
929 |
+
"version_minor": 0
|
930 |
+
},
|
931 |
+
"text/plain": [
|
932 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
933 |
+
]
|
934 |
+
},
|
935 |
+
"metadata": {},
|
936 |
+
"output_type": "display_data"
|
937 |
+
},
|
938 |
+
{
|
939 |
+
"name": "stdout",
|
940 |
+
"output_type": "stream",
|
941 |
+
"text": [
|
942 |
+
"Generating images for prompt 10/10: Full shot photo of rwx woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\n"
|
943 |
+
]
|
944 |
+
},
|
945 |
+
{
|
946 |
+
"data": {
|
947 |
+
"application/vnd.jupyter.widget-view+json": {
|
948 |
+
"model_id": "1a4b779ea0704ad7b148a65c09945dab",
|
949 |
+
"version_major": 2,
|
950 |
+
"version_minor": 0
|
951 |
+
},
|
952 |
+
"text/plain": [
|
953 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
954 |
+
]
|
955 |
+
},
|
956 |
+
"metadata": {},
|
957 |
+
"output_type": "display_data"
|
958 |
+
}
|
959 |
+
],
|
960 |
+
"source": [
|
961 |
+
"prompts = [\n",
|
962 |
+
" \"Close up photo of rwx woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\",\n",
|
963 |
+
" \"Close up photo of rwx woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\",\n",
|
964 |
+
" \"Close up photo of rwx woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\",\n",
|
965 |
+
" \"Close up photo of rwx woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\",\n",
|
966 |
+
" \"Medium shot photo of rwx woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\",\n",
|
967 |
+
" \"Medium shot photo of rwx woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\",\n",
|
968 |
+
" \"Medium shot photo of rwx woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\",\n",
|
969 |
+
" \"Full shot photo of rwx woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\",\n",
|
970 |
+
" \"Full shot photo of rwx woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\",\n",
|
971 |
+
" \"Full shot photo of rwx woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\"\n",
|
972 |
+
"]\n",
|
973 |
+
"\n",
|
974 |
+
"save_dir = \"taylor_lora_2500steps_generated_images\"\n",
|
975 |
+
"for i, prompt in enumerate(prompts):\n",
|
976 |
+
" print(f\"Generating images for prompt {i+1}/{len(prompts)}: {prompt}\")\n",
|
977 |
+
" images = flux_dev_pipe(prompt, \n",
|
978 |
+
" num_inference_steps=35, \n",
|
979 |
+
" num_images_per_prompt=1, \n",
|
980 |
+
" width=1024,\n",
|
981 |
+
" height=1024,\n",
|
982 |
+
" guidance_scale=3.5,\n",
|
983 |
+
" generator=torch.Generator(\"cpu\").manual_seed(1024)).images\n",
|
984 |
+
"\n",
|
985 |
+
" if not os.path.exists(save_dir):\n",
|
986 |
+
" os.makedirs(save_dir)\n",
|
987 |
+
" \n",
|
988 |
+
" images[0].save(f\"{save_dir}/prompt_{i+1}.jpg\")"
|
989 |
+
]
|
990 |
+
},
|
991 |
+
{
|
992 |
+
"cell_type": "markdown",
|
993 |
+
"id": "e577d171-79d7-4a91-8cea-8327acc584df",
|
994 |
+
"metadata": {},
|
995 |
+
"source": [
|
996 |
+
"### 2000 steps"
|
997 |
+
]
|
998 |
+
},
|
999 |
+
{
|
1000 |
+
"cell_type": "code",
|
1001 |
+
"execution_count": 7,
|
1002 |
+
"id": "1dd352b6-d0b8-41b8-a38d-503cb8db9ea5",
|
1003 |
+
"metadata": {
|
1004 |
+
"scrolled": true
|
1005 |
+
},
|
1006 |
+
"outputs": [],
|
1007 |
+
"source": [
|
1008 |
+
"flux_dev_pipe.fuse_lora(lora_scale=0)"
|
1009 |
+
]
|
1010 |
+
},
|
1011 |
+
{
|
1012 |
+
"cell_type": "code",
|
1013 |
+
"execution_count": 8,
|
1014 |
+
"id": "2f79cdf8-a39a-4a22-93b6-d83fd0182a79",
|
1015 |
+
"metadata": {
|
1016 |
+
"scrolled": true
|
1017 |
+
},
|
1018 |
+
"outputs": [
|
1019 |
+
{
|
1020 |
+
"name": "stderr",
|
1021 |
+
"output_type": "stream",
|
1022 |
+
"text": [
|
1023 |
+
"/usr/local/lib/python3.10/dist-packages/peft/tuners/lora/model.py:431: UserWarning: Adapter cannot be set when the model is merged. Unmerging the model first.\n",
|
1024 |
+
" warnings.warn(\"Adapter cannot be set when the model is merged. Unmerging the model first.\")\n"
|
1025 |
+
]
|
1026 |
+
},
|
1027 |
+
{
|
1028 |
+
"data": {
|
1029 |
+
"text/plain": [
|
1030 |
+
"FluxPipeline {\n",
|
1031 |
+
" \"_class_name\": \"FluxPipeline\",\n",
|
1032 |
+
" \"_diffusers_version\": \"0.32.1\",\n",
|
1033 |
+
" \"_name_or_path\": \"black-forest-labs/FLUX.1-dev\",\n",
|
1034 |
+
" \"feature_extractor\": [\n",
|
1035 |
+
" null,\n",
|
1036 |
+
" null\n",
|
1037 |
+
" ],\n",
|
1038 |
+
" \"image_encoder\": [\n",
|
1039 |
+
" null,\n",
|
1040 |
+
" null\n",
|
1041 |
+
" ],\n",
|
1042 |
+
" \"scheduler\": [\n",
|
1043 |
+
" \"diffusers\",\n",
|
1044 |
+
" \"FlowMatchEulerDiscreteScheduler\"\n",
|
1045 |
+
" ],\n",
|
1046 |
+
" \"text_encoder\": [\n",
|
1047 |
+
" \"transformers\",\n",
|
1048 |
+
" \"CLIPTextModel\"\n",
|
1049 |
+
" ],\n",
|
1050 |
+
" \"text_encoder_2\": [\n",
|
1051 |
+
" \"transformers\",\n",
|
1052 |
+
" \"T5EncoderModel\"\n",
|
1053 |
+
" ],\n",
|
1054 |
+
" \"tokenizer\": [\n",
|
1055 |
+
" \"transformers\",\n",
|
1056 |
+
" \"CLIPTokenizer\"\n",
|
1057 |
+
" ],\n",
|
1058 |
+
" \"tokenizer_2\": [\n",
|
1059 |
+
" \"transformers\",\n",
|
1060 |
+
" \"T5TokenizerFast\"\n",
|
1061 |
+
" ],\n",
|
1062 |
+
" \"transformer\": [\n",
|
1063 |
+
" \"diffusers\",\n",
|
1064 |
+
" \"FluxTransformer2DModel\"\n",
|
1065 |
+
" ],\n",
|
1066 |
+
" \"vae\": [\n",
|
1067 |
+
" \"diffusers\",\n",
|
1068 |
+
" \"AutoencoderKL\"\n",
|
1069 |
+
" ]\n",
|
1070 |
+
"}"
|
1071 |
+
]
|
1072 |
+
},
|
1073 |
+
"execution_count": 8,
|
1074 |
+
"metadata": {},
|
1075 |
+
"output_type": "execute_result"
|
1076 |
+
}
|
1077 |
+
],
|
1078 |
+
"source": [
|
1079 |
+
"lora_path = \"/workspace/taylor-rank16-multi-1e-4-constant/checkpoint-2000/pytorch_lora_weights.safetensors\"\n",
|
1080 |
+
"flux_dev_pipe.load_lora_weights(lora_path)\n",
|
1081 |
+
"flux_dev_pipe.to(\"cuda\")"
|
1082 |
+
]
|
1083 |
+
},
|
1084 |
+
{
|
1085 |
+
"cell_type": "code",
|
1086 |
+
"execution_count": 9,
|
1087 |
+
"id": "4d14fb44-106c-4225-848f-c79da7c2d725",
|
1088 |
+
"metadata": {
|
1089 |
+
"scrolled": true
|
1090 |
+
},
|
1091 |
+
"outputs": [
|
1092 |
+
{
|
1093 |
+
"name": "stdout",
|
1094 |
+
"output_type": "stream",
|
1095 |
+
"text": [
|
1096 |
+
"Generating images for prompt 1/10: Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\n"
|
1097 |
+
]
|
1098 |
+
},
|
1099 |
+
{
|
1100 |
+
"data": {
|
1101 |
+
"application/vnd.jupyter.widget-view+json": {
|
1102 |
+
"model_id": "f2e191d21daf4cd9a67b055274b85a60",
|
1103 |
+
"version_major": 2,
|
1104 |
+
"version_minor": 0
|
1105 |
+
},
|
1106 |
+
"text/plain": [
|
1107 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1108 |
+
]
|
1109 |
+
},
|
1110 |
+
"metadata": {},
|
1111 |
+
"output_type": "display_data"
|
1112 |
+
},
|
1113 |
+
{
|
1114 |
+
"name": "stdout",
|
1115 |
+
"output_type": "stream",
|
1116 |
+
"text": [
|
1117 |
+
"Generating images for prompt 2/10: Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\n"
|
1118 |
+
]
|
1119 |
+
},
|
1120 |
+
{
|
1121 |
+
"data": {
|
1122 |
+
"application/vnd.jupyter.widget-view+json": {
|
1123 |
+
"model_id": "60394f15302e486f88f41af5257621c4",
|
1124 |
+
"version_major": 2,
|
1125 |
+
"version_minor": 0
|
1126 |
+
},
|
1127 |
+
"text/plain": [
|
1128 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1129 |
+
]
|
1130 |
+
},
|
1131 |
+
"metadata": {},
|
1132 |
+
"output_type": "display_data"
|
1133 |
+
},
|
1134 |
+
{
|
1135 |
+
"name": "stdout",
|
1136 |
+
"output_type": "stream",
|
1137 |
+
"text": [
|
1138 |
+
"Generating images for prompt 3/10: Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\n"
|
1139 |
+
]
|
1140 |
+
},
|
1141 |
+
{
|
1142 |
+
"data": {
|
1143 |
+
"application/vnd.jupyter.widget-view+json": {
|
1144 |
+
"model_id": "8600b4419476493f96ef0ed7d87e3663",
|
1145 |
+
"version_major": 2,
|
1146 |
+
"version_minor": 0
|
1147 |
+
},
|
1148 |
+
"text/plain": [
|
1149 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1150 |
+
]
|
1151 |
+
},
|
1152 |
+
"metadata": {},
|
1153 |
+
"output_type": "display_data"
|
1154 |
+
},
|
1155 |
+
{
|
1156 |
+
"name": "stdout",
|
1157 |
+
"output_type": "stream",
|
1158 |
+
"text": [
|
1159 |
+
"Generating images for prompt 4/10: Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\n"
|
1160 |
+
]
|
1161 |
+
},
|
1162 |
+
{
|
1163 |
+
"data": {
|
1164 |
+
"application/vnd.jupyter.widget-view+json": {
|
1165 |
+
"model_id": "045342b2c9684dbe8e184c679eb4cf8c",
|
1166 |
+
"version_major": 2,
|
1167 |
+
"version_minor": 0
|
1168 |
+
},
|
1169 |
+
"text/plain": [
|
1170 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1171 |
+
]
|
1172 |
+
},
|
1173 |
+
"metadata": {},
|
1174 |
+
"output_type": "display_data"
|
1175 |
+
},
|
1176 |
+
{
|
1177 |
+
"name": "stdout",
|
1178 |
+
"output_type": "stream",
|
1179 |
+
"text": [
|
1180 |
+
"Generating images for prompt 5/10: Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\n"
|
1181 |
+
]
|
1182 |
+
},
|
1183 |
+
{
|
1184 |
+
"data": {
|
1185 |
+
"application/vnd.jupyter.widget-view+json": {
|
1186 |
+
"model_id": "3b546d949fac4659ba3457782e2156a6",
|
1187 |
+
"version_major": 2,
|
1188 |
+
"version_minor": 0
|
1189 |
+
},
|
1190 |
+
"text/plain": [
|
1191 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1192 |
+
]
|
1193 |
+
},
|
1194 |
+
"metadata": {},
|
1195 |
+
"output_type": "display_data"
|
1196 |
+
},
|
1197 |
+
{
|
1198 |
+
"name": "stdout",
|
1199 |
+
"output_type": "stream",
|
1200 |
+
"text": [
|
1201 |
+
"Generating images for prompt 6/10: Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\n"
|
1202 |
+
]
|
1203 |
+
},
|
1204 |
+
{
|
1205 |
+
"data": {
|
1206 |
+
"application/vnd.jupyter.widget-view+json": {
|
1207 |
+
"model_id": "e6a5f678e3ed41a7a80bfd4c13f5020e",
|
1208 |
+
"version_major": 2,
|
1209 |
+
"version_minor": 0
|
1210 |
+
},
|
1211 |
+
"text/plain": [
|
1212 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1213 |
+
]
|
1214 |
+
},
|
1215 |
+
"metadata": {},
|
1216 |
+
"output_type": "display_data"
|
1217 |
+
},
|
1218 |
+
{
|
1219 |
+
"name": "stdout",
|
1220 |
+
"output_type": "stream",
|
1221 |
+
"text": [
|
1222 |
+
"Generating images for prompt 7/10: Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\n"
|
1223 |
+
]
|
1224 |
+
},
|
1225 |
+
{
|
1226 |
+
"data": {
|
1227 |
+
"application/vnd.jupyter.widget-view+json": {
|
1228 |
+
"model_id": "cf781fda68084775a7722256f32bebcc",
|
1229 |
+
"version_major": 2,
|
1230 |
+
"version_minor": 0
|
1231 |
+
},
|
1232 |
+
"text/plain": [
|
1233 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1234 |
+
]
|
1235 |
+
},
|
1236 |
+
"metadata": {},
|
1237 |
+
"output_type": "display_data"
|
1238 |
+
},
|
1239 |
+
{
|
1240 |
+
"name": "stdout",
|
1241 |
+
"output_type": "stream",
|
1242 |
+
"text": [
|
1243 |
+
"Generating images for prompt 8/10: Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\n"
|
1244 |
+
]
|
1245 |
+
},
|
1246 |
+
{
|
1247 |
+
"data": {
|
1248 |
+
"application/vnd.jupyter.widget-view+json": {
|
1249 |
+
"model_id": "dd43e6cd2ad3464ea2cc0bd6fd15f7db",
|
1250 |
+
"version_major": 2,
|
1251 |
+
"version_minor": 0
|
1252 |
+
},
|
1253 |
+
"text/plain": [
|
1254 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1255 |
+
]
|
1256 |
+
},
|
1257 |
+
"metadata": {},
|
1258 |
+
"output_type": "display_data"
|
1259 |
+
},
|
1260 |
+
{
|
1261 |
+
"name": "stdout",
|
1262 |
+
"output_type": "stream",
|
1263 |
+
"text": [
|
1264 |
+
"Generating images for prompt 9/10: Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\n"
|
1265 |
+
]
|
1266 |
+
},
|
1267 |
+
{
|
1268 |
+
"data": {
|
1269 |
+
"application/vnd.jupyter.widget-view+json": {
|
1270 |
+
"model_id": "740d1fb40b404d07b65aae7844ecb8f3",
|
1271 |
+
"version_major": 2,
|
1272 |
+
"version_minor": 0
|
1273 |
+
},
|
1274 |
+
"text/plain": [
|
1275 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1276 |
+
]
|
1277 |
+
},
|
1278 |
+
"metadata": {},
|
1279 |
+
"output_type": "display_data"
|
1280 |
+
},
|
1281 |
+
{
|
1282 |
+
"name": "stdout",
|
1283 |
+
"output_type": "stream",
|
1284 |
+
"text": [
|
1285 |
+
"Generating images for prompt 10/10: Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\n"
|
1286 |
+
]
|
1287 |
+
},
|
1288 |
+
{
|
1289 |
+
"data": {
|
1290 |
+
"application/vnd.jupyter.widget-view+json": {
|
1291 |
+
"model_id": "e13432e9b2ac48ca9d963a0155822203",
|
1292 |
+
"version_major": 2,
|
1293 |
+
"version_minor": 0
|
1294 |
+
},
|
1295 |
+
"text/plain": [
|
1296 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1297 |
+
]
|
1298 |
+
},
|
1299 |
+
"metadata": {},
|
1300 |
+
"output_type": "display_data"
|
1301 |
+
}
|
1302 |
+
],
|
1303 |
+
"source": [
|
1304 |
+
"prompts = [\n",
|
1305 |
+
" \"Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\",\n",
|
1306 |
+
" \"Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\",\n",
|
1307 |
+
" \"Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\",\n",
|
1308 |
+
" \"Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\",\n",
|
1309 |
+
" \"Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\",\n",
|
1310 |
+
" \"Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\",\n",
|
1311 |
+
" \"Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\",\n",
|
1312 |
+
" \"Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\",\n",
|
1313 |
+
" \"Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\",\n",
|
1314 |
+
" \"Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\"\n",
|
1315 |
+
"]\n",
|
1316 |
+
"\n",
|
1317 |
+
"save_dir = \"lora_2000steps_generated_images\"\n",
|
1318 |
+
"for i, prompt in enumerate(prompts):\n",
|
1319 |
+
" print(f\"Generating images for prompt {i+1}/{len(prompts)}: {prompt}\")\n",
|
1320 |
+
" images = flux_dev_pipe(prompt, \n",
|
1321 |
+
" num_inference_steps=35, \n",
|
1322 |
+
" num_images_per_prompt=1, \n",
|
1323 |
+
" width=1024,\n",
|
1324 |
+
" height=1024,\n",
|
1325 |
+
" guidance_scale=3.5,\n",
|
1326 |
+
" generator=torch.Generator(\"cpu\").manual_seed(1024)).images\n",
|
1327 |
+
"\n",
|
1328 |
+
" if not os.path.exists(save_dir):\n",
|
1329 |
+
" os.makedirs(save_dir)\n",
|
1330 |
+
" \n",
|
1331 |
+
" images[0].save(f\"{save_dir}/prompt_{i+1}.jpg\")"
|
1332 |
+
]
|
1333 |
+
},
|
1334 |
+
{
|
1335 |
+
"cell_type": "markdown",
|
1336 |
+
"id": "79844ea2-e27a-4043-8f71-1f21ed14f16d",
|
1337 |
+
"metadata": {},
|
1338 |
+
"source": [
|
1339 |
+
"### 1500 steps"
|
1340 |
+
]
|
1341 |
+
},
|
1342 |
+
{
|
1343 |
+
"cell_type": "code",
|
1344 |
+
"execution_count": 10,
|
1345 |
+
"id": "270fcbfc-72d2-4655-9407-2162c3d16df4",
|
1346 |
+
"metadata": {},
|
1347 |
+
"outputs": [],
|
1348 |
+
"source": [
|
1349 |
+
"flux_dev_pipe.fuse_lora(lora_scale=0)"
|
1350 |
+
]
|
1351 |
+
},
|
1352 |
+
{
|
1353 |
+
"cell_type": "code",
|
1354 |
+
"execution_count": 11,
|
1355 |
+
"id": "cc6eea5b-8811-455a-b9bb-bff5a5f0326e",
|
1356 |
+
"metadata": {
|
1357 |
+
"scrolled": true
|
1358 |
+
},
|
1359 |
+
"outputs": [
|
1360 |
+
{
|
1361 |
+
"data": {
|
1362 |
+
"text/plain": [
|
1363 |
+
"FluxPipeline {\n",
|
1364 |
+
" \"_class_name\": \"FluxPipeline\",\n",
|
1365 |
+
" \"_diffusers_version\": \"0.32.1\",\n",
|
1366 |
+
" \"_name_or_path\": \"black-forest-labs/FLUX.1-dev\",\n",
|
1367 |
+
" \"feature_extractor\": [\n",
|
1368 |
+
" null,\n",
|
1369 |
+
" null\n",
|
1370 |
+
" ],\n",
|
1371 |
+
" \"image_encoder\": [\n",
|
1372 |
+
" null,\n",
|
1373 |
+
" null\n",
|
1374 |
+
" ],\n",
|
1375 |
+
" \"scheduler\": [\n",
|
1376 |
+
" \"diffusers\",\n",
|
1377 |
+
" \"FlowMatchEulerDiscreteScheduler\"\n",
|
1378 |
+
" ],\n",
|
1379 |
+
" \"text_encoder\": [\n",
|
1380 |
+
" \"transformers\",\n",
|
1381 |
+
" \"CLIPTextModel\"\n",
|
1382 |
+
" ],\n",
|
1383 |
+
" \"text_encoder_2\": [\n",
|
1384 |
+
" \"transformers\",\n",
|
1385 |
+
" \"T5EncoderModel\"\n",
|
1386 |
+
" ],\n",
|
1387 |
+
" \"tokenizer\": [\n",
|
1388 |
+
" \"transformers\",\n",
|
1389 |
+
" \"CLIPTokenizer\"\n",
|
1390 |
+
" ],\n",
|
1391 |
+
" \"tokenizer_2\": [\n",
|
1392 |
+
" \"transformers\",\n",
|
1393 |
+
" \"T5TokenizerFast\"\n",
|
1394 |
+
" ],\n",
|
1395 |
+
" \"transformer\": [\n",
|
1396 |
+
" \"diffusers\",\n",
|
1397 |
+
" \"FluxTransformer2DModel\"\n",
|
1398 |
+
" ],\n",
|
1399 |
+
" \"vae\": [\n",
|
1400 |
+
" \"diffusers\",\n",
|
1401 |
+
" \"AutoencoderKL\"\n",
|
1402 |
+
" ]\n",
|
1403 |
+
"}"
|
1404 |
+
]
|
1405 |
+
},
|
1406 |
+
"execution_count": 11,
|
1407 |
+
"metadata": {},
|
1408 |
+
"output_type": "execute_result"
|
1409 |
+
}
|
1410 |
+
],
|
1411 |
+
"source": [
|
1412 |
+
"lora_path = \"/workspace/taylor-rank16-multi-1e-4-constant/checkpoint-1500/pytorch_lora_weights.safetensors\"\n",
|
1413 |
+
"flux_dev_pipe.load_lora_weights(lora_path)\n",
|
1414 |
+
"flux_dev_pipe.to(\"cuda\")"
|
1415 |
+
]
|
1416 |
+
},
|
1417 |
+
{
|
1418 |
+
"cell_type": "code",
|
1419 |
+
"execution_count": 12,
|
1420 |
+
"id": "9dfb7f4c-aeaf-4ec8-a227-fbecded489c3",
|
1421 |
+
"metadata": {
|
1422 |
+
"scrolled": true
|
1423 |
+
},
|
1424 |
+
"outputs": [
|
1425 |
+
{
|
1426 |
+
"name": "stdout",
|
1427 |
+
"output_type": "stream",
|
1428 |
+
"text": [
|
1429 |
+
"Generating images for prompt 1/10: Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\n"
|
1430 |
+
]
|
1431 |
+
},
|
1432 |
+
{
|
1433 |
+
"data": {
|
1434 |
+
"application/vnd.jupyter.widget-view+json": {
|
1435 |
+
"model_id": "33b2a3017a63415e94020620e969f868",
|
1436 |
+
"version_major": 2,
|
1437 |
+
"version_minor": 0
|
1438 |
+
},
|
1439 |
+
"text/plain": [
|
1440 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1441 |
+
]
|
1442 |
+
},
|
1443 |
+
"metadata": {},
|
1444 |
+
"output_type": "display_data"
|
1445 |
+
},
|
1446 |
+
{
|
1447 |
+
"name": "stdout",
|
1448 |
+
"output_type": "stream",
|
1449 |
+
"text": [
|
1450 |
+
"Generating images for prompt 2/10: Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\n"
|
1451 |
+
]
|
1452 |
+
},
|
1453 |
+
{
|
1454 |
+
"data": {
|
1455 |
+
"application/vnd.jupyter.widget-view+json": {
|
1456 |
+
"model_id": "62910d8d8bee4b1bb0ed5dcc8d9ce933",
|
1457 |
+
"version_major": 2,
|
1458 |
+
"version_minor": 0
|
1459 |
+
},
|
1460 |
+
"text/plain": [
|
1461 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1462 |
+
]
|
1463 |
+
},
|
1464 |
+
"metadata": {},
|
1465 |
+
"output_type": "display_data"
|
1466 |
+
},
|
1467 |
+
{
|
1468 |
+
"name": "stdout",
|
1469 |
+
"output_type": "stream",
|
1470 |
+
"text": [
|
1471 |
+
"Generating images for prompt 3/10: Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\n"
|
1472 |
+
]
|
1473 |
+
},
|
1474 |
+
{
|
1475 |
+
"data": {
|
1476 |
+
"application/vnd.jupyter.widget-view+json": {
|
1477 |
+
"model_id": "938be427eeb04a37bb699f48786787c3",
|
1478 |
+
"version_major": 2,
|
1479 |
+
"version_minor": 0
|
1480 |
+
},
|
1481 |
+
"text/plain": [
|
1482 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1483 |
+
]
|
1484 |
+
},
|
1485 |
+
"metadata": {},
|
1486 |
+
"output_type": "display_data"
|
1487 |
+
},
|
1488 |
+
{
|
1489 |
+
"name": "stdout",
|
1490 |
+
"output_type": "stream",
|
1491 |
+
"text": [
|
1492 |
+
"Generating images for prompt 4/10: Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\n"
|
1493 |
+
]
|
1494 |
+
},
|
1495 |
+
{
|
1496 |
+
"data": {
|
1497 |
+
"application/vnd.jupyter.widget-view+json": {
|
1498 |
+
"model_id": "e56d500dad614136bd8c773a10081acf",
|
1499 |
+
"version_major": 2,
|
1500 |
+
"version_minor": 0
|
1501 |
+
},
|
1502 |
+
"text/plain": [
|
1503 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1504 |
+
]
|
1505 |
+
},
|
1506 |
+
"metadata": {},
|
1507 |
+
"output_type": "display_data"
|
1508 |
+
},
|
1509 |
+
{
|
1510 |
+
"name": "stdout",
|
1511 |
+
"output_type": "stream",
|
1512 |
+
"text": [
|
1513 |
+
"Generating images for prompt 5/10: Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\n"
|
1514 |
+
]
|
1515 |
+
},
|
1516 |
+
{
|
1517 |
+
"data": {
|
1518 |
+
"application/vnd.jupyter.widget-view+json": {
|
1519 |
+
"model_id": "4127cb5cac35459693e4e3f89baeb818",
|
1520 |
+
"version_major": 2,
|
1521 |
+
"version_minor": 0
|
1522 |
+
},
|
1523 |
+
"text/plain": [
|
1524 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1525 |
+
]
|
1526 |
+
},
|
1527 |
+
"metadata": {},
|
1528 |
+
"output_type": "display_data"
|
1529 |
+
},
|
1530 |
+
{
|
1531 |
+
"name": "stdout",
|
1532 |
+
"output_type": "stream",
|
1533 |
+
"text": [
|
1534 |
+
"Generating images for prompt 6/10: Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\n"
|
1535 |
+
]
|
1536 |
+
},
|
1537 |
+
{
|
1538 |
+
"data": {
|
1539 |
+
"application/vnd.jupyter.widget-view+json": {
|
1540 |
+
"model_id": "b941b7e6426f4700b3ee20290b18b36d",
|
1541 |
+
"version_major": 2,
|
1542 |
+
"version_minor": 0
|
1543 |
+
},
|
1544 |
+
"text/plain": [
|
1545 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1546 |
+
]
|
1547 |
+
},
|
1548 |
+
"metadata": {},
|
1549 |
+
"output_type": "display_data"
|
1550 |
+
},
|
1551 |
+
{
|
1552 |
+
"name": "stdout",
|
1553 |
+
"output_type": "stream",
|
1554 |
+
"text": [
|
1555 |
+
"Generating images for prompt 7/10: Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\n"
|
1556 |
+
]
|
1557 |
+
},
|
1558 |
+
{
|
1559 |
+
"data": {
|
1560 |
+
"application/vnd.jupyter.widget-view+json": {
|
1561 |
+
"model_id": "fe96f984b8a54bf28233199afabe2bca",
|
1562 |
+
"version_major": 2,
|
1563 |
+
"version_minor": 0
|
1564 |
+
},
|
1565 |
+
"text/plain": [
|
1566 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1567 |
+
]
|
1568 |
+
},
|
1569 |
+
"metadata": {},
|
1570 |
+
"output_type": "display_data"
|
1571 |
+
},
|
1572 |
+
{
|
1573 |
+
"name": "stdout",
|
1574 |
+
"output_type": "stream",
|
1575 |
+
"text": [
|
1576 |
+
"Generating images for prompt 8/10: Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\n"
|
1577 |
+
]
|
1578 |
+
},
|
1579 |
+
{
|
1580 |
+
"data": {
|
1581 |
+
"application/vnd.jupyter.widget-view+json": {
|
1582 |
+
"model_id": "fda0102c3ca24c4a8efdad2e37c7d31d",
|
1583 |
+
"version_major": 2,
|
1584 |
+
"version_minor": 0
|
1585 |
+
},
|
1586 |
+
"text/plain": [
|
1587 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1588 |
+
]
|
1589 |
+
},
|
1590 |
+
"metadata": {},
|
1591 |
+
"output_type": "display_data"
|
1592 |
+
},
|
1593 |
+
{
|
1594 |
+
"name": "stdout",
|
1595 |
+
"output_type": "stream",
|
1596 |
+
"text": [
|
1597 |
+
"Generating images for prompt 9/10: Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\n"
|
1598 |
+
]
|
1599 |
+
},
|
1600 |
+
{
|
1601 |
+
"data": {
|
1602 |
+
"application/vnd.jupyter.widget-view+json": {
|
1603 |
+
"model_id": "eaddf4e7efc24fa3971fbd9e4595cf94",
|
1604 |
+
"version_major": 2,
|
1605 |
+
"version_minor": 0
|
1606 |
+
},
|
1607 |
+
"text/plain": [
|
1608 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1609 |
+
]
|
1610 |
+
},
|
1611 |
+
"metadata": {},
|
1612 |
+
"output_type": "display_data"
|
1613 |
+
},
|
1614 |
+
{
|
1615 |
+
"name": "stdout",
|
1616 |
+
"output_type": "stream",
|
1617 |
+
"text": [
|
1618 |
+
"Generating images for prompt 10/10: Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\n"
|
1619 |
+
]
|
1620 |
+
},
|
1621 |
+
{
|
1622 |
+
"data": {
|
1623 |
+
"application/vnd.jupyter.widget-view+json": {
|
1624 |
+
"model_id": "09476e1b429548e49ef625f935fe3b92",
|
1625 |
+
"version_major": 2,
|
1626 |
+
"version_minor": 0
|
1627 |
+
},
|
1628 |
+
"text/plain": [
|
1629 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1630 |
+
]
|
1631 |
+
},
|
1632 |
+
"metadata": {},
|
1633 |
+
"output_type": "display_data"
|
1634 |
+
}
|
1635 |
+
],
|
1636 |
+
"source": [
|
1637 |
+
"prompts = [\n",
|
1638 |
+
" \"Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\",\n",
|
1639 |
+
" \"Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\",\n",
|
1640 |
+
" \"Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\",\n",
|
1641 |
+
" \"Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\",\n",
|
1642 |
+
" \"Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\",\n",
|
1643 |
+
" \"Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\",\n",
|
1644 |
+
" \"Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\",\n",
|
1645 |
+
" \"Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\",\n",
|
1646 |
+
" \"Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\",\n",
|
1647 |
+
" \"Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\"\n",
|
1648 |
+
"]\n",
|
1649 |
+
"\n",
|
1650 |
+
"save_dir = \"taylor_lora_1500steps_generated_images\"\n",
|
1651 |
+
"for i, prompt in enumerate(prompts):\n",
|
1652 |
+
" print(f\"Generating images for prompt {i+1}/{len(prompts)}: {prompt}\")\n",
|
1653 |
+
" images = flux_dev_pipe(prompt, \n",
|
1654 |
+
" num_inference_steps=35, \n",
|
1655 |
+
" num_images_per_prompt=1, \n",
|
1656 |
+
" width=1024,\n",
|
1657 |
+
" height=1024,\n",
|
1658 |
+
" guidance_scale=3.5,\n",
|
1659 |
+
" generator=torch.Generator(\"cpu\").manual_seed(1024)).images\n",
|
1660 |
+
"\n",
|
1661 |
+
" if not os.path.exists(save_dir):\n",
|
1662 |
+
" os.makedirs(save_dir)\n",
|
1663 |
+
" \n",
|
1664 |
+
" images[0].save(f\"{save_dir}/prompt_{i+1}.jpg\")"
|
1665 |
+
]
|
1666 |
+
},
|
1667 |
+
{
|
1668 |
+
"cell_type": "markdown",
|
1669 |
+
"id": "8b710166-d3f0-49fa-9dbc-231d455ae949",
|
1670 |
+
"metadata": {},
|
1671 |
+
"source": [
|
1672 |
+
"### Final steps"
|
1673 |
+
]
|
1674 |
+
},
|
1675 |
+
{
|
1676 |
+
"cell_type": "code",
|
1677 |
+
"execution_count": 13,
|
1678 |
+
"id": "1284085a-c2f6-4e3e-9add-8b086b7f898b",
|
1679 |
+
"metadata": {},
|
1680 |
+
"outputs": [],
|
1681 |
+
"source": [
|
1682 |
+
"flux_dev_pipe.fuse_lora(lora_scale=0)"
|
1683 |
+
]
|
1684 |
+
},
|
1685 |
+
{
|
1686 |
+
"cell_type": "code",
|
1687 |
+
"execution_count": 15,
|
1688 |
+
"id": "7e4e1195-bdec-4dc9-b291-4b95b0703009",
|
1689 |
+
"metadata": {
|
1690 |
+
"scrolled": true
|
1691 |
+
},
|
1692 |
+
"outputs": [
|
1693 |
+
{
|
1694 |
+
"data": {
|
1695 |
+
"text/plain": [
|
1696 |
+
"FluxPipeline {\n",
|
1697 |
+
" \"_class_name\": \"FluxPipeline\",\n",
|
1698 |
+
" \"_diffusers_version\": \"0.32.1\",\n",
|
1699 |
+
" \"_name_or_path\": \"black-forest-labs/FLUX.1-dev\",\n",
|
1700 |
+
" \"feature_extractor\": [\n",
|
1701 |
+
" null,\n",
|
1702 |
+
" null\n",
|
1703 |
+
" ],\n",
|
1704 |
+
" \"image_encoder\": [\n",
|
1705 |
+
" null,\n",
|
1706 |
+
" null\n",
|
1707 |
+
" ],\n",
|
1708 |
+
" \"scheduler\": [\n",
|
1709 |
+
" \"diffusers\",\n",
|
1710 |
+
" \"FlowMatchEulerDiscreteScheduler\"\n",
|
1711 |
+
" ],\n",
|
1712 |
+
" \"text_encoder\": [\n",
|
1713 |
+
" \"transformers\",\n",
|
1714 |
+
" \"CLIPTextModel\"\n",
|
1715 |
+
" ],\n",
|
1716 |
+
" \"text_encoder_2\": [\n",
|
1717 |
+
" \"transformers\",\n",
|
1718 |
+
" \"T5EncoderModel\"\n",
|
1719 |
+
" ],\n",
|
1720 |
+
" \"tokenizer\": [\n",
|
1721 |
+
" \"transformers\",\n",
|
1722 |
+
" \"CLIPTokenizer\"\n",
|
1723 |
+
" ],\n",
|
1724 |
+
" \"tokenizer_2\": [\n",
|
1725 |
+
" \"transformers\",\n",
|
1726 |
+
" \"T5TokenizerFast\"\n",
|
1727 |
+
" ],\n",
|
1728 |
+
" \"transformer\": [\n",
|
1729 |
+
" \"diffusers\",\n",
|
1730 |
+
" \"FluxTransformer2DModel\"\n",
|
1731 |
+
" ],\n",
|
1732 |
+
" \"vae\": [\n",
|
1733 |
+
" \"diffusers\",\n",
|
1734 |
+
" \"AutoencoderKL\"\n",
|
1735 |
+
" ]\n",
|
1736 |
+
"}"
|
1737 |
+
]
|
1738 |
+
},
|
1739 |
+
"execution_count": 15,
|
1740 |
+
"metadata": {},
|
1741 |
+
"output_type": "execute_result"
|
1742 |
+
}
|
1743 |
+
],
|
1744 |
+
"source": [
|
1745 |
+
"lora_path = \"/workspace/taylor-rank16-multi-1e-4-constant/pytorch_lora_weights.safetensors\"\n",
|
1746 |
+
"flux_dev_pipe.load_lora_weights(lora_path)\n",
|
1747 |
+
"flux_dev_pipe.to(\"cuda\")"
|
1748 |
+
]
|
1749 |
+
},
|
1750 |
+
{
|
1751 |
+
"cell_type": "code",
|
1752 |
+
"execution_count": 16,
|
1753 |
+
"id": "c0d25993-fd61-4dd3-947f-7255e691ac48",
|
1754 |
+
"metadata": {
|
1755 |
+
"scrolled": true
|
1756 |
+
},
|
1757 |
+
"outputs": [
|
1758 |
+
{
|
1759 |
+
"name": "stdout",
|
1760 |
+
"output_type": "stream",
|
1761 |
+
"text": [
|
1762 |
+
"Generating images for prompt 1/10: Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\n"
|
1763 |
+
]
|
1764 |
+
},
|
1765 |
+
{
|
1766 |
+
"data": {
|
1767 |
+
"application/vnd.jupyter.widget-view+json": {
|
1768 |
+
"model_id": "cb6a2eab3f2e408d9080cb333895c910",
|
1769 |
+
"version_major": 2,
|
1770 |
+
"version_minor": 0
|
1771 |
+
},
|
1772 |
+
"text/plain": [
|
1773 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1774 |
+
]
|
1775 |
+
},
|
1776 |
+
"metadata": {},
|
1777 |
+
"output_type": "display_data"
|
1778 |
+
},
|
1779 |
+
{
|
1780 |
+
"name": "stdout",
|
1781 |
+
"output_type": "stream",
|
1782 |
+
"text": [
|
1783 |
+
"Generating images for prompt 2/10: Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\n"
|
1784 |
+
]
|
1785 |
+
},
|
1786 |
+
{
|
1787 |
+
"data": {
|
1788 |
+
"application/vnd.jupyter.widget-view+json": {
|
1789 |
+
"model_id": "a930af1ed23945e783081e0578dae6b5",
|
1790 |
+
"version_major": 2,
|
1791 |
+
"version_minor": 0
|
1792 |
+
},
|
1793 |
+
"text/plain": [
|
1794 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1795 |
+
]
|
1796 |
+
},
|
1797 |
+
"metadata": {},
|
1798 |
+
"output_type": "display_data"
|
1799 |
+
},
|
1800 |
+
{
|
1801 |
+
"name": "stdout",
|
1802 |
+
"output_type": "stream",
|
1803 |
+
"text": [
|
1804 |
+
"Generating images for prompt 3/10: Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\n"
|
1805 |
+
]
|
1806 |
+
},
|
1807 |
+
{
|
1808 |
+
"data": {
|
1809 |
+
"application/vnd.jupyter.widget-view+json": {
|
1810 |
+
"model_id": "9ed94025a7fa449ab20b5fedf9e191a9",
|
1811 |
+
"version_major": 2,
|
1812 |
+
"version_minor": 0
|
1813 |
+
},
|
1814 |
+
"text/plain": [
|
1815 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1816 |
+
]
|
1817 |
+
},
|
1818 |
+
"metadata": {},
|
1819 |
+
"output_type": "display_data"
|
1820 |
+
},
|
1821 |
+
{
|
1822 |
+
"name": "stdout",
|
1823 |
+
"output_type": "stream",
|
1824 |
+
"text": [
|
1825 |
+
"Generating images for prompt 4/10: Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\n"
|
1826 |
+
]
|
1827 |
+
},
|
1828 |
+
{
|
1829 |
+
"data": {
|
1830 |
+
"application/vnd.jupyter.widget-view+json": {
|
1831 |
+
"model_id": "ba126d975abd4765ae4360a414dc7111",
|
1832 |
+
"version_major": 2,
|
1833 |
+
"version_minor": 0
|
1834 |
+
},
|
1835 |
+
"text/plain": [
|
1836 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1837 |
+
]
|
1838 |
+
},
|
1839 |
+
"metadata": {},
|
1840 |
+
"output_type": "display_data"
|
1841 |
+
},
|
1842 |
+
{
|
1843 |
+
"name": "stdout",
|
1844 |
+
"output_type": "stream",
|
1845 |
+
"text": [
|
1846 |
+
"Generating images for prompt 5/10: Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\n"
|
1847 |
+
]
|
1848 |
+
},
|
1849 |
+
{
|
1850 |
+
"data": {
|
1851 |
+
"application/vnd.jupyter.widget-view+json": {
|
1852 |
+
"model_id": "ec8bcbb9cb1647ac96bda4d2ffdb9118",
|
1853 |
+
"version_major": 2,
|
1854 |
+
"version_minor": 0
|
1855 |
+
},
|
1856 |
+
"text/plain": [
|
1857 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1858 |
+
]
|
1859 |
+
},
|
1860 |
+
"metadata": {},
|
1861 |
+
"output_type": "display_data"
|
1862 |
+
},
|
1863 |
+
{
|
1864 |
+
"name": "stdout",
|
1865 |
+
"output_type": "stream",
|
1866 |
+
"text": [
|
1867 |
+
"Generating images for prompt 6/10: Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\n"
|
1868 |
+
]
|
1869 |
+
},
|
1870 |
+
{
|
1871 |
+
"data": {
|
1872 |
+
"application/vnd.jupyter.widget-view+json": {
|
1873 |
+
"model_id": "4698da0d342942b69fd567cd009ce469",
|
1874 |
+
"version_major": 2,
|
1875 |
+
"version_minor": 0
|
1876 |
+
},
|
1877 |
+
"text/plain": [
|
1878 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1879 |
+
]
|
1880 |
+
},
|
1881 |
+
"metadata": {},
|
1882 |
+
"output_type": "display_data"
|
1883 |
+
},
|
1884 |
+
{
|
1885 |
+
"name": "stdout",
|
1886 |
+
"output_type": "stream",
|
1887 |
+
"text": [
|
1888 |
+
"Generating images for prompt 7/10: Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\n"
|
1889 |
+
]
|
1890 |
+
},
|
1891 |
+
{
|
1892 |
+
"data": {
|
1893 |
+
"application/vnd.jupyter.widget-view+json": {
|
1894 |
+
"model_id": "433f7cd387da4342be4c27f06e220e6f",
|
1895 |
+
"version_major": 2,
|
1896 |
+
"version_minor": 0
|
1897 |
+
},
|
1898 |
+
"text/plain": [
|
1899 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1900 |
+
]
|
1901 |
+
},
|
1902 |
+
"metadata": {},
|
1903 |
+
"output_type": "display_data"
|
1904 |
+
},
|
1905 |
+
{
|
1906 |
+
"name": "stdout",
|
1907 |
+
"output_type": "stream",
|
1908 |
+
"text": [
|
1909 |
+
"Generating images for prompt 8/10: Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\n"
|
1910 |
+
]
|
1911 |
+
},
|
1912 |
+
{
|
1913 |
+
"data": {
|
1914 |
+
"application/vnd.jupyter.widget-view+json": {
|
1915 |
+
"model_id": "842b11a0b7c84722aa1f0842af3adc81",
|
1916 |
+
"version_major": 2,
|
1917 |
+
"version_minor": 0
|
1918 |
+
},
|
1919 |
+
"text/plain": [
|
1920 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1921 |
+
]
|
1922 |
+
},
|
1923 |
+
"metadata": {},
|
1924 |
+
"output_type": "display_data"
|
1925 |
+
},
|
1926 |
+
{
|
1927 |
+
"name": "stdout",
|
1928 |
+
"output_type": "stream",
|
1929 |
+
"text": [
|
1930 |
+
"Generating images for prompt 9/10: Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\n"
|
1931 |
+
]
|
1932 |
+
},
|
1933 |
+
{
|
1934 |
+
"data": {
|
1935 |
+
"application/vnd.jupyter.widget-view+json": {
|
1936 |
+
"model_id": "19b0042870534f5ca1e73ac2869b7570",
|
1937 |
+
"version_major": 2,
|
1938 |
+
"version_minor": 0
|
1939 |
+
},
|
1940 |
+
"text/plain": [
|
1941 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1942 |
+
]
|
1943 |
+
},
|
1944 |
+
"metadata": {},
|
1945 |
+
"output_type": "display_data"
|
1946 |
+
},
|
1947 |
+
{
|
1948 |
+
"name": "stdout",
|
1949 |
+
"output_type": "stream",
|
1950 |
+
"text": [
|
1951 |
+
"Generating images for prompt 10/10: Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\n"
|
1952 |
+
]
|
1953 |
+
},
|
1954 |
+
{
|
1955 |
+
"data": {
|
1956 |
+
"application/vnd.jupyter.widget-view+json": {
|
1957 |
+
"model_id": "7977fad788e04b5bb5c014aadc6cd468",
|
1958 |
+
"version_major": 2,
|
1959 |
+
"version_minor": 0
|
1960 |
+
},
|
1961 |
+
"text/plain": [
|
1962 |
+
" 0%| | 0/35 [00:00<?, ?it/s]"
|
1963 |
+
]
|
1964 |
+
},
|
1965 |
+
"metadata": {},
|
1966 |
+
"output_type": "display_data"
|
1967 |
+
}
|
1968 |
+
],
|
1969 |
+
"source": [
|
1970 |
+
"prompts = [\n",
|
1971 |
+
" \"Close up photo of ext woman wearing an exquisite white lace dress with intricate floral patterns, a delicate silver necklace, and pearl earrings. Her makeup is minimal, with a natural glow accentuating her features. The studio backdrop is a soft beige gradient, with professional lighting creating gentle shadows and highlights. Her expression is calm and poised, exuding timeless elegance.\",\n",
|
1972 |
+
" \"Close up photo of ext woman wearing a sleek black leather jacket over a white turtleneck sweater. Her hair is styled in a modern bob, and she has a piercing gaze that conveys confidence. The backdrop is an urban skyline at dusk, with golden light reflecting off glass buildings. Subtle HDR lighting enhances the depth of her features.\",\n",
|
1973 |
+
" \"Close up photo of ext woman in a luxurious evening gown of deep crimson velvet, her hair styled into soft waves cascading over one shoulder. She wears diamond earrings and a matching necklace. The backdrop is a dimly lit grand ballroom, with golden chandeliers casting a warm glow. Her expression is one of quiet sophistication.\",\n",
|
1974 |
+
" \"Close up photo of ext woman with her hair tied into a tight, elegant bun, wearing a high-tech metallic silver suit with glowing blue lines integrated into the design. The futuristic backdrop features holographic screens and neon lights. Her intense expression suggests intelligence and focus.\",\n",
|
1975 |
+
" \"Medium shot photo of ext woman wearing a traditional sari in vibrant shades of gold and red, with intricate embroidery. She has a delicate bindi on her forehead, and her jewelry includes gold jhumkas and a necklace with emerald accents. The backdrop is a palace courtyard at sunset, with warm orange hues highlighting her serene expression.\",\n",
|
1976 |
+
" \"Medium shot photo of ext woman dressed in a rugged explorer outfit: a khaki shirt with rolled-up sleeves, a leather hat, and a bandana around her neck. Her expression is determined, with a hint of adventure. The backdrop is a dense jungle, with sunlight streaming through the leaves.\",\n",
|
1977 |
+
" \"Medium shot photo of ext woman in a glowing elven robe of silver and white, her ears subtly pointed, and a delicate circlet of intertwined gold leaves adorning her head. The magical forest backdrop features luminous plants and a soft mist illuminated by moonlight. Her expression is wise and ethereal.\",\n",
|
1978 |
+
" \"Full shot photo of ext woman wearing an elaborate black and gold masquerade mask, her gown shimmering with sequins that catch the light. Her lips are painted a deep red, and her eyes peer through the mask with a mysterious allure. The backdrop is a Venetian-style ballroom filled with masked figures.\",\n",
|
1979 |
+
" \"Full shot photo of ext woman in a tailored white blazer over a silk blouse, her hair in a polished low bun. Her accessories include minimalist gold hoop earrings and a smartwatch. The backdrop is a modern corporate office with floor-to-ceiling windows overlooking a bustling cityscape.\",\n",
|
1980 |
+
" \"Full shot photo of ext woman with flowing red hair adorned with wildflowers, wearing a simple yet elegant white linen dress. Her expression is serene, and her freckles are highlighted by the golden hour light. The backdrop is a lush meadow with tall grass swaying in the gentle breeze.\"\n",
|
1981 |
+
"]\n",
|
1982 |
+
"\n",
|
1983 |
+
"negative_prompt = \"(old,wrinkles,deformed iris, deformed pupils, semi-realistic, cgi, 3d, render, sketch, cartoon, drawing, anime), text, cropped, out of frame, worst quality, low quality, jpeg artifacts, ugly, duplicate, morbid, mutilated, extra fingers, mutated hands, poorly drawn hands, poorly drawn face, mutation, deformed, blurry, dehydrated, bad anatomy, bad proportions, extra limbs, cloned face, disfigured, gross proportions, malformed limbs, missing arms, missing legs, extra arms, extra legs, fused fingers, too many fingers, long neck\"\n",
|
1984 |
+
"\n",
|
1985 |
+
"save_dir = \"taylor_lora_finalsteps_generated_images\"\n",
|
1986 |
+
"for i, prompt in enumerate(prompts):\n",
|
1987 |
+
" print(f\"Generating images for prompt {i+1}/{len(prompts)}: {prompt}\")\n",
|
1988 |
+
" images = flux_dev_pipe(prompt, \n",
|
1989 |
+
" negative_prompt=negative_prompt,\n",
|
1990 |
+
" num_inference_steps=35, \n",
|
1991 |
+
" num_images_per_prompt=1, \n",
|
1992 |
+
" width=1024,\n",
|
1993 |
+
" height=1024,\n",
|
1994 |
+
" guidance_scale=3.5,\n",
|
1995 |
+
" generator=torch.Generator(\"cpu\").manual_seed(1024)\n",
|
1996 |
+
" ).images\n",
|
1997 |
+
"\n",
|
1998 |
+
" if not os.path.exists(save_dir):\n",
|
1999 |
+
" os.makedirs(save_dir)\n",
|
2000 |
+
" \n",
|
2001 |
+
" images[0].save(f\"{save_dir}/prompt_{i+1}.jpg\")"
|
2002 |
+
]
|
2003 |
+
},
|
2004 |
+
{
|
2005 |
+
"cell_type": "code",
|
2006 |
+
"execution_count": null,
|
2007 |
+
"id": "4306f6c1-561b-43cc-a965-64f844dc9a89",
|
2008 |
+
"metadata": {},
|
2009 |
+
"outputs": [],
|
2010 |
+
"source": []
|
2011 |
+
}
|
2012 |
+
],
|
2013 |
+
"metadata": {
|
2014 |
+
"kernelspec": {
|
2015 |
+
"display_name": "Python 3 (ipykernel)",
|
2016 |
+
"language": "python",
|
2017 |
+
"name": "python3"
|
2018 |
+
},
|
2019 |
+
"language_info": {
|
2020 |
+
"codemirror_mode": {
|
2021 |
+
"name": "ipython",
|
2022 |
+
"version": 3
|
2023 |
+
},
|
2024 |
+
"file_extension": ".py",
|
2025 |
+
"mimetype": "text/x-python",
|
2026 |
+
"name": "python",
|
2027 |
+
"nbconvert_exporter": "python",
|
2028 |
+
"pygments_lexer": "ipython3",
|
2029 |
+
"version": "3.10.12"
|
2030 |
+
}
|
2031 |
+
},
|
2032 |
+
"nbformat": 4,
|
2033 |
+
"nbformat_minor": 5
|
2034 |
+
}
|