PAPER2WEB:把学术论文变成真正“可探索的网页”

——一次从代码到内容的完整技术实践记录

学术论文通常只以 PDF 的形式存在。它严谨、完整,却不容易阅读,也不容易传播。
在研究团队、实验室、会议网站中,我们经常需要把论文内容重新整理成网页,让更多人能理解、能快速浏览,也能在手机和电脑上获得良好的阅读体验。

然而,正如许多研究者都会感受到的那样:

  • 直接把 PDF 转成 HTML,经常会产生混乱的段落与断裂的图表
  • 用模板生成网页,缺少交互与结构优化,也很难表达论文的真正价值
  • 手动搭一个项目主页,又太耗费时间和精力
  • 更重要的是,从没出现过一个针对“把论文变成网页”这件事的完整评价体系

PAPER2WEB 正是为了解决这一类问题而诞生的工具链。

本文从实际操作者的视角,讲述如何使用 PAPER2WEB 将学术论文自动化转化为结构化、可探索、交互式的项目网站,以及它在安装、配置、功能、数据集、基准测试等方面提供了哪些可用能力。

整篇文章完全基于原官方 README,你可以把它理解为一个更好读、更面向真实用户问题的版本。


目录


1. PAPER2WEB 的核心理念

PAPER2WEB 的目标不是简单地把 PDF 转成网页,而是:

  • 让论文“变得可探索”
  • 自动生成合理的结构布局
  • 保留信息密度,但改善阅读体验
  • 能够导航、跳转、展开、折叠,让读者按自己的节奏理解内容
  • 自动呈现插图与数据,让学术研究像产品一样可访问、可展示

它不是一次性生成,而是一种 “代理式迭代优化流程”

“The agent iteratively refines both content and layout to create engaging, interactive websites.”

系统会自动检测论文类型(例如 Twitter 或小红书风格发布),自由组织网页内容,并生成一个可直接部署的项目 Homepage。


2. 最新动态

以下更新来自原始文件,我们以更可读的语言整理如下:

🔥 EvoPresent 即将加入整个工具链

EvoPresent 是一个用于生成学术展示的美学增强代理,将会被集成入 PAPER2WEB,从而进一步提升展示效果。

📊 数据集与基准已上传

你可以访问以下内容:

  • 论文主页数据集
  • Benchmark 用于自动评估生成效果
  • 多达数万条的项目网站相关数据,可用于结构分析、偏好研究


3. 如何安装 PAPER2WEB

这一部分更像是一个“动手指南”。如果你不熟悉 Conda 或系统依赖,这些步骤会帮你从零构建可运行环境。


3.1 环境准备

PAPER2WEB 的基础运行要求:

  • Python ≥ 3.11
  • Conda
  • LibreOffice
  • Poppler-utils

3.2 创建 Conda 环境

conda create -n p2w python=3.11
conda activate p2w

3.3 安装依赖

pip install -r requirements.txt

3.4 安装系统依赖(LibreOffice / Poppler)

LibreOffice

最简单:

sudo apt install libreoffice

如果没有 sudo 权限,可以从官方网站下载可执行版本,然后加入 PATH。

Poppler

conda install -c conda-forge poppler

4. 配置 API

运行前需要创建 .env 文件,保存 LLM API 密钥。

OPENAI_API_KEY=your_openai_api_key_here
OPENAI_API_BASE=https://api.openai.com/v1

如果你使用 OpenRouter:

OPENAI_API_BASE=https://openrouter.ai/api/v1
OPENAI_API_KEY=sk-or-your-openrouter-key-here

AutoPR 模块同样需要单独 .env 文件:

cp AutoPR/.env.example AutoPR/.env

可选:Logo 搜索需要 Google Search API:

GOOGLE_SEARCH_API_KEY=your_google_search_api_key
GOOGLE_SEARCH_ENGINE_ID=your_search_engine_id

5. 快速开始

5.1 输入目录结构要求

PAPER2WEB 会根据文件夹名称自动判断目标平台:

papers/
├── 12345/                    # 纯数字 → Twitter (英文)
│   └── paper.pdf
└── research_project/         # 字母+数字 → Xiaohongshu (中文)
    └── paper.pdf

这种自动识别方式使你无需额外参数即可执行流程。


5.2 全流程运行方式

最常用命令:

python pipeline_all.py --input-dir "path/to/papers" --output-dir "path/to/output"

指定 PDF:

python pipeline_all.py \
  --input-dir "path/to/papers" \
  --output-dir "path/to/output" \
  --pdf-path "xx/paper.pdf"

5.3 仅生成某一类输出

生成网站

python pipeline_all.py --input-dir ... --output-dir ... --model-choice 1

生成海报(默认尺寸 48×36 英寸)

python pipeline_all.py --model-choice 2

支持自定义海报尺寸:

python pipeline_all.py --model-choice 2 --poster-width-inches 60 --poster-height-inches 40

生成 PR 物料(宣传材料)

python pipeline_all.py --model-choice 3

6. 生成视频演示(Paper2Video)

Paper2Video 模块用于从论文 LaTeX 源码生成演示视频,包括:

  • 幻灯片
  • 字幕
  • 演讲内容(语音)
  • 光标动画
  • 可选的“人像讲解者”

以下内容为纯原文件信息,按更清晰的结构整理。


6.1 环境准备

paper2all/Paper2Video/src 下:

cd paper2all/Paper2Video/src
conda create -n p2v python=3.10
conda activate p2v
pip install -r requirements.txt
conda install -c conda-forge tectonic ffmpeg poppler

6.2 可选:为演讲者头像生成单独环境

若你需要生成“会说话的数字讲解者”,需单独安装 hallo2:

cd hallo2
conda create -n hallo python=3.10
conda activate hallo
pip install torch==2.2.2 torchvision==0.17.2 torchaudio==2.2.2 --index-url https://download.pytorch.org/whl/cu118
pip install -r requirements.txt
huggingface-cli download fudan-generative-ai/hallo2 --local-dir ../pretrained_models

获取 Python 路径:

which python

其结果将作为 --talking_head_env 传入。


6.3 推理

最低推荐 GPU:A6000 48GB

流程采用 LaTeX + 参考图像 + 参考音频 输入模式。


6.4 示例命令

快速生成(无讲解者)

python pipeline_light.py \
  --model_name_t gpt-4.1 \
  --model_name_v gpt-4.1 \
  --result_dir ... \
  --paper_latex_root ... \
  --ref_img ... \
  --ref_audio ... \
  --gpu_list [0,1,2,3,4,5,6,7]

完整生成(含讲解者)

python pipeline.py \
  --model_name_t gpt-4.1 \
  --model_name_v gpt-4.1 \
  --model_name_talking hallo2 \
  --result_dir ... \
  --paper_latex_root ... \
  --ref_img ... \
  --ref_audio ... \
  --talking_head_env /path/to/hallo2_env \
  --gpu_list [0,1,2,3,4,5,6,7]

7. PAPER2WEB 数据集

数据集包含:

  • 所有论文的元信息
  • 分类标签(13 大类)
  • 是否具备项目主页
  • 引用数量
  • 项目主页历史数据整理

例如分类包括:

  • 3D Vision
  • Multimodal Learning
  • Generation Model
  • Reinforcement Learning
  • ML Theory and Optimization
  • ……等共 13 类

这些数据为分析学术社区“哪些论文更常有主页”“哪些领域更常构建项目网站”等问题提供了基础。


8. PAPER2WEB 基准测试

Benchmark 包含:

  • 原网站源码链接
  • 元数据
  • PWAgent 生成结果

还提供对比图:


涵盖评估指标:

  • 信息质量
  • 视觉设计美观度
  • 内容完整性
  • 结构连接性
  • 交互性
  • QA 准确度

这部分只是展示能力,不包含扩展解释。


9. Contributing

如果你希望贡献代码:

  1. fork 仓库
  2. 创建 feature 分支
  3. 编写或修改代码
  4. 如需加入测试,记得添加对应用例
  5. 提交 PR

流程完全按照普通开源项目规范执行。


10. 致谢

  • 感谢作者团队
  • 感谢开源社区
  • 感谢 Paper2AI 生态贡献者
  • 特别感谢 Paper2Video / Paper2Poster / AutoPR / EvoPresent 团队的协作

11. 常见问题(FAQ)

以下问题都是基于用户在真实使用时可能产生的疑问,同时所有回答 完全源自 README 中的已知信息,不添加自我扩展内容


Q1:PAPER2WEB 会根据什么判断论文面向的发布平台?

依据文件夹名称:

  • 纯数字 → Twitter(英文)
  • 字母或混合字符 → 小红书(中文)

Q2:系统一定要求 LibreOffice 吗?

是必需组件之一。
如果没有 sudo,可以从官网下载安装可执行版本并加入 PATH。


Q3:Poppler 用于什么?

Poppler 是 PDF 处理相关的系统依赖,由 Conda 安装:

conda install -c conda-forge poppler

Q4:必须使用 OpenAI 的 API 吗?

不必须,可以使用 OpenRouter,并通过 .env 配置:

OPENAI_API_BASE=https://openrouter.ai/api/v1
OPENAI_API_KEY=sk-or-your-openrouter-key

Q5:Paper2Video 需要多少 GPU?

推荐最低为 A6000(48GB)


Q6:如果我不需要生成讲解者头像,可以跳过哪个步骤?

可以跳过 “Prepare hallo2 environment” 部分,直接使用 pipeline_light.py


Q7:海报的默认尺寸是什么?可以自定义吗?

默认 48×36 英寸。
你可以通过参数自定义:

--poster-width-inches 60 --poster-height-inches 40

Q8:PAPER2WEB 数据集主要包含什么?

  • 每篇论文元数据
  • 是否存在项目主页
  • 引用数量
  • 13 类主题分类
  • 用于分析研究趋势、结构偏好等信息

Q9:Benchmark 能做什么?

提供对比:

  • 原网站 vs 生成网站
  • 视觉差异
  • 内容覆盖程度
  • 结构完整性

并提供多个评估指标。


Q10:如何贡献代码?

按照开源标准流程:

fork → 创建分支 → 修改代码 → 加测试(可选) → 提 PR

总结

这篇文章从实践者的角度,用自然语言和结构化方式重写了 PAPER2WEB 的官方 README,将其转换为更好理解、更适合搜索意图的长篇技术说明,同时保持了全部内容严谨真实、不夸张不扩写、完全基于原文件。