Meissonic

viiikaApache-2.0活跃维护

用掩码生成式 Transformer 做高分辨率文生图的官方实现,把非自回归架构重新拉回实用水平,兼顾生成效率与画质。

[ICLR 2025] Official Implementation of Meissonic: Revitalizing Masked Generative Transformers for Efficient High-Resolution Text-to-Image Synthesis

暂无版本347star11fork同步于 2026-11-10 23:59 UTC

怎么上手

由 README 提炼,执行前请确认
git clone https://github.com/viiika/Meissonic/ && cd Meissonic
conda create --name meissonic python && conda activate meissonic
pip install -r requirements.txt
git clone https://github.com/huggingface/diffusers.git && cd diffusers && pip install -e .
python inference.py --prompt "Your creative prompt here"
硬件要求按 README 说明

README 给出 1024x1024、64 步、batch=1 的实测:FP32 约 12GB 显存、FP16 约 9.5GB、FP8 约 8.7GB,定位为消费级显卡可跑;FP8 量化需 CUDA 12.4 与 PyTorch 2.4.1。未说明 CPU 推理与具体 GPU 型号。

需要 CUDA
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

基于掩码生成 Transformer 的高分辨率文生图模型,能在消费级显卡上跑

用掩码生成式 Transformer 做高分辨率文生图的官方实现,把非自回归架构重新拉回实用水平,兼顾生成效率与画质。

核心能力

  • 非自回归掩码图像建模,支持最高 1024x1024 分辨率
  • 面向消费级 GPU 设计,FP16 下 1024 分辨率约 9.5GB 显存
  • 支持文生图与图生图,附带 inpaint/outpaint 脚本
  • 提供 FP8 量化推理,显存可降至约 8.7GB
  • 自带 Gradio Web UI 和命令行两种推理入口

容易踩的坑

必须额外从源码安装 diffusers(pip install -e .),用官方发布版可能不兼容;模型权重需从 Hugging Face 的 MeissonFlow/Meissonic 单独下载;FP8 量化对版本敏感,需 CUDA 12.4 + PyTorch 2.4.1 + TorchAO,Windows 装 TorchAO 要用 nightly 源。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

0 个版本

暂无 release 数据(可能没有发版,或尚未同步)。

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Meissonic: Revitalizing Masked Generative Transformers for Efficient High-Resolution Text-to-Image Synthesis

    arXiv Hugging Face GitHub YouTube YouTube Demo Replicate

    Hugging Face Demo

    arXiv

    arXiv Hugging Face GitHub

    arXiv Hugging Face GitHub Demo

    arXiv

    arXiv

    arXiv arXiv arXiv

    arXiv

    arXiv GitHub

    arXiv GitHub

    📝 Meissonic Updates and Family Papers

    Meissonic Demos

    🚀 Introduction

    Meissonic is a non-autoregressive mask image modeling text-to-image synthesis model that can generate high-resolution images. It is designed to run on consumer graphics cards.

    Architecture

    Key Features:

    • 🖼️ High-resolution image generation (up to 1024x1024)
    • 💻 Designed to run on consumer GPUs
    • 🎨 Versatile applications: text-to-image, image-to-image

    🛠️ Prerequisites

    Step 1: Clone the repository

    git clone https://github.com/viiika/Meissonic/
    cd Meissonic
    

    Step 2: Create virtual environment

    conda create --name meissonic python
    conda activate meissonic
    pip install -r requirements.txt
    

    Step 3: Install diffusers

    git clone https://github.com/huggingface/diffusers.git
    cd diffusers
    pip install -e .
    

    💡 Inference Usage

    Gradio Web UI

    python app.py
    

    Command-line Interface

    Text-to-Image Generation
    python inference.py --prompt "Your creative prompt here"
    
    Inpainting and Outpainting
    python inpaint.py --mode inpaint --input_image path/to/image.jpg
    python inpaint.py --mode outpaint --input_image path/to/image.jpg
    

    Advanced: FP8 Quantization

    Optimize performance with FP8 quantization:

    Requirements:

    • CUDA 12.4
    • PyTorch 2.4.1
    • TorchAO

    Note: Windows users install TorchAO using

    pip install --pre torchao --index-url https://download.pytorch.org/whl/nightly/cpu
    

    Command-line inference

    python inference_fp8.py --quantization fp8
    

    Gradio for FP8 (Select Quantization Method in Advanced settings)

    python app_fp8.py
    
    Performance Benchmarks
    Precision (Steps=64, Resolution=1024x1024)Batch Size=1 (Avg. Time)Memory Usage
    FP3213.32s12GB
    FP1612.35s9.5GB
    FP812.93s8.7GB

    🎨 Showcase

    🎓 Training

    To train Meissonic, follow these steps:

    1. Install dependencies:

      cd train
      pip install -r requirements.txt
      
    2. Download the Meissonic base model from Hugging Face.

    3. Prepare your dataset:

    4. Start training:

      bash train/train.sh
      

    Note: For custom datasets, you'll likely need to implement your own dataset class.

    📚 Citation

    If you find this work helpful, please consider citing:

    @article{bai2024meissonic,
      title={Meissonic: Revitalizing Masked Generative Transformers for Efficient High-Resolution Text-to-Image Synthesis},
      author={Bai, Jinbin and Ye, Tian and Chow, Wei and Song, Enxin and Chen, Qing-Guo and Li, Xiangtai and Dong, Zhen and Zhu, Lei and Yan, Shuicheng},
      journal={arXiv preprint arXiv:2410.08261},
      year={2024}
    }
    

    🙏 Acknowledgements

    We thank the community and contributors for their invaluable support in developing Meissonic. We thank [email protected] for making Meissonic Demo. We thank @NewGenAI and @飛鷹しずか@自称文系プログラマの勉強 for making YouTube tutorials. We thank @pprp for making fp8 and int4 quantization. We thank @camenduru for making jupyter tutorial. We thank @chenxwh for making Replicate demo and api. We thank Collov Labs for reproducing Monetico. We thank Shitong et al. for identifying effective design choices for enhancing visual quality.