每一个搞科研、写论文的人,大概都被学术插画折磨过。 为了画一张高大上的系统架构图或者科学机理图,我们要么在 Visio 里通宵对齐像素,要么在 PPT 里抠图抠到眼花。要是审美稍微不在线,画出来的图一股“乡土气息”,分分钟被审稿人无情吐槽。
“难道就没有一种办法,我把论文想法写出来,AI 自动帮我把符合 Nature/Science 审稿标准的矢量图画好吗?”
还真有! 最近 GitHub 上一个叫做 PaperBanana 的项目彻底火了。它是一个专门为 AI 科学家和科研人员打造的参考驱动型Multi-Agent 学术插画生成框架。
今天这篇文章,就来手把手带你一步步把这个神器跑起来,看看它到底能不能解放我们的生产力!
Part 01:PaperBanana 是什么
一句话解释,他是帮助你直接生成图片的AI工具
在正式动手前,我们先用一句话看懂它的工作原理。
传统 AI 画图在搞学术图时往往是“灾难”,因为它们不懂结构、字会打错、而且无法精准控制。
而 PaperBanana 聪明的地方在于,它不是一个大模型在孤军奋战,而是组建了一个“科研画图流水线,它由五个Agent构成:
Retrieval Agent:根据你的论文描述,去数据库里检索相关的优秀学术插画作为“参考样式”。
Planning Agent:把大段的文本拆解成一环扣一环的视觉逻辑逻辑和布局。
Styling Agent:负责配色、线条、字体等学术规范的制定。
Visualization Agent:这是核心! 它不直接生成像素图,而是调用代码去生成 SVG 矢量图 或相应的绘图代码。
批判智能体(Critique Agent):扮演“毒舌审稿人”,不断挑刺并要求前面的 Agent 迭代修改,直到完美。
Part 02:环境准备
step 1:
因为 PaperBanana 运行涉及多 agent 协同、代码生成以及本地代码沙箱的自动编译,需要在 Linux 或者 Windows 的 WSL2 环境下运行。
在终端中克隆源码并建立 Python 环境:
Bashgit clone https://github.com/dwzhu-pku/PaperBanana.gitcd PaperBananaconda create -n banana python=3.10 -yconda activate bananapip install -r requirements.txt
Step 2:
PaperBanana 的输出结果取决于模型的逻辑推理和代码编写skill。
我们这里先以接入 千问最新也是最强大的模型,qwen3.7-max 为例。
在项目根目录下修改配置文件 config.yaml,填入 API 接入数据:
YAML
llm:model:"qwen3.7-max"api_key:"sk-xxxxxx你的百炼API_KEYxxxxxx"base_url:"https://dashscope.aliyuncs.com/compatible-mode/v1"preserve_thinking: true
Part 03:实操演练
我们来给大家演示一遍
为了更好地进行实际操作。现在以:绘制一个基于大模型的检索增强生成 RAG 工作流系统架构图,为目的来生图看看效果。
Step 1:攥写 Prompt
在项目根目录下新建 my_task.txt 文件,比如可以这样说
“我设计了一个双路 RAG 系统。用户输入问题后,左路通过向量数据库检索文本密集向量,右路通过知识图谱检索实体关系。最后由一个重排 Rerank 模型融合,再输入给大模型生成最终答案。请帮我绘制这个系统的架构图,要求配色具有学术科技感(如深蓝/科技灰),要素完整,模块间箭头指向清晰。”
Step 2:启动多Agent 流水线
在终端中执行这个脚本:
Bashpython generate_figure.py --prompt_file my_task.txt --output_dir ./outputs/rag_flow
这条指令的作用是启动 PaperBanana 的多 agent 协作流水线,读取你写好的文字prompt,并在指定的本地目录中自动编译生成最终的科研插图。
此时终端会显示
Qwen3.7 运行的多个 agent 的交互记录:[Retrieval Agent] 正在利用 1M 超长上下文检索相似架构图作为参考...
[Planning Agent] 启动深度思考,拆解出了 5 个核心模块和 4 条数据流向...
[Styling Agent] :正在负责搭配配色、线条、字体等
[Visualization Agent] 正在疯狂编写、编译 SVG 矢量代码,没有任何语法截断!
[Critique Agent] 扮演“毒舌审稿人”:“检测到重排模块到大模型的箭头有点歪,且少了一个标签,正在命令可视化模块精修重画……”
Step 3:结果输出
运行结束后,在 ./outputs/rag_flow 文件夹中包含以下内容:
1、final_figure.svg —— SVG 格式的插画文件。这就是我们想要的结果
该文件可以导入 Word 或 LaTeX,在放大操作下不发生模糊。
2.source_code.py —— 对应代码文件。修改文字或调整箭头可以通过编辑代码完成。
当然也有同学问,我直接用gpt或者gemini生图不就好了吗,为什么还需要这么多步骤来安装个效果可能不显人意的skill呢?
这个问题问得好,我就拿目前市面上最主流的生图模型,gpt image 2,来对比给大家说下paper banana相比于gpt image 2的生图优势:
1. “符号逻辑控制” vs “概率像素猜测”
PaperBanana 将绘图任务转化为代码编写。代码编译后,图表中的各个模块和箭头在几何位置上具有稳定性,不会有随机错误。
GPT-5.5 的系统是基于像素关联概率进行像素合成。系统内部没有建立数据结构和实体关系的逻辑定义。说白了,它输出的图形中容易出现虚线和实线重叠,或者箭头无法对齐模块的错位问题。
2. “无限分辨率与后期编辑” vs “不可修改的像素”
PaperBanana 输出的代码可以生成纯文本形式的 SVG 矢量图。
也就是可以把文件导入编辑软件。通过点击和拖拽来改变框体尺寸,或者双击修改文本内容。这样图片生成后可以对他进行微调。
GPT-5.5 输出的是 PNG 或 JPG 格式的像素图片。
用户如果需要修改图中的术语,只能通过重绘功能更新特定区域。在修改像素的过程中,系统会改变局部的字体和背景色,导致修改区域与整张图产生差异。
3. “纠错机制” vs “单向输出”
PaperBanana 采用了包含多 agent 的架构。系统内部设置了负责审查纠错的 agent。
也就是说,编写代码完成后,审查组件会检查文字遮挡情况、模块对齐参数以及线条的交叉状态。如果图形有缺陷,该Agent会驳回结果并向编写Agent提供修改指令,让Agent对他进行多次调整。
GPT-5.5 接收指令并输出图片,其运行过程属于单向流程。生成机制不包含对输出图形的质量检测和文字纠错功能。
除此之外,paper banana还有其他特点,大家可以去试一试。
原文链接:https://github.com/dwzhu-pku/PaperBanana