☰
让插图更好看的3种模式:AutoFigure AI图像增强功能(none/code/code2prompt)完整解析
2026/10/11 1:26:26 网站建设 项目流程

让插图更好看的3种模式:AutoFigure AI图像增强功能(none/code/code2prompt)完整解析

【免费下载链接】AutoFigure项目地址: https://gitcode.com/gh_mirrors/au/AutoFigure

AutoFigure 是一个开源的 AI 科学插图生成系统(ICLR 2026),能从文本描述或论文 PDF 自动生成可发表级别的科学插图。其中最实用的亮点是AI 图像增强(Beautification)功能——它提供none、code、code2prompt三种增强模式,把简单的黑白布局草稿一键变成色彩专业、可直接用于论文和博客的精美科学插图。本文将带你完整看懂这三种模式的原理、区别和选择技巧。

🎨 AutoFigure 图像增强是做什么的?

在生成流程中,AutoFigure 会先输出一张黑白布局图(基于 mxGraph XML / SVG 的方框 + 箭头草稿)。布局虽然准确,但离" publication-ready(可发表级别)"还差一步。

图像增强就是在布局定稿后,调用图像生成模型按你指定的"艺术风格(Art Style)"对草稿进行视觉美化:

  • 把灰底的[icon]: 描述占位矩形替换成真正的小图标
  • 保留草稿中所有外部文字标签,一个字符都不改
  • 应用你指定的配色、阴影、渐变等风格化效果

增强功能的核心实现在 autofigure/enhancer.py 的ImageEnhancer.enhance()方法中,input_type参数就对应三种模式:none、code、code2prompt,默认值在 autofigure/config.py 中定义为code2prompt。

🔍 三种模式一图看懂

模式给 AI 的"参考信息"需要的 API适用场景
none仅布局 PNG 图片只需图像生成 API快速美化、快速出图
code布局 PNG + 原始 SVG/XML 代码只需图像生成 API需要严格还原坐标与结构(SDK 支持)
code2prompt布局 PNG + LLM 生成的详细提示词需要 LLM + 图像生成双 API追求最高质量(官方推荐)

三种模式的提示词构建逻辑都在 autofigure/enhancer.py 的_build_enhancement_prompt()中,可以按你的兴趣直接阅读源码。

1️⃣ none 模式:直接美化,最省心

none模式不使用任何代码参考,直接把布局图片交给图像模型,由 AI 视觉理解画面:哪些方框要保持位置比例、哪些灰色占位块要换成图标、哪些文字必须原样保留。

它的优点是链路最短——只需配置一个图像生成 API,无需额外的 LLM。缺点是 AI 只能"看图说话",对复杂图形的细节还原依赖图像模型自身的能力。

适合场景:图比较简单、想快速看看美化效果、或者不想多配一套 LLM API 的情况。

2️⃣ code 模式:让代码当"工程图纸"

code模式(SVG code 参考模式)会把原始 mxGraph XML / SVG 源码(最多 5000 字符)作为"TECHNICAL REFERENCE(技术参考)"随图片一起提交给图像模型,提示它严格按照代码中的坐标、尺寸、连接关系来绘制。

可以把它理解为:none 给 AI 一张"照片",code 给 AI 一张"工程图纸",结构还原度更高。

需要注意的是,code 模式目前主要在Python SDK中支持:在 autofigure/agent.py 的generate()参数里传enhancement_input_type="code",SDK 会自动读取生成的 SVG/XML 文件作为增强输入(见 autofigure/agent.py)。Web 端美化对话框只提供 none 和 code2prompt 两个选项。

3️⃣ code2prompt 模式:两步走的推荐方案

code2prompt是界面中标注Recommended(推荐)的模式,也是 autofigure/config.py 里的默认值。它分两步走:

  1. 第一步(LLM):大语言模型逐行分析 mxGraph XML 代码,识别占位图标([icon]:前缀)、箭头连接、文字标签和空间关系,生成一份结构化的详细绘图提示词(包含整体场景、视觉元素、需保留文字、风格实现、布局连接 5 个部分)。核心函数是 autofigure/enhancer.py 的convert_code_to_text2image_prompt()。
  2. 第二步(图像模型):图像模型拿着这份"文字说明书" + 布局草稿 + 艺术风格来渲染最终插图。

因为提示词已经把代码中的每个元素都翻译成了具体的视觉描述,图像模型收到的指令远比"看图美化"精确,最终效果最好。代价是需要同时配置 LLM API 和图像生成 API两套密钥。

一个贴心的细节:如果 LLM 转换提示词这一步失败,后端会自动降级回 none 模式继续美化,不会直接报错(逻辑见 backend/autofigure_routes.py)。

🛠️ 三步上手:如何开启图像增强?

无论哪种模式,都需要先完成布局定稿(Finalize)。之后的操作很轻量:

  1. 填写艺术风格:在美化对话框中描述你想要的风格,例如"modern scientific illustration with pastel colors",所有模式共用这一风格描述(art_style参数)。
  2. 选择增强模式:
    • Web 界面:打开美化对话框二选一(Direct Beautification = none;Code2Prompt = code2prompt),对应组件是 frontend/components/autofigure/BeautificationDialog.tsx,模式类型定义在 frontend/lib/autofigure-types.ts。
    • Python SDK:调用generate()时传enable_enhancement=True,并用enhancement_input_type指定none/code/code2prompt三种模式中的任意一种。
  3. 配置 API 密钥并选择变体数量:所有模式都必填图像生成 API(Provider / API Key / Model / Base URL);code2prompt 额外必填 LLM API Key。enhancement_count参数可一次生成多个候选变体,方便对比挑选。

增强结果会保存为xxx_enhanced.png(多变体时带_1、_2编号),与原草稿放在同一输出目录,对比查看很方便。

❓ 新手常见问题

Q1:没有 LLM API Key 能用增强功能吗?可以。选择 none 模式(Web 和 SDK 都支持),只配置图像生成 API 即可。

Q2:code 模式和 code2prompt 模式到底差在哪?两者都是"拿代码当参考"。code 是直接把源码贴给图像模型;code2prompt 是先让 LLM 把源码"翻译"成自然语言绘图指令再交给图像模型。后者指令更明确、对占位图标和文字保留的处理更精细,因此官方推荐。

Q3:文字会不会被 AI 改错?三种模式的提示词都明确要求"外部文字必须逐字保留、[icon]:说明文字必须替换为图标且不留残余",但 AI 生图仍有个别字符误差的可能,建议开启多个变体并逐字核对关键标签。

Q4:支持哪些服务商?图像生成侧支持 openrouter、bianxie、gemini 三家(见 autofigure/config.py 的默认模型配置),代码层面三者由 autofigure/enhancer.py 分别调用不同的 API 格式,切换只需改enhancement_provider。

📝 小结

  • none:只看图直接美化,配置最简单,适合快速出效果
  • code:附带源码当图纸,结构还原更严格(SDK 用户优选)
  • code2prompt:LLM 翻译 + 图像渲染两步走,质量最佳,是官方默认推荐

三种模式共用同一套艺术风格描述与多变体机制,配合 AutoFigure 的迭代生成能力,从"能看懂的草稿"到"能发论文的插图"只差一次点击。想深入了解完整流水线,可以继续阅读 autofigure/agent.py 中的生成与增强编排逻辑。

【免费下载链接】AutoFigure项目地址: https://gitcode.com/gh_mirrors/au/AutoFigure

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询