Loom: Diffusion-Transformer for Interleaved Generation

Mingcheng Ye, Jiaming Liu, Yiren Song
12/20/2025
cs.CV

No official code found. Best implementation: Plantian/Loom (9 stars, Apache-2.0, last commit 2026-04-03).

Abstract

Interleaved text-image generation aims to jointly produce coherent visual frames and aligned textual descriptions within a single sequence, enabling tasks such as style transfer, compositional synthesis, and procedural tutorials. We present Loom, a unified diffusion-transformer framework for interleaved text-image generation. Loom extends the Bagel unified model via full-parameter fine-tuning and an interleaved architecture that alternates textual and visual embeddings for multi-condition reasoning and sequential planning. A language planning strategy first decomposes a user instruction into stepwise prompts and frame embeddings, which guide temporally consistent synthesis. For each frame, Loom conditions on a small set of sampled prior frames together with the global textual context, rather than concatenating all history, yielding controllable and efficient long-horizon generation. Across style transfer, compositional generation, and tutorial-like procedures, Loom delivers superior compositionality, temporal coherence, and text-image alignment. Experiments demonstrate that Loom substantially outperforms the open-source baseline Anole, achieving an average gain of 2.6 points (on a 5-point scale) across temporal and semantic metrics in text-to-interleaved tasks. We also curate a 50K interleaved tutorial dataset and demonstrate strong improvements over unified and diffusion editing baselines.

View on arXivView PDF

Code Implementations(1)

Plantian/LoomCommunity69%
Apache-2.0

[CVPR 2026 Findings] Loom: Diffusion-Transformer for Interleaved Generation

90Shell, PythonDec 10, 20256 months agoApache-2.0

Similar Papers

Cite this paper

@article{ye2025loom,
  title  = {Loom: Diffusion-Transformer for Interleaved Generation},
  author = {Mingcheng Ye and Jiaming Liu and Yiren Song},
  year   = {2025},
  eprint = {2512.18254},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2512.18254v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2512.18254.svg)](https://codeofpaper.com/paper/2512.18254)

Discussion