stable-diffusion.cpp README

The project's README from github.com/leejet/stable-diffusion.cpp. As one markdown file: README.md.

stable-diffusion.cpp

leejet%2Fstable-diffusion.cpp | Trendshift

Diffusion model(SD,Flux,Wan,...) inference in pure C/C++

Note that this project is under active development.
API and command-line option may change frequently.

🔥Important News

Features

Quick Start

Get the sd executable

Download model weights

Generate an image with just one command

./bin/sd-cli -m ../models/v1-5-pruned-emaonly.safetensors -p "a lovely cat"

For detailed command-line arguments, check out cli doc.

Performance

If you want to improve performance or reduce VRAM/RAM usage, please refer to performance guide. For runtime and parameter backend placement, see the backend selection guide.

Bindings

These projects wrap stable-diffusion.cpp for easier use in other languages/frameworks.

UIs

These projects use stable-diffusion.cpp as a backend for their image generation.

Contributors

Thank you to all the people who have already contributed to stable-diffusion.cpp!

Contributors

stable-diffusion.cpp (leejet/stable-diffusion.cpp)

Searching Database…

Что это такое?Чистый движок инференса на C/C++ для диффузионных моделей вроде Stable Diffusion, Flux, Wan, Qwen Image и Z-Image, построенный в том же духе, что и llama.cpp, чтобы генерировать изображения и видео без тяжёлых Python-зависимостей.
Это библиотека или готовое к использованию приложение?Это прежде всего консольный инструмент и библиотека (та же философия, что у llama.cpp), но в него также встроен совершенно новый веб-интерфейс, а поверх него есть сторонние GUI и языковые привязки (Go, Python, Rust, C#, Dart).
Как его запустить?Скачайте готовый исполняемый файл 'sd' со страницы релизов (или соберите из исходников по руководству по сборке), скачайте веса модели (.ckpt/.safetensors/.gguf), затем выполните команду генерации с вашим промптом.
Нужен ли Python или какой-либо ML-фреймворк для использования?Нет, это простая реализация на C/C++ на базе ggml без внешних зависимостей — нужны лишь файлы весов модели в формате checkpoint, safetensors или GGUF.
Он поддерживает ускорение на GPU или работает только на CPU?И то и другое: он работает на CPU (с AVX/AVX2/AVX512 на x86), а также поддерживает бэкенды CUDA, Vulkan, Metal, OpenCL и SYCL, так что производительность сильно зависит от выбранного бэкенда.
Какие платформы и типы моделей поддерживаются?Он работает на Linux, macOS, Windows и Android (через Termux/Local Diffusion) и поддерживает огромный спектр моделей для изображений и видео, включая SD1.x/SDXL/SD3.5, Flux, Qwen Image, Wan, LTX video и другие.
Какие дополнительные возможности он поддерживает помимо простого text-to-image?Он поддерживает LoRA, ControlNet, IP-Adapter, PhotoMaker, LCM/LCM-LoRA, тайлинг VAE для меньшего потребления памяти, апскейл ESRGAN, ADetailer, а также вшивает параметры генерации в PNG-вывод, совместимый с webui.
Какие форматы весов можно загружать?Он может загружать чекпоинты PyTorch (.ckpt/.pth/.pt), файлы Safetensors и GGUF, а режим convert умеет конвертировать веса в .gguf или .safetensors.
Можно ли получать воспроизводимые результаты на разных машинах?Да, он предлагает кроссплатформенную воспроизводимость с --rng cuda (совпадает с GPU-генератором случайных чисел stable-diffusion-webui) или --rng cpu (совпадает с RNG ComfyUI).
Есть ли привязки для других языков?Да — существуют привязки от сообщества для Go, C#, Python, Rust и Flutter/Dart, позволяющие использовать stable-diffusion.cpp как бэкенд из других экосистем.
Creator
leejet
Size
165.9 MB
Stars
7.7K
Age
3y
Commits · 90 Days