Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

layout-prompter

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

layout-prompter

  • 0.1.0
  • PyPI
  • Socket score

Maintainers
1

LayoutPrompter: Awaken the Design Ability of Large Language Models (NeurIPS2023)

LayoutPrompter

LayoutPrompter is a versatile method for graphic layout generation, capable of solving various conditional layout generation tasks (as illustrated on the left side) across a range of layout domains (as illustrated on the right side) without any model training or fine-tuning.

Installation

pip install git+https://github.com/creative-graphic-design/layout-prompter

Results

We conduct experiments on three groups of layout generation tasks, including

  • constraint-explicit layout generation
  • content-aware layout generation
  • text-to-layout

Below are the qualitative results.

Constraint-Explicit Layout Generation

constraint-explicit

Content-Aware Layout Generation

content-aware

Text-to-Layout

text2layout

Installation

  1. Clone this repository
git clone https://github.com/microsoft/LayoutGeneration.git
cd LayoutGeneration/LayoutPrompter
  1. Create a conda environment
conda create -n layoutprompter python=3.8
conda activate layoutprompter
  1. Install PyTorch and other dependencies
conda install pytorch=1.13.1 torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia
pip install -r requirements.txt
pip install -e src/

Datasets

We use 4 datasets in this work, including RICO, PubLayNet, PosterLayout and WebUI. They can be downloaded from HuggingFace using the following commands:

git lfs install
git clone https://huggingface.co/datasets/KyleLin/LayoutPrompter

Move the contents to the dataset directory as follows:

dataset/
├── posterlayout
├── publaynet
├── rico
├── webui

Notebooks

We include three jupyter notebooks here, each corresponding to a type of layout generation task. They all consist of the following components:

  • Configuration
  • Process raw data
  • Dynamic exemplar selection
  • Input-output serialization
  • Call GPT
  • Parsing
  • Layout ranking
  • Visualization

Try it!

Citation

If you find this code useful for your research, please cite our paper:

@inproceedings{lin2023layoutprompter,
  title={LayoutPrompter: Awaken the Design Ability of Large Language Models},
  author={Lin, Jiawei and Guo, Jiaqi and Sun, Shizhao and Yang, Zijiang James and Lou, Jian-Guang and Zhang, Dongmei},
  booktitle={Thirty-seventh Conference on Neural Information Processing Systems},
  year={2023}
}

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc