• YiYi Xu's avatar
    Add Shap-E (#3742) · 45f6d52b
    YiYi Xu authored
    
    
    * refactor prior_transformer
    
    adding conversion script
    
    add pipeline
    
    add step_index from pipeline, + remove permute
    
    add zero pad token
    
    remove copy from statement for betas_for_alpha_bar function
    
    * add
    
    * add
    
    * update conversion script for renderer model
    
    * refactor camera a little bit
    
    * clean up
    
    * style
    
    * fix copies
    
    * Update src/diffusers/schedulers/scheduling_heun_discrete.py
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/pipelines/shap_e/pipeline_shap_e.py
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/pipelines/shap_e/pipeline_shap_e.py
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * alpha_transform_type
    
    * remove step_index argument
    
    * remove get_sigmas_karras
    
    * remove _yiyi_sigma_to_t
    
    * move the rescale prompt_embeds from prior_transformer to pipeline
    
    * replace baddbmm with einsum to match origial repo
    
    * Revert "replace baddbmm with einsum to match origial repo"
    
    This reverts commit 3f6b435d65dad3e5514cad2f5dd9e4419ca78e0b.
    
    * add step_index to scale_model_input
    
    * Revert "move the rescale prompt_embeds from prior_transformer to pipeline"
    
    This reverts commit 5b5a8e6be918fefd114a2945ed89d8e8fa8be21b.
    
    * move rescale from prior_transformer to pipeline
    
    * correct step_index in scale_model_input
    
    * remove print lines
    
    * refactor prior - reduce arguments
    
    * make style
    
    * add prior_image
    
    * arg embedding_proj_norm -> norm_embedding_proj
    
    * add pre-norm for proj_embedding
    
    * move rescale prompt from pipeline to _encode_prompt
    
    * add img2img pipeline
    
    * style
    
    * copies
    
    * Update src/diffusers/models/prior_transformer.py
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/models/prior_transformer.py
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/models/prior_transformer.py
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/models/prior_transformer.py
    
    add arg: encoder_hid_proj
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/models/prior_transformer.py
    
    add new config: norm_in_type
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/models/prior_transformer.py
    
    add new config: added_emb_type
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/models/prior_transformer.py
    
    rename out_dim -> clip_embed_dim
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/models/prior_transformer.py
    
    rename config: out_dim -> clip_embed_dim
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/models/prior_transformer.py
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/models/prior_transformer.py
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * finish refactor prior_tranformer
    
    * make style
    
    * refactor renderer
    
    * fix
    
    * make style
    
    * refactor img2img
    
    * remove params_proj
    
    * add test
    
    * add upcast_softmax to prior_transformer
    
    * enable num_images_per_prompt, add save_gif utility
    
    * add
    
    * add fast test
    
    * make style
    
    * add slow test
    
    * style
    
    * add test for img2img
    
    * refactor
    
    * enable batching
    
    * style
    
    * refactor scheduler
    
    * update test
    
    * style
    
    * attempt to solve batch related tests timeout
    
    * add doc
    
    * Update src/diffusers/pipelines/shap_e/pipeline_shap_e.py
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * Update src/diffusers/pipelines/shap_e/pipeline_shap_e_img2img.py
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * hardcode rendering related config
    
    * update betas_for_alpha_bar on ddpm_scheduler
    
    * fix copies
    
    * fix
    
    * export_to_gif
    
    * style
    
    * second attempt to speed up batching tests
    
    * add doc page to index
    
    * Remove intermediate clipping
    
    * 3rd attempt to speed up batching tests
    
    * Remvoe time index
    
    * simplify scheduler
    
    * Fix more
    
    * Fix more
    
    * fix more
    
    * make style
    
    * fix schedulers
    
    * fix some more tests
    
    * finish
    
    * add one more test
    
    * Apply suggestions from code review
    Co-authored-by: default avatarSayak Paul <spsayakpaul@gmail.com>
    Co-authored-by: default avatarPedro Cuenca <pedro@huggingface.co>
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    
    * style
    
    * apply feedbacks
    
    * style
    
    * fix copies
    
    * add one example
    
    * style
    
    * add example for img2img
    
    * fix doc
    
    * fix more doc strings
    
    * size -> frame_size
    
    * style
    
    * update doc
    
    * style
    
    * fix on doc
    
    * update repo name
    
    * improve the usage example in shap-e img2img
    
    * add usage examples in the shap-e docs.
    
    * consolidate examples.
    
    * minor fix.
    
    * update doc
    
    * Apply suggestions from code review
    
    * Apply suggestions from code review
    
    * remove upcast
    
    * Make sure background is white
    
    * Update src/diffusers/pipelines/shap_e/pipeline_shap_e.py
    
    * Apply suggestions from code review
    
    * Finish
    
    * Apply suggestions from code review
    
    * Update src/diffusers/pipelines/shap_e/pipeline_shap_e.py
    
    * Make style
    
    ---------
    Co-authored-by: default avataryiyixuxu <yixu310@gmail,com>
    Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
    Co-authored-by: default avatarSayak Paul <spsayakpaul@gmail.com>
    Co-authored-by: default avatarPedro Cuenca <pedro@huggingface.co>
    45f6d52b
prior_transformer.py 16.2 KB