{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/flash-diffusion-accelerating-any-conditional","title":"Flash Diffusion: Accelerating Any Conditional Diffusion Model for Few Steps Image Generation","arxiv_id":"2406.02347","date":"2024-06-04","proceeding":null,"authors":["Clément Chadebec","Onur Tasar","Eyal Benaroche","Benjamin Aubin"],"abstract":"In this paper, we propose an efficient, fast, and versatile distillation method to accelerate the generation of pre-trained diffusion models: Flash Diffusion. The method reaches state-of-the-art performances in terms of FID and CLIP-Score for few steps image generation on the COCO2014 and COCO2017 datasets, while requiring only several GPU hours of training and fewer trainable parameters than existing methods. In addition to its efficiency, the versatility of the method is also exposed across several tasks such as text-to-image, inpainting, face-swapping, super-resolution and using different backbones such as UNet-based denoisers (SD1.5, SDXL) or DiT (Pixart-$\\alpha$), as well as adapters. In all cases, the method allowed to reduce drastically the number of sampling steps while maintaining very high-quality image generation. The official implementation is available at https://github.com/gojasper/flash-diffusion.","url_abs":"https://arxiv.org/abs/2406.02347v3","url_pdf":"https://arxiv.org/pdf/2406.02347v3.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"flash-diffusion-accelerating-any-conditional","repo_url":"https://github.com/gojasper/flash-diffusion","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"NOASSERTION"}}],"tasks":[{"task_slug":"face-swapping","task_name":"Face Swapping"},{"task_slug":null,"task_name":"GPU"},{"task_slug":"image-generation","task_name":"Image Generation"},{"task_slug":"image-inpainting","task_name":"Image Inpainting"},{"task_slug":"super-resolution","task_name":"Super-Resolution"}],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2406.02347","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2406.02347"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/gojasper/flash-diffusion","reach":{"status":"ok","spdx":"NOASSERTION"}}],"summary":{"ran":6},"by_repo_kind":{"official":{"samples":6,"ran":6,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":6,"samples":[{"code_sha256_prefix":"3e3fbf5c0779ffa2","entry":"append_dims","repo":"gojasper/flash-diffusion","repo_kind":"official","path":"src/flash/models/utils.py","file_url":"https://github.com/gojasper/flash-diffusion/blob/HEAD/src/flash/models/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"3e3fbf5c0779ffa2"}},{"code_sha256_prefix":"2d0e517ee45c570d","entry":"extract_into_tensor","repo":"gojasper/flash-diffusion","repo_kind":"official","path":"src/flash/models/utils.py","file_url":"https://github.com/gojasper/flash-diffusion/blob/HEAD/src/flash/models/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"2d0e517ee45c570d"}},{"code_sha256_prefix":"b8a4b0df1faef38e","entry":"gaussian_mixture","repo":"gojasper/flash-diffusion","repo_kind":"official","path":"src/flash/models/flash/flash_diffusion_model.py","file_url":"https://github.com/gojasper/flash-diffusion/blob/HEAD/src/flash/models/flash/flash_diffusion_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"b8a4b0df1faef38e"}},{"code_sha256_prefix":"331d905e9e4b1280","entry":"gaussian_mixture","repo":"gojasper/flash-diffusion","repo_kind":"official","path":"src/flash/models/flash_sd3/flash_diffusion_model.py","file_url":"https://github.com/gojasper/flash-diffusion/blob/HEAD/src/flash/models/flash_sd3/flash_diffusion_model.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"331d905e9e4b1280"}},{"code_sha256_prefix":"fffaecd8f06a1856","entry":"pad","repo":"gojasper/flash-diffusion","repo_kind":"official","path":"src/flash/models/utils.py","file_url":"https://github.com/gojasper/flash-diffusion/blob/HEAD/src/flash/models/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"fffaecd8f06a1856"}},{"code_sha256_prefix":"a03a5220c664637d","entry":"setup_logging","repo":"gojasper/flash-diffusion","repo_kind":"official","path":"src/flash/trainer/utils.py","file_url":"https://github.com/gojasper/flash-diffusion/blob/HEAD/src/flash/trainer/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NOASSERTION","inline_ok":false,"mcp_get_code":{"code_sha256":"a03a5220c664637d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}