{"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/flowedit-inversion-free-text-based-editing","title":"FlowEdit: Inversion-Free Text-Based Editing Using Pre-Trained Flow Models","arxiv_id":"2412.08629","date":"2024-12-11","proceeding":null,"authors":["Vladimir Kulikov","Matan Kleiner","Inbar Huberman-Spiegelglas","Tomer Michaeli"],"abstract":"Editing real images using a pre-trained text-to-image (T2I) diffusion/flow model often involves inverting the image into its corresponding noise map. However, inversion by itself is typically insufficient for obtaining satisfactory results, and therefore many methods additionally intervene in the sampling process. Such methods achieve improved results but are not seamlessly transferable between model architectures. Here, we introduce FlowEdit, a text-based editing method for pre-trained T2I flow models, which is inversion-free, optimization-free and model agnostic. Our method constructs an ODE that directly maps between the source and target distributions (corresponding to the source and target text prompts) and achieves a lower transport cost than the inversion approach. This leads to state-of-the-art results, as we illustrate with Stable Diffusion 3 and FLUX. Code and examples are available on the project's webpage.","url_abs":"https://arxiv.org/abs/2412.08629v1","url_pdf":"https://arxiv.org/pdf/2412.08629v1.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":"flowedit-inversion-free-text-based-editing","repo_url":"https://github.com/fallenshock/FlowEdit","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2412.08629","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2412.08629"}},"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/fallenshock/FlowEdit","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_violates":1,"unverified":2},"by_repo_kind":{"official":{"samples":3,"ran":1,"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":0,"samples":[{"code_sha256_prefix":"4e3ad3679e5c37b2","entry":"calculate_shift","repo":"fallenshock/FlowEdit","repo_kind":"official","path":"FlowEdit_utils.py","file_url":"https://github.com/fallenshock/FlowEdit/blob/HEAD/FlowEdit_utils.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4e3ad3679e5c37b2"}},{"code_sha256_prefix":"dbafd2bdb024a4f1","entry":"calc_v_sd3","repo":"fallenshock/FlowEdit","repo_kind":"official","path":"FlowEdit_utils.py","file_url":"https://github.com/fallenshock/FlowEdit/blob/HEAD/FlowEdit_utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"dbafd2bdb024a4f1"}},{"code_sha256_prefix":"35c7e38b2cdd2b6c","entry":"scale_noise","repo":"fallenshock/FlowEdit","repo_kind":"official","path":"FlowEdit_utils.py","file_url":"https://github.com/fallenshock/FlowEdit/blob/HEAD/FlowEdit_utils.py","link_basis":"plan_row","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"35c7e38b2cdd2b6c"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}