中文 | English
✨ 专注论文多模态工作流:从论文 PDF/截图/文本,一键生成模型示意图、技术路线图、实验图和演示文稿 ✨
| 📄 Universal File Support | 🎯 AI-Powered Generation | 🎨 Custom Styling | ⚡ Lightning Speed |
Tip
🆕 2026-02-02 · Paper2Rebuttal 更新
新增反驳意见草拟与修改建议,支持结构化回复与图文要点对齐。
Tip
🆕 2026-01-28 · Drawio 更新
新增 Drawio 支持,用于可视化图示的快速创作与展示输出。
KB 一句话概括:支持多文件 PPT 生成(文档转换/合并 + 图片注入 + 向量检索增强)。
Tip
🆕 2026-01-20 · Bug 修复
修复了实验数据图生成的图片和文本 bug,并解决了历史文件缺失的问题。
🌐 在线体验:http://dcai-paper2any.nas.cpolar.cn/
Tip
🆕 2025-12-12 · Paper2Figure 网页端公测上线
支持一键生成多种可编辑科研绘图(模型架构图 / 技术路线图 / 实验数据图)
🌐 在线体验:http://dcai-paper2any.nas.cpolar.cn/
- 2025-10-01 · 发布
0.1.0首个版本
从论文 PDF / 图片 / 文本出发,一键生成可编辑的科研绘图、演示文稿、视频脚本、学术海报等多模态内容。
Paper2Any 当前包含以下几个子能力:
- 📊 Paper2Figure - 可编辑科研绘图:模型架构图、技术路线图(PPT + SVG)与实验数据图,输出可编辑 PPTX。
- 🧩 Paper2Diagram / Image2Drawio - 可编辑流程图:从论文/文本或图片生成 Drawio 图,支持 drawio/png/svg 导出与对话式编辑。
- 🎬 Paper2PPT - 可编辑演示文稿:论文/文本/主题一键生成,支持超长文档与表格/图表抽取。
- 📝 Paper2Rebuttal:自动生成结构化反驳草稿与修改建议,辅助审稿意见回复。
- 🖼️ PDF2PPT - 版式保留转换:精准保留版式的 PDF → 可编辑 PPTX。
- 🖼️ Image2PPT - 图片转 PPT:将图片或截图快速转换为结构化幻灯片。
- 🎨 PPTPolish 智能美化:基于 AI 的排版优化与风格迁移。
- 🎬 Paper2Video:生成讲解视频脚本与配音素材。
- 📚 知识库(KB):文件入库/向量化、语义检索,以及 KB 驱动的 PPT/播客/思维导图生成。
🐳 Docker 快速启动(推荐)— 部署与更新
# 1. 克隆仓库
git clone https://github.com/OpenDCAI/Paper2Any.git
cd Paper2Any
# 2. 后端环境变量(用于 API Key/模型配置)
cp fastapi_app/.env.example fastapi_app/.env
# 3. 构建并启动
docker compose up -d --build访问地址:
修改与更新:
- 代码或
.env变更后重新构建:docker compose up -d --build - 拉取最新代码并重建:
git pulldocker compose up -d --build
常用命令:
- 查看日志:
docker compose logs -f - 停止服务:
docker compose down
说明:
- 首次构建会比较慢(系统依赖 + Python 依赖)。
- 前端配置在构建期生效(compose build args),修改后需重新
docker compose up -d --build。 - 输出和模型目录会挂载到宿主机(
./outputs、./models),数据不会丢。
建议使用 Conda 创建隔离环境(推荐 Python 3.11)。
# 0. 创建并激活 conda 环境
conda create -n paper2any python=3.11 -y
conda activate paper2any
# 1. 克隆仓库
git clone https://github.com/OpenDCAI/Paper2Any.git
cd Paper2Any
# 2. 安装基础依赖
pip install -r requirements-base.txt
# 3. 开发模式安装
pip install -e .Paper2Any 涉及 LaTeX 渲染、矢量图处理以及 PPT/PDF 转换,需要额外依赖:
# 1. Python 依赖
pip install -r requirements-paper.txt || pip install -r requirements-paper-backup.txt
# 2. LaTeX 引擎 (tectonic) - 推荐用 conda 安装
conda install -c conda-forge tectonic -y
# 3. 解决 doclayout_yolo 依赖冲突(重要)
pip install doclayout_yolo --no-deps
# 4. 系统依赖 (Ubuntu 示例)
sudo apt-get update
sudo apt-get install -y inkscape libreoffice poppler-utils wkhtmltopdfexport DF_API_KEY=your_api_key_here
export DF_API_URL=xxx # 可选:如需使用第三方 API 中转站
export MINERU_DEVICES="0,1,2,3" # 可选:MinerU 任务 GPU 资源池📝 点击展开:详细的 .env 配置指南
Paper2Any 使用两个 .env 文件进行配置。两者都是可选的 - 您可以使用默认设置运行应用程序。
# 复制后端环境文件
cp fastapi_app/.env.example fastapi_app/.env
# 复制前端环境文件
cp frontend-workflow/.env.example frontend-workflow/.envSupabase(可选) - 仅在需要用户认证和云存储时配置:
SUPABASE_URL=https://your-project-id.supabase.co
SUPABASE_ANON_KEY=your_supabase_anon_key模型配置 - 自定义不同工作流使用的模型:
# 默认 LLM API 地址
DEFAULT_LLM_API_URL=http://123.129.219.111:3000/v1/
# 工作流级别默认值
PAPER2PPT_DEFAULT_MODEL=gpt-5.1
PAPER2PPT_DEFAULT_IMAGE_MODEL=gemini-3-pro-image-preview
PDF2PPT_DEFAULT_MODEL=gpt-4o
# ... 完整列表请查看 .env.exampleLLM 提供商配置 - 控制 UI 中的 API 端点下拉菜单:
# UI 中显示的默认 API 地址
VITE_DEFAULT_LLM_API_URL=https://api.apiyi.com/v1
# 下拉菜单中的可用 API 地址(逗号分隔)
VITE_LLM_API_URLS=https://api.apiyi.com/v1,http://b.apiyi.com:16888/v1,http://123.129.219.111:3000/v1修改 VITE_LLM_API_URLS 后的效果:
- 前端会显示一个下拉菜单,包含您指定的所有 URL
- 用户可以选择不同的 API 端点,无需手动输入 URL
- 适用于在 OpenAI、本地模型或自定义 API 网关之间切换
Supabase(可选) - 如需用户认证,取消注释这些行:
VITE_SUPABASE_URL=https://your-project.supabase.co
VITE_SUPABASE_ANON_KEY=your-anon-key
SUPABASE_SERVICE_ROLE_KEY=your-service-role-key
SUPABASE_JWT_SECRET=your-jwt-secret如果跳过 Supabase 配置:
- ✅ 所有核心功能正常工作
- ✅ CLI 脚本无需任何配置即可使用
- ❌ 无用户认证或配额限制
- ❌ 无云文件存储
Note
快速开始: 您可以完全跳过 .env 配置,直接使用 CLI 脚本并通过 --api-key 参数传递密钥。详见下方 CLI 脚本 部分。
高级配置:本地模型服务负载均衡
如果是本地部署高并发环境,可以使用 script/start_model_servers.sh 启动本地模型服务集群(MinerU / SAM / OCR)。
脚本位置:/DataFlow-Agent/script/start_model_servers.sh
主要配置项说明:
-
MinerU (PDF 解析)
MINERU_MODEL_PATH: 模型路径 (默认models/MinerU2.5-2509-1.2B)MINERU_GPU_UTIL: 显存占用比例 (默认 0.2)- 实例配置: 脚本默认在 GPU 0 和 GPU 4 上各启动 4 个实例 (共 8 个),端口范围 8011-8018。
- Load Balancer: 端口 8010,自动分发请求。
-
SAM (Segment Anything Model)
- 实例配置: 默认在 GPU 2 和 GPU 3 上各启动 1 个实例,端口 8021-8022。
- Load Balancer: 端口 8020。
-
OCR (PaddleOCR)
- 配置: 运行在 CPU 上,使用 uvicorn 的 worker 机制 (默认 4 workers)。
- 端口: 8003。
使用前请根据实际 GPU 数量和显存情况修改脚本中的
gpu_id和实例数量。
Note
目前推荐优先在 Linux / WSL 环境下体验 Paper2Any。 若你需要在 原生 Windows 上部署,请按以下步骤操作。
# 0. 创建并激活 conda 环境
conda create -n paper2any python=3.12 -y
conda activate paper2any
# 1. 克隆仓库
git clone https://github.com/OpenDCAI/Paper2Any.git
cd Paper2Any
# 2. 安装基础依赖
pip install -r requirements-win-base.txt
# 3. 开发模式安装
pip install -e .Paper2Any 涉及 LaTeX 渲染与矢量图处理,需要额外依赖(见 requirements-paper.txt):
# Python 依赖
pip install -r requirements-paper.txt
# tectonic:LaTeX 引擎(推荐用 conda 安装)
conda install -c conda-forge tectonic -y🎨 安装 Inkscape(SVG/矢量图处理|推荐/必装)
- 下载并安装(Windows 64-bit MSI):Inkscape Download
- 将 Inkscape 可执行文件目录加入系统环境变量 Path(示例):
C:\Program Files\Inkscape\bin\
Tip
配置 Path 后建议重新打开终端(或重启 VS Code / PowerShell),确保环境变量生效。
发布页参考:vllm-windows releases 推荐版本:0.11.0
pip install vllm-0.11.0+cu124-cp312-cp312-win_amd64.whlImportant
请确保 .whl 与当前环境匹配:
- Python:cp312(Python 3.12)
- 平台:win_amd64
- CUDA:cu124(需与你本机 CUDA/驱动适配)
Paper2Any - 论文工作流 Web 前端(推荐)
# 启动后端 API
cd fastapi_app
uvicorn main:app --host 0.0.0.0 --port 8000
# 启动前端(新终端)
cd frontend-workflow
npm install
npm run dev配置前端代理
修改 frontend-workflow/vite.config.ts 中的 server.proxy:
export default defineConfig({
plugins: [react()],
server: {
port: 3000,
open: true,
allowedHosts: true,
proxy: {
'/api': {
target: 'http://127.0.0.1:8000', // FastAPI 后端地址
changeOrigin: true,
},
},
},
})访问 http://localhost:3000
Windows 加载 MinerU 预训练模型
# PowerShell环境下启动
vllm serve opendatalab/MinerU2.5-2509-1.2B `
--host 127.0.0.1 `
--port 8010 `
--logits-processors mineru_vl_utils:MinerULogitsProcessor `
--gpu-memory-utilization 0.6 `
--trust-remote-code `
--enforce-eager# 启动后端 API
cd fastapi_app
uvicorn main:app --host 0.0.0.0 --port 8000
# 启动前端(新终端)
cd frontend-workflow
npm install
npm run dev访问 http://localhost:3000。
Paper2Any 提供独立的 CLI 脚本,支持命令行参数输入,可直接执行工作流,无需启动 Web 前后端。
通过环境变量配置 API 访问(可选):
export DF_API_URL=https://api.openai.com/v1 # LLM API 地址
export DF_API_KEY=sk-xxx # API 密钥
export DF_MODEL=gpt-4o # 默认模型1. Paper2Figure CLI - 生成科学图表(3种类型)
# 从 PDF 生成模型架构图
python script/run_paper2figure_cli.py \
--input paper.pdf \
--graph-type model_arch \
--api-key sk-xxx
# 从文本生成技术路线图
python script/run_paper2figure_cli.py \
--input "Transformer 架构与注意力机制" \
--input-type TEXT \
--graph-type tech_route
# 生成实验数据可视化图表
python script/run_paper2figure_cli.py \
--input paper.pdf \
--graph-type exp_data图表类型: model_arch(模型架构图)、tech_route(技术路线图)、exp_data(实验数据图)
2. Paper2PPT CLI - 将论文转换为 PPT 演示文稿
# 基础用法
python script/run_paper2ppt_cli.py \
--input paper.pdf \
--api-key sk-xxx \
--page-count 15
# 自定义风格
python script/run_paper2ppt_cli.py \
--input paper.pdf \
--style "学术风格;中文;现代设计" \
--language zh3. PDF2PPT CLI - 一键将 PDF 转换为可编辑 PPT
# 基础转换(无 AI 增强)
python script/run_pdf2ppt_cli.py --input slides.pdf
# 启用 AI 增强
python script/run_pdf2ppt_cli.py \
--input slides.pdf \
--use-ai-edit \
--api-key sk-xxx4. Image2PPT CLI - 将图片转换为可编辑 PPT
# 基础转换
python script/run_image2ppt_cli.py --input screenshot.png
# 启用 AI 增强
python script/run_image2ppt_cli.py \
--input diagram.jpg \
--use-ai-edit \
--api-key sk-xxx5. PPT2Polish CLI - 美化现有 PPT 文件
# 基础美化
python script/run_ppt2polish_cli.py \
--input old_presentation.pptx \
--style "学术风格,简洁大方" \
--api-key sk-xxx
# 使用参考图片保持风格一致性
python script/run_ppt2polish_cli.py \
--input old_presentation.pptx \
--style "现代简约风格" \
--ref-img reference_style.png \
--api-key sk-xxxNote
PPT2Polish 系统要求:
- LibreOffice:
sudo apt-get install libreoffice(Ubuntu/Debian) - pdf2image:
pip install pdf2image - poppler-utils:
sudo apt-get install poppler-utils
所有 CLI 脚本都支持以下通用选项:
--api-url URL- LLM API 地址(默认:从DF_API_URL环境变量读取)--api-key KEY- API 密钥(默认:从DF_API_KEY环境变量读取)--model NAME- 文本模型名称(默认:各脚本不同)--output-dir DIR- 自定义输出目录(默认:outputs/cli/{脚本名称}/{时间戳})--help- 显示详细帮助信息
查看完整参数文档,可运行任意脚本并添加 --help 参数:
python script/run_paper2figure_cli.py --helpPaper2Any/
├── dataflow_agent/ # 核心代码库
│ ├── agentroles/ # Agent 定义
│ │ └── paper2any_agents/ # Paper2Any 专用 Agent
│ ├── workflow/ # Workflow 定义
│ ├── promptstemplates/ # Prompt 模板
│ └── toolkits/ # 工具集(绘图、PPT生成等)
├── fastapi_app/ # 后端 API 服务
├── frontend-workflow/ # 前端 Web 界面
├── static/ # 静态资源
├── script/ # 脚本工具
└── tests/ # 测试用例
| 功能 | 状态 | 子功能 |
|---|---|---|
| 📊 Paper2Figure 可编辑科研绘图 |
|
|
| 🧩 Paper2Diagram Drawio 绘图 |
|
|
| 🎬 Paper2PPT 可编辑演示文稿 |
|
|
| 🖼️ PDF2PPT 版式保留转换 |
|
|
| 🖼️ Image2PPT 图片转 PPT |
|
|
| 🎨 PPTPolish 智能美化 |
|
|
| 📚 知识库(KB) KB 工作流 |
|
|
| 🎬 Paper2Video 视频脚本生成 |
|
我们欢迎所有形式的贡献!
本项目采用 Apache License 2.0 开源协议。



















