WebSynthesis
April 10, 2026 ยท View on GitHub
World Model-Guided MCTS for Efficient WebUI-Trajectory Synthesis
WebSynthesis is a framework integrating world model learning and Monte Carlo Tree Search (MCTS), designed to significantly reduce the cost of online synthesis of high-quality Web UI trajectories. Through a two-stage curriculum, including UI fundamental understanding and UI behavior cloning, the policy agent acquires web navigation capabilities.

News
- [08/07/2025] ๐ Our Paper has been accepted as main conference in ACL 2026.
- [08/07/2025] ๐ข Our Paper is now available in Arxiv.
- [07/07/2025] ๐ข We upload some of the training data and LoRA weights.
- [06/07/2025] ๐ข We release the code of WebSynthesis.
Two-stage Curriculum Learning

Project Structure
The WebSynthesis project is organized as follows:
WebSynthesis/
โโโ config_files/ # Configuration files for different tasks (0.json, 1.json, ...)
โโโ data/ # Generated data from MCTS runs (created during execution)
โโโ figure/ # Images and figures used in the README and documentation
โโโ models/ # Model-related code
โ โโโ get_response.py # Functions for getting responses from models
โ โโโ models.py # Model definitions and implementations
โโโ utils/ # Utility functions and helper modules
โ โโโ new_obs_opt.py # New observation optimization utilities
โ โโโ obs_opt.py # Observation optimization utilities
โ โโโ prune_mcts.py # MCTS pruning utilities
โ โโโ query_llm.py # LLM query utilities
โ โโโ search_utils.py # Search utilities
โ โโโ text_utils.py # Text processing utilities
โ โโโ traj_utils.py # Trajectory utilities
โ โโโ treeNode.py # TreeNode implementation for MCTS
โโโ webMCTS/ # WebMCTS core implementation
โ โโโ base.py # Base classes for MCTS
โ โโโ mcts.py # MCTS algorithm implementation
โ โโโ prompt.py # Prompt templates for MCTS
โ โโโ task.py # Task definitions for MCTS
โโโ webmcts-ttraj/ # Traceable trajectories (created during execution)
โโโ webmcts-vtraj/ # Valuable trajectories (created during execution)
โโโ data/ # Data generated by MCTS runs (created during execution)
โโโ fuzzy_match.json # Fuzzy matching cache
โโโ merge.py # Script to merge and process MCTS data
โโโ README.md # Project documentation
โโโ run.py # Main script to run MCTS tasks
โโโ run.sh # Shell script to run MCTS on all config files
Key directories and files:
config_files/: Contains JSON configuration files for different MCTS tasks (numbered 0.json, 1.json, etc.)webMCTS/: Core implementation of the WebMCTS algorithmutils/: Helper modules for various functions like observation optimization, LLM querying, and trajectory processingmodels/: Model-related code for the world model, reward model, and policy agentsrun.py: Main entry point for running MCTS tasksrun.sh: Shell script to automatically run MCTS on all configuration filesmerge.py: Script to process and merge the generated MCTS data into valuable and traceable trajectories
Data Collection (MCTS)
-
Clone the GitHub Repository:
git clone https://github.com/LucusFigoGao/WebSynthesis.git -
Collection:
cd WebMCTS bash run.sh # run MCTS pyhton merge.py # merge the data
Data Resources
UI Fundamental Understanding
| Model Name | Base Model | Training Data | LoRA |
|---|---|---|---|
| TextUI-Cap-7B | Qwen2.5-Instruct-7B | TextUI-dense-caption-training-data | ๐ค link |
| TextUI-Func-7B | Qwen2.5-Instruct-7B | TextUI-functionality-training-data | ๐ค link |
| TextUI-Trans-7B | Qwen2.5-Instruct-7B | TextUI-state-transition-training-data | ๐ค link |
UI Behavior Cloning
| Model Name | Base Model | Training Data | LoRA |
|---|---|---|---|
| WebSynthesis-7B | Qwen2.5-Instruct-7B | WebSynthesis-training-data | ๐ค coming soon |
| OS-Genesis-TextUI-7B | Qwen2.5-Instruct-7B | OS-Genesis-training-data | ๐ค coming soon |
Collection of World Model State Transition
| Model Name | Base Model | Training Data | LoRA |
|---|---|---|---|
| World Model 7B | Qwen2.5-Instruct-7B | world-model-training-data | ๐ค coming soon |
๐ Many thanks to the following open-source projects for their raw data contributions:
- [ICLR'25] OS-Genesis-Web-Data
- [ACL'25] AgentTrek-Web-Data
- [ICLR'24] WebArena-Web-Data
Main Experiment

Ablation Studies

Scaling Analysis

Case Study on WebMCTS

Case Study on World Model

Citation ๐
๐ซถ If you are interested in our work or find this repository / our data helpful, please consider using the following citation format when referencing our paper:
@misc{gao2025websynthesisworldmodelguidedmctsefficient,
title={WebSynthesis: World-Model-Guided MCTS for Efficient WebUI-Trajectory Synthesis},
author={Yifei Gao and Junhong Ye and Jiaqi Wang and Jitao Sang},
year={2025},
eprint={2507.04370},
archivePrefix={arXiv},
primaryClass={cs.AI},
url={https://arxiv.org/abs/2507.04370},
}