@inproceedings{
zhu2026autofigure,
title={AutoFigure: Generating and Refining Publication-Ready Scientific Illustrations},
author={Minjun Zhu and Zhen Lin and Yixuan Weng and Panzhong Lu and Qiujie Xie and Yifan Wei and Sifan Liu and Qiyao Sun and Yue Zhang},
booktitle={The Fourteenth International Conference on Learning Representations},
year={2026},
url={https://openreview.net/forum?id=5N3z9JQJKq}
}
@misc{lin2026autofigureeditgeneratingeditablescientific,
title={AutoFigure-Edit: Generating Editable Scientific Illustration},
author={Zhen Lin and Qiujie Xie and Minjun Zhu and Shichen Li and Qiyao Sun and Enhao Gu and Yiran Ding and Ke Sun and Fang Guo and Panzhong Lu and Zhiyuan Ning and Yixuan Weng and Yue Zhang},
year={2026},
eprint={2603.06674},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2603.06674},
}
@dataset{figurebench2025,
title = {FigureBench: A Benchmark for Automated Scientific Illustration Generation},
author = {WestlakeNLP},
year = {2025},
url = {https://huggingface.co/datasets/WestlakeNLP/FigureBench}
}
AutoFigure-edit: Generating and Editing Publication-Ready Scientific Illustrations [ICLR 2026]
English | 中文
从方法文本到可编辑的 SVG
AutoFigure-edit 是 AutoFigure 的新一代版本。它能将论文的方法部分自动转化为完全可编辑的 SVG 插图,并支持在嵌入式 SVG 编辑器中进行微调。
快速开始 • Web 界面演示 • 工作原理 • 配置 • 引用
[
论文] [项目主页] [BibTeX]🔥 新闻
gpt-image-2、gpt-5.5等 OpenAI 模型,同时补齐customOpenAI 兼容路由与双语配置工作流。详见 完整 release notes。🆕 V1.1(2026.04.23)
AutoFigure-Edit v1.1 对应 Git tag
v1.1。这次 release 主要解决两类最实际的使用场景:一类是用户已经有第一阶段学术位图,希望直接上传继续做 SAM + SVG 重建;另一类是希望直接使用 OpenAI 官方模型,或使用兼容 OpenAI 协议的自定义网关完成整条链路。gpt-image-2,而openai_response路线则作为文本 + 多模态 SVG 重建的正式工作流开放,默认 SVG 模型为gpt-5.5。customOpenAI 兼容路由: CLI 和网页端现在把custom作为中立的自定义兼容 provider。Custom 路线需要显式填写兼容 OpenAI 的/v1Base URL,同时openai_response路由可以默认继承同一套兼容base_url和api_key。完整 release notes: releases/v1.1.zh-CN.md
✨ 特性
🎨 画廊:可编辑矢量化与风格迁移
AutoFigure-edit 引入了两项突破性功能:
以下是涵盖 3 篇不同论文的 9 个示例。每篇论文都使用 3 种不同的参考风格生成。 (每张图片展示:*左侧 = AutoFigure 生成的原图 | 右侧 = 矢量化后的可编辑 SVG)*
🚀 工作原理
AutoFigure-edit 的处理流程通过四个阶段将原始生成的位图转化为可编辑的 SVG:
(1) 原始生成 → (2) SAM3 分割 → (3) SVG 布局模板 → (4) 最终矢量合成
figure.png): LLM 根据方法文本生成初始的光栅化草图。sam.png): 集成 SAM3 检测并分割出独立的图标与文本区域。template.svg): 系统构建包含占位符的 SVG 结构骨架(线框图)。final.svg): 将高质量的抠图图标和矢量化文本注入模板,完成组装。点击查看技术流程详解
AutoFigure2 的流程始于论文的方法文本,首先调用 文本生成图像 LLM (Text-to-Image LLM) 渲染出期刊风格的示意图,保存为
figure.png。接着,系统使用一个或多个文本提示词(如 “icon, diagram, arrow”)对该图像运行 SAM3 分割,通过 IoU 阈值合并重叠的检测结果,并在原图上绘制灰底黑边的带标签框;这一步生成了samed.png(带标签的掩码层)和一个包含坐标、置信度和提示词来源的结构化文件boxlib.json。随后,每个方框区域从原图中裁剪出来,并经过 RMBG-2.0 进行背景去除,生成位于
icons/*.png和*_nobg.png的透明图标素材。系统将figure.png、samed.png和boxlib.json作为多模态输入,由 LLM 生成一个占位符风格的 SVG (template.svg),其方框与标记区域相匹配。此外,SVG 可以选择性地通过 LLM 优化器 进行迭代微调,以更好地对齐线条、布局和风格,生成
optimized_template.svg(若跳过优化则使用原始模板)。系统随后比较 SVG 与原始图像的尺寸以计算缩放因子并对齐坐标系。最后,它将 SVG 中的每个占位符替换为对应的透明图标(通过标签/ID 匹配),从而组装出最终的final.svg。关键配置细节:
label、box或none)。optimize_iterations=0可跳过微调步骤,直接使用生成的结构模板。⚡ 快速开始
选项 0: Docker 部署指南(推荐)
如果你希望免本地 Python/SAM3 安装、并获得可复现的一键部署体验,推荐使用 Docker。
0)前置条件
8000端口未被占用briaai/RMBG-2.0访问权限:https://huggingface.co/briaai/RMBG-2.01)准备
.env.env至少需要配置:可选但建议配置:
受限网络下可设置构建镜像源:
2)构建并启动
浏览器打开
http://localhost:8000。3)健康检查
期望返回:
{"status":"ok"}。4)日常运维命令
5)持久化与默认配置
./outputs、./uploadshf_cache(容器内路径/app/.cache/huggingface)roboflowicon,person,robot,animalopenrouter:imagegoogle/gemini-3.1-flash-image-preview,svggoogle/gemini-3.1-pro-previewcustom:imagegemini-3.1-flash-image-preview,svggemini-3.1-pro-preview(需要你自己的 OpenAI 兼容/v1Base URL)gemini:imagegemini-3.1-flash-image-preview,svggemini-3.1-pro-previewopenai_response:imagegpt-image-2(步骤一默认回落),svggpt-5.5(Responses API)--image_provider openai:通过 OpenAI 官方 Images API 使用gpt-image-26)常见 Docker 网络问题
Temporary failure in name resolution(Roboflow):设置.env中DOCKER_DNS_1/2,然后重新docker compose up -d --build。auth.docker.io):在.env中设置BASE_IMAGE和PIP_INDEX_URL镜像源。ROBOFLOW_API_URL=<your_reachable_roboflow_endpoint>ROBOFLOW_API_FALLBACK_URLS=<comma_separated_backup_endpoints>选项 1: 命令行 (CLI)
运行:
仅把步骤 1 的生图切到 OpenAI GPT-Image,而 SVG 重建仍然走原 provider:
使用 OpenAI Responses API 处理文本和多模态 SVG 重建:
从已有的第一阶段图片继续,直接跳过生图:
选项 2: Web 界面
然后在浏览器打开
http://localhost:8000。🖥️ Web 界面演示
AutoFigure-edit 提供了一个可视化的 Web 界面,旨在实现无缝的生成和编辑体验。
1. 配置页面
在起始页面左侧粘贴论文的方法文本。在右侧配置生成选项:
0)。1K、2K或4K。figure.png的长边等比例放大到 4K(3840px),保持原始长宽比不变。如果你已经有第一阶段的位图,也可以直接点击右上角黑色按钮:
2. 画布与编辑器
生成结果会直接加载到集成的 SVG-Edit 画布中,支持全功能的矢量编辑。
outputs/中保存过的运行结果,并重新进入旧结果对应的画布。🧩 SAM3 安装说明
AutoFigure-edit 依赖 SAM3,但本项目未直接包含它。请遵循官方 SAM3 安装指南和先决条件。上游仓库目前针对 GPU 构建要求 Python 3.12+、PyTorch 2.7+ 和 CUDA 12.6。
SAM3 权重文件托管在 Hugging Face 上,下载前可能需要申请访问权限并进行认证(例如
huggingface-cli login)。SAM3 API 模式(无需本地安装)
如果您不想在本地安装 SAM3,可以使用 API 后端(Web Demo 也支持)。我们推荐使用 Roboflow,因为它可以免费使用。
方案 A: fal.ai
方案 B: Roboflow
可选 CLI 参数(API):
--sam_api_key(覆盖FAL_KEY/ROBOFLOW_API_KEY)--sam_max_masks(默认 32,仅 fal.ai 后端)⚙️ 配置
支持的 LLM 供应商
openrouter.ai/api/v1<你的兼容接口>/v1(必填)generativelanguage.googleapis.com/v1betagoogle-genai)api.openai.com/v1常用 CLI 参数:
--method_text、--method_file或--input_figure_path--provider(openrouter | custom | gemini | openai_response)--image_provider(openrouter | custom | gemini | openai,可选的步骤一 override)--image_api_key,--image_base_url--image_model,--svg_model--image_size(1K | 2K | 4K,仅 Gemini)--disable_auto_upscale(关闭步骤 1 后默认开启的 4K 等比例放大)--sam_prompt(逗号分隔的提示词)--sam_backend(local | fal | roboflow | api)--sam_api_key(API Key,默认读取FAL_KEY或ROBOFLOW_API_KEY)--sam_max_masks(fal.ai 最大 masks,默认 32)--merge_threshold(0 禁用合并)--optimize_iterations(0 禁用优化)--reference_image_path(可选)自定义提供商 / 自定义 Base URL
如果你希望接入自部署或第三方的 OpenAI 兼容接口,可以使用:
--provider custom--base_url <你的 OpenAI 兼容 /v1 根路径>--image_model <生图模型 ID>--svg_model <SVG 模型 ID>你也可以设置
AUTOFIGURE_CUSTOM_BASE_URL,这样就不需要每次都传--base_url。base_url必须是兼容 OpenAI 的/v1根路径:不要填写具体 endpoint,例如不要填:
文本推理和 SVG 重建会调用:
纯文本请求使用标准 Chat Completions 格式:
多模态 SVG 重建必须支持 OpenAI 风格的
image_urldata URI:响应需要保持标准结构:
SVG 可以直接返回
<svg>...</svg>,也可以包在 markdown 代码块中返回。当步骤 1 使用
--image_provider custom,或--provider custom且图片路线跟随主路径时,本项目当前会调用/chat/completions,并要求返回消息内容中包含 base64 图片 data URI:或:
如果你的供应商只暴露兼容 OpenAI Images 的
/images/generations路线,请使用--image_provider openai调官方 OpenAI Images API,或把步骤 1 生图保持在其他已支持路线。步骤一使用 OpenAI GPT-Image
截至 2026 年 4 月 23 日,OpenAI 官方 Images API 支持通过
images.generate/images.edit调用 GPT-Image 模型。本项目中的--image_provider openai只会覆盖步骤 1:images.generateimages.editgpt-image-2(可用--image_model覆盖)--image_api_key->OPENAI_API_KEY->--api_key默认 4K 等比例放大
步骤 1 结束后,生成的
figure.png默认会被等比例放大,使长边达到3840px,同时保持原始长宽比不变。如果原图长边已经达到或超过 4K,则会自动跳过该步骤。如需关闭,可使用:
OpenAI Responses Provider
截至 2026 年 4 月 23 日,OpenAI 官方 Responses API 支持使用
input_text和input_image进行文本输出。本项目中的--provider openai_response表示:client.responses.create(...)client.responses.create(...)--image_providergpt-5.5(可用--svg_model覆盖)导入已有的第一阶段图片
如果你已经有步骤 1 产出的学术位图,可以使用
--input_figure_path直接跳过生图。流程会先把导入的图片标准化为figure.png,默认继续执行 4K 等比例放大,然后从 SAM 分割和 SVG 重建继续。📁 项目结构
点击展开目录树
🤝 社区与支持
微信交流群
扫描二维码加入我们的社区。如果二维码过期,请添加微信号
nauhcutnil或联系tuchuan@mail.hfut.edu.cn并附上备注信息~📜 引用与许可
如果您觉得 AutoFigure、AutoFigure-Edit 或 FigureBench 对您有帮助,请引用:
本项目基于 MIT 许可证开源 - 详见
LICENSE文件。更多来自 ResearAI 的项目
以下是一些值得一看的 ResearAI 开源项目: