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

scepter

Package Overview
Dependencies
Maintainers
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

scepter

  • 1.2.0
  • PyPI
  • Socket score

Maintainers
4

🪄SCEPTER

🪄SCEPTER is an open-source code repository dedicated to generative training, fine-tuning, and inference, encompassing a suite of downstream tasks such as image generation, transfer, editing. SCEPTER integrates popular community-driven implementations as well as proprietary methods by Tongyi Lab of Alibaba Group, offering a comprehensive toolkit for researchers and practitioners in the field of AIGC. This versatile library is designed to facilitate innovation and accelerate development in the rapidly evolving domain of generative models.

SCEPTER offers 3 core components:

🎉 News

  • [🔥🔥🔥2024.10]: We are pleased to announce the release of the code for ACE, supporting Customized Training / Comfy UI Workflow / gradio-based ChatBot Interface. The detailed documents can be found at ACE repo.
  • [2024.10]: Support for inference and tuning with FLUX, as well as for building ComfyUI workflows using this framework.
  • [2024.09]: We introduce ACE, an All-round Creator and Editor adept at executing a diverse array of image editing tasks tailored to your specifications. Built upon the cutting-edge Diffusion Transformer architecture, ACE has been extensively trained on a comprehensive dataset to seamlessly interpret and execute any natural language instruction. For further information, please consult the project page.
  • [2024.07]: Support the inference and training of open-source generative models based on the DiT architecture, such as SD3 and PixArt.
  • [2024.05]: Introducing SCEPTER v1, supporting customized image edit tasks! Simply provide 10 image pairs, SCEPTER will tune an edit tuner for your own Image-to-Image tasks, like Clay Style, De-Text, Segmentation, etc.
  • [2024.04]: New StyleBooth demo on SCEPTER Studio forText-Based Style Editing.
  • [2024.03]: We optimize the training UI and checkpoint management. New LAR-Gen model has been added on SCEPTER Studio, supporting zoom-out, virtual try on, inpainting.
  • [2024.02]: We release new SCEdit controllable image synthesis models for SD v2.1 and SD XL. Multiple strategies applied to accelerate inference time for SCEPTER Studio.
  • [2024.01]: We release SCEPTER Studio, an integrated toolkit for data management, model training and inference based on Gradio.
  • [2024.01]: SCEdit support controllable image synthesis for training and inference.
  • [2023.12]: We propose SCEdit, an efficient and controllable generation framework.
  • [2023.12]: We release 🪄SCEPTER library.

ACE

ACE is a unified foundational model framework that supports a wide range of visual generation tasks. By defining CU for unifying multi-modal inputs across different tasks and incorporating long-context CU, we introduce historical contextual information into visual generation tasks, paving the way for ChatGPT-like dialog systems in visual generation.

Watch the demo

ACE Training

We offer a demonstration training YAML that enables the end-to-end training of ACE using a toy dataset. For a comprehensive overview of the hyperparameter configurations, please consult scepter/methods/edit/dit_ace_0.6b_512.yaml.

Prepare datasets

Please find the dataset class located in scepter/modules/data/dataset/ms_dataset.py, designed to facilitate end-to-end training using an open-source toy dataset. Download a dataset zip file from modelscope, and then extract its contents into the cache/datasets/ directory.

Should you wish to prepare your own datasets, we recommend consulting scepter/modules/data/dataset/ms_dataset.py for detailed guidance on the required data format.

Prepare initial weight

The ACE checkpoint has been uploaded to both ModelScope and HuggingFace platforms:

In the provided training YAML configuration, we have designated the Modelscope URL as the default checkpoint URL. Should you wish to transition to Hugging Face, you can effortlessly achieve this by modifying the PRETRAINED_MODEL value within the YAML file (replace the prefix "ms://iic" to "hf://scepter-studio").

Start training

You can easily start training procedure by executing the following command:

PYTHONPATH=. python scepter/tools/run_train.py --cfg scepter/methods/edit/dit_ace_0.6b_512.yaml
ACE Chat Bot

We have developed a chatbot interface utilizing Gradio, designed to convert user input in natural language into visually captivating images that align semantically with the specified instructions. You can easily access this functionality by launching Scepter Studio with the following command:

PYTHONPATH=. python scepter/tools/webui.py --cfg scepter/methods/studio/scepter_ui.yaml --language zh

Upon starting, you will find a "ChatBot" tab within the Gradio application, which serves as a chat-based interface to handle any requests related to image editing or generation.

ACE ComfyUI Workflow

Workflow

ACE Workflow Examples
ControlSemanticElement

FLUX Tuners

Yarn StyleSoft Watercolor Style
Travel StyleWuKong Style

ComfyUI Workflow

Workflow

Example Workflow Case
Base+Mantra+Tuner+Control

🛠️ Installation

  • Create new environment with conda command:
conda env create -f environment.yaml
conda activate scepter
  • Install with pip command:

We recommend installing the specific version of PyTorch and accelerate toolbox xFormers. You can install these recommended version by pip:

pip install -r requirements/recommended.txt
pip install scepter

🧩 Generative Framework

Tutorials

DocumentationKey Features
TrainDDP / FSDP / FairScale / Xformers
InferenceDynamic load/unload
Dataset ManagementLocal / Http / OSS / Modelscope

Currently supported approaches

TasksMethodsLinks
Text-to-image GenerationSD v1.5Hugging Face Repo
Text-to-image GenerationSD v2.1Hugging Face Repo
Text-to-image GenerationSD-XLHugging Face Repo
Text-to-image GenerationFLUXHugging Face Repo
Efficient TuningLoRAArxiv   link
Efficient TuningRes-Tuning(NeurIPS23)Arxiv   link Page link
Controllable Image Synthesis🌟SCEdit(CVPR24)Arxiv   link Page link
Image Editing🌟LAR-GenArxiv   link Page link
Image Editing🌟StyleBoothArxiv   link Page link
Image Generation and Editing🌟ACEArxiv   link Page link Demo link
ModelScope link HuggingFace link

🖥️ SCEPTER Studio

Launch

To fully experience SCEPTER Studio, you can launch the following command line:

pip install scepter
python -m scepter.tools.webui

or run after clone repo code

git clone https://github.com/modelscope/scepter.git
PYTHONPATH=. python scepter/tools/webui.py --cfg scepter/methods/studio/scepter_ui.yaml

The startup of SCEPTER Studio eliminates the need for manual downloading and organizing of models; it will automatically load the corresponding models and store them in a local directory. Depending on the network and hardware situation, the initial startup usually requires 15-60 minutes, primarily involving the download and processing of SDv1.5, SDv2.1, and SDXL models. Therefore, subsequent startups will become much faster (about one minute) as downloading is no longer required.

Usage Demo

Image EditingTrainingModel SharingModel InferenceData Management

Modelscope Studio & Huggingface Space

We deploy a work studio on Modelscope that includes only the inference tab, please refer to ms_scepter_studio and hf_scepter_studio

⚙️️ ComfyUI Workflow

Launch

Manually install by moving custom_nodes to ComfyUI.

cd path/to/scepter
pip install -e .
cp -r path/to/scepter/workflow/ path/to/ComfyUI/custom_nodes/ComfyUI-Scepter
cd path/to/ComfyUI
python main.py

In addition, we also support installation and usage through the ComfyUI Manager.

🔍 Learn More

  • Alibaba TongYi Vision Intelligence Lab

    Discover more about open-source projects on image generation, video generation, and editing tasks.

  • ModelScope library

    ModelScope Library is the model library of ModelScope project, which contains a large number of popular models.

  • SWIFT library

    SWIFT (Scalable lightWeight Infrastructure for Fine-Tuning) is an extensible framwork designed to faciliate lightweight model fine-tuning and inference.

BibTeX

If our work is useful for your research, please consider citing:

@misc{scepter,
    title = {SCEPTER, https://github.com/modelscope/scepter},
    author = {SCEPTER},
    year = {2023}
}

License

This project is licensed under the Apache License (Version 2.0).

Acknowledgement

Thanks to Stability-AI, SWIFT library, Fooocus and ComfyUI for their awesome work.

Keywords

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