| [📝 ArXiv] | [📚 Project Website] | [🤗 PRBench] | [🔥 PRAgent Demo] |
This is the official implementation for "AUTOPR: LET'S AUTOMATE YOUR ACADEMIC PROMOTION!".
As the volume of peer-reviewed research surges, scholars increasingly rely on social platforms for discovery, while authors invest significant effort in promotion to sustain visibility and citations. This project aims to address that challenge.
We formalize AutoPR (Automatic Promotion), a new task to automatically translate research papers into faithful, engaging, and well-timed public-facing content. To accomplish this, we developed PRAgent, a modular agentic framework for automatically transforming research papers into promotional posts optimized for specific social media platforms.
- [2025-10-08] Our 🔥🔥 PRAgent 🔥🔥 and 🔥🔥 PRBench 🔥🔥 benchmark is released! You can download the dataset from here.
-
Create and activate a Conda environment (recommended):
conda create -n autopr python=3.11 conda activate autopr
-
Install the required dependencies:
pip install -r requirements.txt
Before running the code, you need to configure your Large Language Model (LLM) API keys and endpoints.
First, copy the example .env.example file to a new .env file:
cp .env.example .envThen, edit the .env file with your API credentials:
# Main API Base URL for text and vision models (e.g., OpenAI, Qwen, etc.)
OPENAI_API_BASE="https://api.openai.com/v1"
# Your API Key
OPENAI_API_KEY="sk-..."The scripts will automatically load these environment variables.
The entire workflow, from generation to evaluation, is managed through simple shell scripts.
Download the PRBench dataset from Hugging Face Hub. You can choose to download the full dataset or the core subset.
python download_and_reconstruct_prbench.py \
--repo-id yzweak/PRBench \
--subset core \ # or "full"
--output-dir evalYou also need to download the DocLayout-YOLO model. You can specify the path to the model using the --model-path argument in the generation script.
After generation, use the evaluation script to assess the quality of the posts in your output directory.
chmod +x scripts/run_eval.sh
./scripts/run_eval.shFinally, run the calculation script to aggregate the raw evaluation data into a formatted results table.
chmod +x scripts/calc_results.sh
./scripts/calc_results.shYou need to download the DocLayout-YOLO model. When running the generation script, you can specify the path to the model using the --model-path argument.
for example:
python3 pragent/run.py --model-path /path/to/your/model.pt ...First, prepare your input directory. The script automatically determines the target platform based on the folder name:
- Numeric folder name -> Twitter (English)
- Alphanumeric folder name -> Xiaohongshu (Chinese)
/path/to/your/papers/
├── 12345/ # Numeric -> will generate a Twitter-style post in English
│ └── paper.pdf
└── some_paper_name/ # Alphanumeric -> will generate a Xiaohongshu-style post in Chinese
└── paper.pdfIf you have run download_and_reconstruct.py, you can use the papers folder as input
Next, configure and run the generation script.
chmod +x scripts/run_pragent.sh
./script/run_generation.shIf interested in our work, please contact us at:
- Qiguang Chen: charleschen2333@gmail.com
- Zheng Yan: zyan@ir.hit.edu.cn
@misc{chen2025autopr,
title={AutoPR: Let's Automate Your Academic Promotion!},
author={Qiguang Chen and Zheng Yan and Mingda Yang and Libo Qin and Yixin Yuan and Hanjing Li and Jinhao Liu and Yiyan Ji and Dengyun Peng and Jiannan Guan and Mengkang Hu and Yantao Du and Wanxiang Che},
journal={arXiv preprint arXiv:2510.09558},
year={2025},
}







