ICLR 2025
OpenReview 与 ICLR proceedings 均标注为正式会议论文。现有笔记仍写作 2024 arXiv 预印本,本次按正式发表身份补充。
ACE 的核心并非又一个编辑器,而是一套统一输入语言:文字、图像、掩码和历史轮次都被组织成 Condition Unit,再由同一模型完成 8 类、37 个子任务。真正困难的部分,是让图像顺序、文字指代和跨轮历史在一条长序列中不互相串线。
OpenReview 与 ICLR proceedings 均标注为正式会议论文。现有笔记仍写作 2024 arXiv 预印本,本次按正式发表身份补充。
本地 PDF 包含 12 页主文、参考文献和附录。附录覆盖数据细节、训练、额外实验、应用与大量可视化。
官方仓库固定到提交 886bf9510b858e9e99c463efd679d0b79926e4dc,公开 0.6B / 512 与 1024 checkpoint、推理和 toy training。
论文明确给出 5 位共同第一作者,项目页说明顺序由随机掷骰决定;Chaojie Mao 带项目负责人/通讯标记。ACE 不是 ACE++,后者是后续基于 FLUX 的扩展。
“论文证明”只指公开论文、附录或正式实验。代码观察单列为 implementation audit;没有把仓库的 toy 配置当作完整训练配方,也没有独立重跑 0.7B 训练或人评。
文本生成可以用一个提示接口覆盖许多任务,而图像生成仍常依赖不同的 ControlNet、inpainting、身份保持或文字渲染模型。ACE 试图把“任务类型”从模型选择问题,改写为“条件如何排列”的问题。
纯文本生成、源图编辑、带 mask 局部重绘、多参考生成和多轮交互的输入结构不同,专用模型通常把这些差异硬编码进网络。
编辑需要源图、目标图及准确描述“从 A 到 B 如何变化”的 instruction,普通 caption 数据不能直接提供这种三元关系。
连续编辑若只把上一张输出作为下一轮输入,会忘掉早先约束。ACE 把过去的文字与视觉条件直接拼入当前长上下文。
只要将视觉与文字条件统一为可对齐的 token 序列,并为图像引用、空间位置和轮次关系提供正确归纳偏置,同一 DiT 就能学习任务间可迁移的“条件到图像”映射。
对第 \(i\) 次请求,文字指令记作 \(T_i\)。视觉条件 \(V_i\) 包含 \(N_i\) 张图像 \(I_i^n\) 及逐图掩码 \(M_i^n\)。没有显式 mask 时,论文与实现用全一 mask。
单轮条件单元:
\[ \mathrm{CU}_i=\{T_i,V_i\},\qquad V_i=\{[I_i^1;M_i^1],\ldots,[I_i^{N_i};M_i^{N_i}]\}. \]分号表示图像 latent 与下采样 mask 沿通道拼接。\(N_i=0\) 时退化为纯文本生成。
带最多 \(m\) 轮历史的长上下文单元:
\[ \mathrm{LCU}_i=\bigl\{\{T_{i-m},\ldots,T_i\},\{V_{i-m},\ldots,V_i\}\bigr\}. \]它保留每轮指令及视觉证据。论文没有显式外部 memory;历史就是当前 Transformer 输入。
{image} 至 {image9} 建立文字指代。{imageN} 表示加到相应文字和图像 token。对第 \(m\) 个 CU 的第 \(n\) 张图,预定义标记嵌入记作 \(e_{m,n}\),它被同时加到相关文字 token 与图像 patch token:
\(p\) 是空间 patch 索引。这不是显式 pointer loss;关联由共享加法嵌入和端到端训练形成。
视觉序列加入时间步嵌入,并用 3D RoPE 编码 frame、height、width。所有视觉 token 经 self-attention 得到 \(\mu\);第 \(m\) 个 CU 的视觉 token 再只读同 CU 文字:
这避免所有图像无差别读取所有轮次文字;跨轮视觉信息仍可通过 self-attention 传播。
论文没有另加任务分类、图像指代或长上下文对比 loss。统一能力主要来自输入结构和 0.7B 多任务配对数据。
覆盖 8 类、37 个子任务及多轮长上下文。原始数据未公开,去重率与多数子任务绝对数量不可复现。
用 MLLM 补 caption,既服务 text-to-image,也作为组合多步任务的中间桥梁。
用于微调 InternVL2-26B 成 Instruction Captioner,让任意图像对可生成变换指令。
| 任务 | 构建方式 | 公开阈值/规模 | 复现缺口 |
|---|---|---|---|
| 低层分析/控制 | EfficientSAM、MiDaS、RTMPose、Canny、PIDNet、SketchNet、Informative Drawings | 10 类特征;全局与局部版本 | 工具版本、阈值与失败过滤不全 |
| 人脸保持 | InstantID 合成 aligned;ArcFace + clustering 挖掘 misaligned | aligned 相似度 \(\ge 0.65\);misaligned 连边 0.8–0.9;10K clusters | 分类器与人工清洗标准未公开 |
| 人脸属性 | Aliyun API 生成 smile、beard、makeup、hair dye,分类器过滤 | 1.4M pairs | API 与分类器不可得 |
| 风格编辑 | 扩展 StyleBooth;另将风格图逆变换为“原图” | 80+ styles / 63K;另约 400 styles / 70K;CSR 阈值 0.65 | 风格清单与图像许可未发布 |
| Series generation | 同簇随机取目标与多张输入 | 3–8 张输入 | 聚类阈值与采样权重不完整 |
| 长上下文 | 同质簇串联;或随机组合单图任务形成前序 CU | 训练最多 9 张图 | 轮数分布与 curriculum 未公开 |
| 阶段 | 参数 | 数据规模 | 视觉长度 | 最大图数 | 步数 | Batch |
|---|---|---|---|---|---|---|
| Instruction Align · 单图 | 0.6B | 0.7B | 1024 | 1 | 900K | 800 |
| Instruction Align · 多图 | 0.6B | 0.7B | 1024 | 9 | 100K | 400 |
| Aesthetic Improvement | 0.6B | 50M | 1024 | 9 | 500K | 400 |
| Aesthetic Improvement · 高分辨率 | 0.6B | 50M | 4096 | 9 | 100K | 960 |
论文未公开 AdamW 的 \(\beta\)、warmup、scheduler、梯度裁剪、完整混合精度、任务采样权重、总 GPU 数与训练时间。不能从 toy YAML 倒推。
| 设置 | 方法 | L1 ↓ | L2 ↓ | CLIP-I ↑ | DINO ↑ | CLIP-T ↑ |
|---|---|---|---|---|---|---|
| 单轮 · description | SD-SDEdit | 0.1014 | 0.0278 | 0.8526 | 0.7726 | 0.2777 |
| 单轮 · description | Null Text Inversion | 0.0749 | 0.0197 | 0.8827 | 0.8206 | 0.2737 |
| 单轮 · description | GLIDE | 3.4973 | 115.8347 | 0.9487 | 0.9206 | 0.2249 |
| 单轮 · description | Blended Diffusion | 3.5631 | 119.2813 | 0.9291 | 0.8644 | 0.2622 |
| 单轮 · description | ACE | 0.0505 | 0.0160 | 0.9436 | 0.9184 | 0.2833 |
| 单轮 · instruction | HIVE | 0.1092 | 0.0380 | 0.8519 | 0.7500 | - |
| 单轮 · instruction | InstructPix2Pix | 0.1122 | 0.0371 | 0.8524 | 0.7428 | 0.2764 |
| 单轮 · instruction | MagicBrush | 0.0625 | 0.0203 | 0.9332 | 0.8987 | 0.2781 |
| 单轮 · instruction | UltraEdit | 0.0575 | 0.0172 | 0.9307 | 0.8982 | - |
| 单轮 · instruction | ACE | 0.0507 | 0.0165 | 0.9453 | 0.9215 | 0.2841 |
| 多轮 · description | SD-SDEdit | 0.1616 | 0.0602 | 0.7933 | 0.6212 | 0.2694 |
| 多轮 · description | Null Text Inversion | 0.1057 | 0.0335 | 0.8468 | 0.7529 | 0.2710 |
| 多轮 · description | GLIDE | 11.7487 | 1079.5997 | 0.9094 | 0.8494 | 0.2252 |
| 多轮 · description | Blended Diffusion | 14.5439 | 1510.2271 | 0.8782 | 0.7690 | 0.2619 |
| 多轮 · description | ACE | 0.0778 | 0.0290 | 0.9124 | 0.8611 | 0.2843 |
| 多轮 · description | ACE + LC | 0.0768 | 0.0285 | 0.9136 | 0.8635 | 0.2819 |
| 多轮 · instruction | HIVE | 0.1521 | 0.0557 | 0.8004 | 0.6463 | 0.2673 |
| 多轮 · instruction | InstructPix2Pix | 0.1584 | 0.0598 | 0.7924 | 0.6177 | 0.2726 |
| 多轮 · instruction | MagicBrush | 0.0964 | 0.0353 | 0.8924 | 0.8273 | 0.2754 |
| 多轮 · instruction | UltraEdit | 0.0745 | 0.0236 | 0.9045 | 0.8505 | - |
| 多轮 · instruction | ACE | 0.0773 | 0.0293 | 0.9128 | 0.8661 | 0.2855 |
| 多轮 · instruction | ACE + LC | 0.0761 | 0.0284 | 0.9140 | 0.8668 | 0.2809 |
ACE 在单轮 instruction-guided 五项均最佳。多轮时 LC 让 L1/L2、CLIP-I、DINO 略升,却使 CLIP-T 下降;instruction-guided 的 L1/L2 仍由 UltraEdit 更好。它支持“历史有帮助”,但不是大幅、全面提升。
| Benchmark | 真实图 | 生成图 | 多轮 | 局部 | 任务数 | 规模 |
|---|---|---|---|---|---|---|
| MagicBrush | 是 | 否 | 是 | 是 | - | 1,588 |
| Emu Edit | 是 | 否 | 否 | 否 | 8 | 3,589 |
| ACE | 是 | 是 | 是 | 是 | 31 | 12,000 |
5 位专业设计师匿名评分 prompt following 与 image quality(1–5 分)。论文称 ACE 在 12 个 global editing 任务中的 7 个取得最佳 prompt following,在 10 个 local editing 任务中的 8 个最佳;image quality 分别在 10 个 global 的 5 个、10 个 local 的 7 个最佳。正文的分母与 Table 2 列数表述并不完全一致。
| 区域 | 任务 | Prompt / Quality | 对照观察 |
|---|---|---|---|
| Global | Text-to-image | 3.7 / 2.5 | 低于 SDXL 4.1 / 2.8 |
| Global | Canny | 4.6 / 2.7 | prompt 最佳;quality 低于 CosXL 2.9 |
| Global | Depth | 4.5 / 2.8 | 两项均达到或并列最佳 |
| Global | Scribble | 4.8 / 2.9 | 两项最佳 |
| Global | Pose | 4.1 / 2.3 | prompt 最佳 |
| Global | Face | 2.8 / 2.8 | quality 低于 CosXL 3.1 |
| Global | Style | 2.4 / 2.6 | 落后 StyleBooth 3.3 / 2.6 与 CosXL 3.2 / 3.0 |
| Global | General | 2.1 / 2.5 | 落后 CosXL 3.2 / 2.9 |
| Global | Add text | 2.8 / 2.7 | prompt 低于专用文字模型 |
| Global | Remove text | 4.4 / 2.9 | 两项最佳或并列 |
| Global | Add object | 2.6 / 2.4 | prompt 低于 MagicBrush 3.1 |
| Global | Remove object | 3.9 / 2.5 | prompt 最佳;quality 低于 CosXL 3.1 |
| Local | Canny / Depth / Scribble | 4.8 / 2.6;4.3 / 2.5;4.8 / 2.6 | 报告评分均高于 UltraEdit(未报告显著性检验) |
| Local | Add / Remove text | 4.5 / 2.9;4.5 / 2.9 | 优于文字专用方法的人评 |
| Local | Add / Remove object | 3.7 / 2.5;4.3 / 2.5 | remove prompt 次于 LaMa 4.5 |
| Local | Inpaint / Outpaint | 4.4 / 2.7;4.6 / 2.8 | 两项最佳 |
| 评测 | ACE | 关键对照 | 结论 |
|---|---|---|---|
| Emu Edit | CLIPdir 0.0855;CLIPout 0.2746;L1 0.0761;CLIPimg 0.8952;DINO 0.8620 | Emu Edit 的 CLIPdir 0.1073;UltraEdit 的 L1 0.0532 | 内容保持最佳,编辑方向与像素差并非最佳 |
| Facial Editing | FS 70.07;ES 0.67 | InstantID 84.08 / 0.96,但额外需要 landmark | 优于无 landmark 方法,低于强条件专家 |
| Local Text Render | Normalized Edit Distance 分数 0.8211;Sentence Accuracy 0.5767 | UDiffText 0.6827 / 0.4110;AnyText 0.6035 / 0.3313 | 作者按较高分数判断 ACE 最佳。附录称第一项为 Normalized Edit Distance,并沿用 AnyText 的评估;此处应按论文的高分优方向阅读,不能理解成通常越低越好的原始编辑操作次数。论文未在此给出完整计算公式。 |
| 主张 | 证据 | 严格判断 |
|---|---|---|
| Indicator 解决多图指代 | Figure 25 的顺序交换定性示例 | 支持模型会用标记;未证明组件必要性,也无指代错误率 |
| LCU 改善多轮 | MagicBrush ACE 与 ACE+LC | 四个图像相似指标小幅改善,CLIP-T 下降 |
| 统一模型媲美专家 | 多 benchmark 与人评 | 覆盖强;一般编辑、风格与文生图仍落后大型或专用模型 |
| 3D RoPE / 逐 CU cross-attention 有效 | 架构与总体结果 | 无组件级消融,不能分离贡献 |
| 数据流水线提升泛化 | 总体表现 | 无数据规模、合成/真实比例或 captioner 消融 |
这更像系统与数据工程贡献,而不是被充分分解验证的新模块。“all-round”覆盖有说服力;每个设计为何有效、哪项贡献最大,证据不足。
| 项目 | 论文 | 固定提交实现 | 影响 |
|---|---|---|---|
| 结构 | DiT-XL/2,约 0.6B | hidden 1152、28 blocks、16 heads、patch 2;4 latent 通道加 1 mask 通道 | 核心结构可审计 |
| 文字 | T5,最大 120,冻结 | T5-v1_1-XXL,bfloat16,USE_GRAD: False | 一致 |
| 学习率 | \(2\times10^{-5}\) | toy YAML 为 \(10^{-5}\) | YAML 不是论文 full recipe |
| 训练规模 | 四阶段共 1.6M steps,多达 batch 960 | demo:500 steps、batch 1、HED pair toy dataset | 只验证训练接口 |
| 数据 | 0.7B pairs + 50M aesthetic | toy loader;主 corpus 与 benchmark 不在仓库 | 主训练/主评测不可复现 |
| 推理 | 正文未逐项写参数 | DDIM 20、scale 4.5、rescale 0.5 | checkpoint 推理可复现 |
| 长上下文 | 多个历史 CU | forward 支持 list-of-list;CLI 主要展示单轮单图 | 需自行组织复杂输入 |
| 质量增强 | 主论文 ACE | 仓库另推荐 FLUX SDEdit 的 ACE-Refiner | Refiner 是发布后工程补充 |
target --VAE--> x_start --add noise--> x_t
source images --VAE--> edit latents
masks --resize--> one mask channel
[latent ; mask] --patch embed--> visual tokens
instruction --T5--> text tokens
{imageN} embedding --> matching visual and text tokens
visual tokens --self-attention + 3D RoPE
per-CU visual/text --cross-attention
DiT --predict epsilon--> DDIM --VAE decode--> RGB安装仓库依赖、下载 checkpoint、运行 tools/run_inference.py。编辑指令中显式写 {image} 并传 source image;mask 可选。验证长上下文则需按 LdmACE.forward_test 的 list-of-list 接口组织多轮 prompt 与多图,而非只用简单 CLI。
0.6B ACE 的 text-to-image 审美落后 Midjourney 与 FLUX;固定 encoder-decoder 语言模型难理解更复杂、多样指令;当前模型不能在单条指令中同时处理多个 intent,需要意图分解。仓库后续加入 FLUX-based refiner,也印证基础 ACE 的画质瓶颈。
“覆盖任务最广”是作者在当时对照集合内的主张,不是对后续通用图像模型的永久排序。本页不把 2024 技术报告结论外推到 2026 模型生态。
| Research Extension | 借用 ACE | 新增机制 | 可验证假设 |
|---|---|---|---|
| Material Condition Unit | 统一文字、参考图、mask 与历史 | 加入 graph、node preview、材质通道和 renderer state | 能否减少任务专用 adapter |
| Execution-aware attention | 逐 CU cross-attention | graph token 只读取对应 node preview/错误日志 | 能否降低跨节点指代串线和非法连接 |
| Long-context graph editing | LCU 保存历史 | 显式存储 graph diff、渲染结果和失败原因 | 相比只传最新 graph,能否减少回归与遗忘 |
| Material pair mining | 真实簇内挖 source-target | 按 topology、render embedding 和参数差异联合聚类 | 能否缓解合成 graph 教师偏差 |
| Graph Instruction Captioner | MLLM 标注图像对 | 输入 before/after render + graph diff | 能否构建大规模可执行编辑数据 |
逐 CU cross-attention 是软结构约束。对材质图可让每个 node/subgraph token 只读对应视觉预览、参数和执行反馈,再由全局 self-attention 交换跨节点信息;这比所有文字、图像和 graph token 无差别拼接更容易保留归属。
886bf9510b858e9e99c463efd679d0b79926e4dc。核查覆盖完整论文与附录、官方项目页、官方仓库和模型卡。未用二手摘要填补超参数;未独立复现主训练、人评或 12,000 项 benchmark。