{"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/step1x-edit-a-practical-framework-for-general","title":"Step1X-Edit: A Practical Framework for General Image Editing","arxiv_id":"2504.17761","date":"2025-04-24","proceeding":null,"authors":["Shiyu Liu","Yucheng Han","Peng Xing","Fukun Yin","Rui Wang","Wei Cheng","Jiaqi Liao","Yingming Wang","Honghao Fu","Chunrui Han","Guopeng Li","Yuang Peng","Quan Sun","Jingwei Wu","Yan Cai","Zheng Ge","Ranchen Ming","Lei Xia","Xianfang Zeng","Yibo Zhu","Binxing Jiao","Xiangyu Zhang","Gang Yu","Daxin Jiang"],"abstract":"In recent years, image editing models have witnessed remarkable and rapid development. The recent unveiling of cutting-edge multimodal models such as GPT-4o and Gemini2 Flash has introduced highly promising image editing capabilities. These models demonstrate an impressive aptitude for fulfilling a vast majority of user-driven editing requirements, marking a significant advancement in the field of image manipulation. However, there is still a large gap between the open-source algorithm with these closed-source models. Thus, in this paper, we aim to release a state-of-the-art image editing model, called Step1X-Edit, which can provide comparable performance against the closed-source models like GPT-4o and Gemini2 Flash. More specifically, we adopt the Multimodal LLM to process the reference image and the user's editing instruction. A latent embedding has been extracted and integrated with a diffusion image decoder to obtain the target image. To train the model, we build a data generation pipeline to produce a high-quality dataset. For evaluation, we develop the GEdit-Bench, a novel benchmark rooted in real-world user instructions. Experimental results on GEdit-Bench demonstrate that Step1X-Edit outperforms existing open-source baselines by a substantial margin and approaches the performance of leading proprietary models, thereby making significant contributions to the field of image editing.","url_abs":"https://arxiv.org/abs/2504.17761v3","url_pdf":"https://arxiv.org/pdf/2504.17761v3.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":"step1x-edit-a-practical-framework-for-general","repo_url":"https://github.com/stepfun-ai/step1x-edit","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"image-editing","task_name":"Image Editing"},{"task_slug":"image-manipulation","task_name":"Image Manipulation"}],"methods":[{"method_slug":"adopt","method_name":"ADOPT"},{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[{"slug":"gedit-bench","name":"GEdit-Bench-EN","full_name":""}],"methods_introduced":[],"results":[{"leaderboard":"/sota/image-editing-on-gedit-bench-en","task":"Image Editing","dataset":"GEdit-Bench-EN","model":"Step1X-Edit","rank_in_archive_order":2,"of":3,"metrics":{"Overall":"6.70","Perceptual Quality":"6.76","Semantic Consistency":"7.09"},"uses_additional_data":true},{"leaderboard":"/sota/image-editing-on-imgedit-data","task":"Image Editing","dataset":"ImgEdit-Data","model":"Step1X-Edit","rank_in_archive_order":4,"of":9,"metrics":{"Action":"2.52","Add":"3.88","Adjust":"3.14","Background":"3.16","Extract":"1.76","Hybrid":"2.64","Overall":"3.06","Remove":"2.41","Replace":"3.40","Style":"4.63"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2504.17761","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2504.17761"}},"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/stepfun-ai/step1x-edit","reach":null}],"summary":{"ran_honours":2,"ran_draft_wrong":2},"by_repo_kind":{"official":{"samples":4,"ran":4,"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":"bf535068a0fd600f","entry":"calculate_dimensions","repo":"stepfun-ai/step1x-edit","repo_kind":"official","path":"GEdit-Bench/run_gedit_score.py","file_url":"https://github.com/stepfun-ai/step1x-edit/blob/HEAD/GEdit-Bench/run_gedit_score.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"bf535068a0fd600f"}},{"code_sha256_prefix":"dc36fc43aa674565","entry":"get_lin_function","repo":"stepfun-ai/step1x-edit","repo_kind":"official","path":"library/step1x_edit_train_utils.py","file_url":"https://github.com/stepfun-ai/step1x-edit/blob/HEAD/library/step1x_edit_train_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"dc36fc43aa674565"}},{"code_sha256_prefix":"6af11b2acd3fddab","entry":"get_schedule","repo":"stepfun-ai/step1x-edit","repo_kind":"official","path":"library/step1x_edit_train_utils.py","file_url":"https://github.com/stepfun-ai/step1x-edit/blob/HEAD/library/step1x_edit_train_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"6af11b2acd3fddab"}},{"code_sha256_prefix":"5b124272982275ac","entry":"time_shift","repo":"stepfun-ai/step1x-edit","repo_kind":"official","path":"library/step1x_edit_train_utils.py","file_url":"https://github.com/stepfun-ai/step1x-edit/blob/HEAD/library/step1x_edit_train_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"5b124272982275ac"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}