sd2R: Stable Diffusion Image Generation
Provides Stable Diffusion image generation in R using the 'ggmlR'
tensor library. Supports text-to-image and image-to-image generation with
multiple model versions (SD 1.x, SD 2.x, 'SDXL', Flux). Implements the
full inference pipeline including CLIP text encoding, 'UNet' noise removal,
and 'VAE' encoding/decoding. Unified sd_generate() entry point with
automatic strategy selection (direct, tiled sampling, high-resolution fix)
based on output resolution and available 'VRAM'. High-resolution generation
(2K, 4K+) via tiled 'VAE' decoding, tiled diffusion sampling
('MultiDiffusion'), and classic two-pass refinement (text-to-image, then
upscale with image-to-image). Multi-GPU parallel generation via
sd_generate_multi_gpu(). Multi-GPU model parallelism via 'device_layout'
in sd_ctx(): distribute diffusion, text encoders, and 'VAE' across
separate 'Vulkan' devices. Built-in profiling (sd_profile_start(),
sd_profile_summary()) for per-stage timing of text encoding, sampling,
and 'VAE' decode. Supports CPU and 'Vulkan' GPU. No 'Python' or external
API dependencies required. Cross-platform: Linux, macOS, Windows.
| Version: |
0.1.7 |
| Depends: |
R (≥ 4.1.0) |
| Imports: |
Rcpp (≥ 1.0.0), ggmlR (≥ 0.5.0) |
| LinkingTo: |
Rcpp, ggmlR |
| Suggests: |
testthat (≥ 3.0.0), callr, png, plumber, base64enc, jsonlite |
| Published: |
2026-03-30 |
| DOI: |
10.32614/CRAN.package.sd2R (may not be active yet) |
| Author: |
Yuri Baramykov [aut, cre],
Georgi Gerganov [ctb, cph] (Author of the GGML library),
leejet [ctb, cph] (Author of stable-diffusion.cpp),
stduhpf [ctb] (Core contributor to stable-diffusion.cpp),
Green-Sky [ctb] (Contributor to stable-diffusion.cpp),
wbruna [ctb] (Contributor to stable-diffusion.cpp),
akleine [ctb] (Contributor to stable-diffusion.cpp),
Martin Raiber [cph] (Copyright holder in miniz.h),
Rich Geldreich [cph] (Author of miniz.h),
RAD Game Tools [cph] (Copyright holder in miniz.h),
Valve Software [cph] (Copyright holder in miniz.h),
Alex Evans [cph] (PNG writing code in miniz.h),
Sean Barrett [cph] (Author of stb_image.h),
Jorge L Rodriguez [cph] (Author of stb_image_resize.h),
Niels Lohmann [cph] (Author of json.hpp (nlohmann/json)),
Susumu Yata [cph] (Author of darts.h (darts-clone)),
Kuba Podgorski [cph] (Author of zip.h/zip.c (kuba--/zip)),
Meta Platforms Inc. [cph] (rng_mt19937.hpp (ported from PyTorch)),
Google Inc. [cph] (Sentencepiece tokenizer code in t5.hpp) |
| Maintainer: |
Yuri Baramykov <lbsbmsu at mail.ru> |
| BugReports: |
https://github.com/Zabis13/sd2R/issues |
| License: |
MIT + file LICENSE |
| URL: |
https://github.com/Zabis13/sd2R |
| NeedsCompilation: |
yes |
| SystemRequirements: |
GNU make, curl or wget (for downloading vocabulary
files during installation) |
| Materials: |
README, NEWS |
| CRAN checks: |
sd2R results [issues need fixing before 2026-04-13] |
Documentation:
Downloads:
Linking:
Please use the canonical form
https://CRAN.R-project.org/package=sd2R
to link to this page.