Look Back to Move Forward: Learning to Revisit for Agentic Compositional Image Generation
Organizations: NUDT · PDL Lab · Xiaohongshu · HNU ·
Abstract
Text-to-image models have made remarkable progress in visual fidelity and instruction following, yet complex compositional generation remains challenging. Existing agentic approaches address this limitation through iterative generation and editing, adapting their actions based on interaction history. However, they typically fix the continuation state (i.e., the image from which refinement proceeds) to the latest image. Since iterative editing is not necessarily monotonic, the agent may continue refining from the latest image even when it has already degraded. In this work, we introduce GenRevisit, an agentic framework that extends action selection to joint continuation-state and action selection. The agent can not only use interaction history to adjust editing instructions but also select an image candidate to edit, jointly deciding where to continue from and how to refine. We train GenRevisit with SFT followed by agentic reinforcement learning. To address the coarse credit assignment of final outcome reward in GRPO, which assigns the same trajectory-level advantage to all actions, we further propose Normalized Action Credit Assignment (NACA) to redistribute positive advantage according to each action's contribution to reducing the remaining objective. On GenEval2, GenRevisit achieves GM scores of 84.3 and 74.4 with Qwen-Image-2512 and Z-Image-Turbo, surpassing the strongest baselines using the same generators by 12.7 and 10.9 points respectively. GenRevisit achieves state-of-the-art performance on GenEval, GenEval++, and GenEval2 among baselines.
Figures & tables
| Method | Agent | Generator | Overall |
|---|---|---|---|
| Direct generation | |||
| FLUX.1-dev [ 41 , 13 ] | – | FLUX.1-dev | 67.0 |
| Qwen-Image [ 34 , 13 ] | – | Qwen-Image | 87.0 |
| Qwen-Image-2512 † [ 9 ] | – | Qwen-Image-2512 | 74.0 |
| Z-Image-Turbo † [ 9 ] | – | Z-Image-Turbo | 82.0 |
| Agentic generation and refinement | |||
| Variant | Overall | Skill-wise AM | ||||||
|---|---|---|---|---|---|---|---|---|
| GM | GM | Skill Avg. | Object | Attribute | Position | Count | Verb | |
| Qwen-Image-2512 | 29.0 | – | 62.0 | 97.9 | 65.2 | 58.1 | 66.9 | 22.1 |
| Untuned Qwen3-VL-8B-Instruct † | 49.7 | 74.6 | 97.9 | 88.9 | 64.4 | 72.4 | 49.6 | |
| SFT only | 81.5 | 85.3 | 98.9 | 96.1 | 91.7 | 88.8 | 51.1 | |
| SFT + GRPO | 80.3 | 85.1 | 98.7 | 96.0 | 91.1 | 88.4 | 51.4 | |
| SFT + NACA | 84.3 | 86.7 | 99.4 | 97.2 | 92.5 | 90.3 | 53.9 | |
Appendix figures & tables24 assets
Supplementary material from the paper’s appendix.
Appendix
| Role | Model or component | Use |
|---|---|---|
| Planner | Qwen3-VL-8B-Instruct | Language parameters are updated; vision tower and multimodal projector are frozen. |
| Teacher | GPT-5.5 | Collects multi-round demonstrations with executed actions and verifier feedback. |
| Generator | Qwen-Image-2512 | Produces a new candidate without an editing input. |
| Editor | Qwen-Image-Edit-2511 | Edits the candidate named in the action. |
| Verifier | Qwen3-VL-8B-Instruct | Frozen VQA evaluator; provides atomic feedback and Soft-TIFA scores. |
| Guidance | Fixed skill library | Returns requested guidance; does not choose the next action or image. |
| Component | Information |
|---|---|
| Task | Original prompt, fixed atomic requirements and questions, maximum image attempts. |
| Candidate history | Every completed candidate, its bound image, parent identifier, GM, constraint results, and the action that produced it. |
| Control | Current rankings, visible and editable candidate identifiers, legal submissions, and remaining image budget. |
| Retrieved guidance | Actual returned skill content and its associated target constraints. |
| Query control | Available skills, completed and pending queries, and remaining query allowance. |
| Action error, when present | The last unresolved format or validation error, used to request a new complete action. |
| Interface | Visible candidates | Editable candidates | Submission |
|---|---|---|---|
| Joint | All completed images | All completed images | GM-best |
| Best-only | All completed images | Current GM-best | GM-best |
| Latest-only | All completed images | Current latest | GM-best |
| Setting | Value |
|---|---|
| Planner initialization | Qwen3-VL-8B-Instruct |
| Prompt membership | 800 train / 100 validation / 100 test |
| Teacher prompt pool | 1,000 prompts across the three splits |
| Learning rate / global batch size / epochs | / 32 / 2 |
| Selected action targets | 3,473 train / 437 validation / 413 test |
| Targets per exported record | One canonical assistant action |
| Setting | Value |
|---|---|
| Training protocol | |
| Initialization | Joint selective SFT checkpoint |
| Rounds / prompt groups per round | 5 / 64 |
| Rollouts per group | 4 |
| Collected trajectories | 256 per round; 1,280 total |
| Optimizer steps | 8 per round; 40 total |
| Action | Selection rule |
|---|---|
| Initial generation | Retain the required first generation. |
| Editing | Retain when . |
| Subsequent generation | Retain when . |
| Submission | Retain the actually executed submission when it selects the current GM-best and uses a valid reason. |
| Guidance retrieval | Require a real returned response. The first subsequent executed image action must itself be selected, and its target constraints must intersect the query’s target constraints. |
| Split | Generate | Edit | Retrieve | Submit | Total |
|---|---|---|---|---|---|
| Train | 961 | 1,076 | 584 | 852 | 3,473 |
| Validation | 108 | 140 | 103 | 86 | 437 |
| Test | 110 | 114 | 99 | 90 | 413 |
| Total | 1,179 | 1,330 | 786 | 1,028 | 4,323 |
| Case | Handling |
|---|---|
| Normal submission | Reward is the utility of the submitted image. |
| Policy-invalid trajectory | Reward is and participates in group statistics. Retained sampled responses are trained if their group is not filtered. |
| Image backend, transport, or verifier failure | Retry or recover; do not substitute a score or treat the failure as a policy violation. |
| Image budget exhausted, followed by valid submission | Score the submitted image normally; budget exhaustion alone adds no penalty. |
| No valid submission | Use the recorded termination class to distinguish policy invalidity from incomplete execution or infrastructure failure; do not invent a submission. |
| Zero-variance group | Remove the group from optimizer data, including KL. |
| Response or input | Advantage | KL term |
|---|---|---|
| Eligible image action, , | Retained | |
| Eligible image action, , | Retained | |
| Eligible image action, positive-trajectory fallback | Retained | |
| Image action in a nonpositive-advantage trajectory | Retained | |
| Retrieval, submission, or retained invalid response | Retained | |
| Context, tool results, and verifier feedback | Not a target | Excluded |
| GenEval | |||||||
|---|---|---|---|---|---|---|---|
| Method | Single obj. | Two obj. | Counting | Colors | Position | Color attr. | Overall |
| Direct generation | |||||||
| FLUX.1-dev [ 41 ] | 0.9900 | 0.8100 | 0.7500 | 0.8000 | 0.2100 | 0.4800 | 0.6700 |
| Qwen-Image [ 34 ] | 0.9900 | 0.9200 | 0.8900 | 0.8800 | 0.7600 | 0.7700 | 0.8700 |
| Agentic generation and refinement | |||||||
| T2I-Copilot † [ 2 , 14 ] | 0.9900 | 0.9100 | 0.6800 | 0.8600 | 0.5500 | 0.4600 | 0.7400 |
| Method | Image backend | Category-wise accuracy | Overall | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Color | Count | Color/ Count | Color/ Pos | Pos/ Count | Pos/ Size | Multi- Count | |||
| Direct generation | |||||||||
| FLUX.1-dev [ 13 ] | FLUX.1-dev | 0.4000 | 0.6000 | 0.2500 | 0.2500 | 0.0750 | 0.4000 | 0.3000 | 0.3250 |
| BAGEL [ 38 ] | BAGEL | 0.3250 | 0.6000 | 0.2500 | 0.3250 | 0.2500 | 0.4750 | 0.3750 | 0.3710 |
| Qwen-Image [ 13 ] | Qwen-Image | 0.8750 | 0.7250 | 0.7250 | 0.6000 | 0.4750 | 0.7250 | 0.5500 | 0.6680 |
| Echo-4o [ 38 ] | BAGEL | 0.8000 | 0.5750 | 0.5500 | 0.7750 | 0.6250 | 0.8000 | 0.6250 | 0.6790 |
| Image action | Pass; GM | GRPO | NACA | |||
|---|---|---|---|---|---|---|
| Generate | 5/6; 62.03 | 218 | .824812 | 1.898143 | 1.730187 | 3.284142 |
| 5/6; 82.54 | 342 | .046820 | .107747 | 1.730187 | .186422 | |
| 5/6; 54.16 | 376 | 0 | 0 | 1.730187 | 0 | |
| 6/6; 95.64 | 380 | .989549 | 2.277251 | 1.730187 | 3.940071 |
| Aspect | Teacher collection | Joint student / SFT |
|---|---|---|
| Input packaging | Task, planner context, candidate observations, GM continuation control | Dedicated structured decision-time input |
| Candidate score key | primary_score | gm |
| Control key | gm_continuation_control | control |
| Editing instruction | Four semantic parts requested in the collection guidance | One instruction string; no extra four-part schema |
| Candidate access | All completed images available for joint editing | All completed images visible and editable |
| Output | One structured action | One structured action |
| Action | Required arguments |
|---|---|
| generate_image | target_constraint_ids , preserve_constraint_ids , instruction |
| edit_image | source_attempt_id , target_constraint_ids , preserve_constraint_ids , instruction |
| query_skill | skill_ids , target_constraint_ids |
| submit_attempt | selected_attempt_id , reason_code |
| Skill | Focus |
|---|---|
| Counting and instance layout | Count and instance layout |
| Spatial relations | Spatial relations |
| Attribute binding | Attribute-to-entity binding |
| Local edit preservation | Local edits and preservation |
| Action and pose relations | Action, pose, and relation errors |
| Object identity and presence | Object identity and presence |
| Constraint | Fixed verification question | Status | Probability |
|---|---|---|---|
| c_001 | How many flamingos are in the image? | Pass | 0.999979 |
| c_002 | Are the flamingos green? | Pass | 0.999994 |
| c_003 | Are the flamingos yellow? | Pass | 0.808171 |
| c_004 | Are there any flamingos in the image? | Pass | 0.999774 |
Compositional Image Generation
Compositional image generation studies how to combine objects, attributes, spatial relations, and visual references into coherent, controllable images.
See all 82 papers