Skip to content

This is the official implementation for Human-Agent Collaborative Paper-to-Page Crafting for Under $0.1.

License

Notifications You must be signed in to change notification settings

AutoLab-SAI-SJTU/AutoPage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

14 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

AutoPage: Human-Agent Collaborative Paper-to-Page Crafting for Under $0.1

If you find our work useful, please consider giving us a star🌟

πŸ”₯ News

  • [2025.10.20] We release the paper, code and project pages (Refresh the page to see a new version each time).

πŸ“ TODO

  • Code Release
  • Paper Release
  • Datasets
  • Huggingface Demo

πŸ“‹ Table of Contents

πŸ”Ž Overview

To address the questions "How to create a webpage from an academic paper?" and "How to evaluate the project webpage?", we propose AutoPage and PageBench. AutoPage transforms academic papers into polished, published-ready project webpages through a human-in-the-loop multi-agent pipeline, while PageBench provides automatic evaluation across content quality and visual design quality dimensions.

Overall

πŸ“š Pipeline

AutoPage is a human-agent collaborative multi-agent system that transforms PDF documents into HTML project pages through interactive human feedback. AutoPage Overview

πŸ› οΈ Installation

πŸ”§ Setup

Environment

conda create -n autopage python=3.10
conda activate autopage
pip install -r requirements.txt
conda install -c conda-forge poppler

And install the Playwright

playwright install

API Key

Create the .env file under the root path and add your API key (e.g., GEMINI_API_KEY, OPENAI_API_KEY, OPENROUTER_API_KEY):

OPENAI_API_KEY=<your_openai_api_key>
GEMINI_API_KEY=<your_gemini_api_key>
OPENROUTER_API_KEY=<your_openrouter_api_key>

to the .env file


πŸš€ Quick Start

Create a folder named {pdfs} under {AutoPage}, and place your paper inside it as a PDF file named paper_name.pdf.

πŸ“ {AutoPage}/
└── πŸ“ {pdfs}/
    └── πŸ“„ paper_name.pdf

To use open-source models, you need to first deploy them using vLLM, ensuring the port is correctly specified in the get_agent_config() function in utils/wei_utils.py.

  • [High Performance And Fast] Generate a poster with GPT-4o-mini or gemini-2.5-flash:

You can select a template from the templates folder or define a template style. A. If you will define the style, please leave template_dir and template_file empty and select background_color, has_navigation, has_hero_section, title_color, page_density, image_layout . B. If you have selected a template from the templates folder, as an example, please fill in the template_dir and template_file with templates/airi-institute.github.io and templates/airi-institute.github.io/HairFastGAN/index.html.

dataset_dir="pdfs"
paper_name="pdf_name"  # your_pdf_name

python -m ProjectPageAgent.main_pipline\
    --paper_path="${dataset_dir}/${paper_name}.pdf" \  # Do not change
    --model_name_t="your_text_model" \      # LLM
    --model_name_v="your_vlm_model" \       # VLM
    --template_root="templates" \           # Do not change
    --template_dir="your_template_dir" \
    --template_file="your_template_file" \
    --output_dir="generated_project_pages" \ 
    --full_content_check_times=2 \    
    --html_check_times=2 \          
    --resume='parse_pdf' \         
    --human_input='1' \          # Is human feedback required?
    --background_color='dark' \  # Background color ,choose in ['light', 'dark']
    --has_navigation="yes" \     # choose in ['yes', 'no']
    --has_hero_section="no" \    # choose in ['yes', 'no']
    --title_color="colorful" \   # choose in ['pure', 'colorful']
    --page_density="compact" \   # choose in ['spacious', 'compact']
    --image_layout="rotation"    # choose in ['rotation', 'parallelism']
    

AutoPage supports flexible combination of LLM / VLM, feel free to try other options, or customize your own settings in get_agent_config() in utils/wei_utils.py.

πŸ’» Start with Gradio

If you prefer to run it in the frontend, just use the gradio via:

python app.py

πŸ“Ή Demo Video

We provide a complete Gradio demo video that demonstrates how to use AutoPage to generate project webpages from academic papers:

demo_video.mp4

You can watch this video to understand the complete usage workflow and interface operations.

πŸ“ Evaluation

In evaluation, project pages are stored under a directory called generated_project_pages.

To evaluate a generated webpage :

python -m PageEval.page_eval\
    --paper_name="your_paper_name" \
    --html_path="yout_generated_html_path" \  # e.g ,generated_project_pages/AutoPage/index.html
    --vlm_name="gemini-2.5-flash" \      # VLM
    --llm_name="gemini-2.5-flash"        # LLM
   

βš™οΈ Add Model for Camel

AutoPage is based on CAMEL, and the configuration file may not contain all the models you need. If you need to add a new model, please follow the steps below:

  1. Open file utils/wei_utils.py , add elif in function get_agent_config and set it up like below:
elif model_type == 'qwen-long':   # The name you use when calling
      agent_config = {
          "model_type": ModelType.QWEN_LONG,      # ModelType
          "model_config": QwenConfig().as_dict(),  # Confirm the model manufacturer you are using
          'model_platform': ModelPlatformType.QWEN, # Confirm the model ModelPlatformType you are using
      }
  1. open file camel/types/enums.py, add ModelType using the above example:
  QWEN_LONG = "qwen-long"  # must be the formal name of the model in " " 

  def is_qwen(self) -> bool:
      return self in {
          ModelType.QWEN_MAX,
          ModelType.QWEN_PLUS,    
          ModelType.QWEN_TURBO,
          ModelType.QWEN_LONG,        # This is newly added
          ModelType.QWEN_VL_MAX,
          ModelType.QWEN_VL_PLUS,
          ModelType.QWEN_MATH_PLUS,
          ModelType.QWEN_MATH_TURBO,
          ModelType.QWEN_CODER_TURBO,
          ModelType.QWEN_2_5_CODER_32B,
          ModelType.QWEN_2_5_VL_72B,
          ModelType.QWEN_2_5_72B,
          ModelType.QWEN_2_5_32B,
          ModelType.QWEN_2_5_14B,
          ModelType.QWEN_QWQ_32B,
          ModelType.QWEN_QVQ_72B,
          ModelType.QWEN_QWQ_PLUS,
          ModelType.QWEN_PLUS_LATEST,
          ModelType.QWEN_PLUS_2025_04_28,
          ModelType.QWEN_TURBO_LATEST,
          ModelType.QWEN_TURBO_2025_04_28,
          ModelType.QWEN_3_CODER_PLUS,
      }

Following the same way you can add any model supported by Camel

βœ’οΈ Citation

If you find AutoPage useful for your research and applications, please kindly cite our paper using this BibTeX:

@misc{ma2025paper2page,
      title={Human-Agent Collaborative Paper-to-Page Crafting for Under $0.1}, 
      author={Qianli Ma and Siyu Wang and Yilin Chen and Yinhao Tang and Yixiang Yang and Chang Guo and Bingjie Gao and Zhening Xing and Yanan Sun and Zhipeng Zhang},
      year={2025},
      eprint={2510.19600},
      archivePrefix={arXiv},
      primaryClass={cs.SE},
      url={https://arxiv.org/abs/2510.19600}, 
}

❀️ Acknowledgement

✍️ AutoPage Contributers

Order is based on the time joining the project:

Qianli Ma, Yinhao Tang, Siyu Wang, Yilin Chen, Zhening Xing.

πŸ€— Open-Sourced Repositories

This project wouldn't be possible without the following open-sourced repositories: CAMEL, Docling, and Paper2Poster.

Thanks to all the contributors for their great work!

Paper2Anything Family

AutoPage represents a crucial component of the Paper2Anything ecosystem, which is dedicated to the automated transformation of academic papers into diverse presentation formats. This rapidly evolving field has witnessed the emergence of numerous innovative works from the research community, collectively advancing the frontiers of academic content automation:

🎯 Related Projects

πŸͺ§ Poster

  • Paper2Poster - Automated generation of academic posters from research papers, featuring multiple template designs and layout configurations
  • P2P - An AI-powered tool that automatically converts academic research papers into professional conference posters.

πŸ“½ Video

  • Paper2Video - Automatic Video Generation from Scientific Papers
  • Preacher - An intelligent agent system that automatically transforms scientific papers into video abstracts.
  • PresentAgent - A multimodal agent that transforms long-form documents into narrated presentation videos.

πŸ“ Promotional Post

  • AutoPR - Automated generation of press releases and media materials from academic papers, suitable for public communication and science outreach

πŸ“‘ Slides

  • PPTAgent - An innovative system that automatically generates presentations from documents.

πŸ€– AI Agents

  • Paper2Agent - A multi-agent AI system that automatically transforms research papers into interactive AI agents with minimal human input

About

This is the official implementation for Human-Agent Collaborative Paper-to-Page Crafting for Under $0.1.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5