Skip to main content

stable-diffusion-cpp

Install, run and serve stable-diffusion.cpp, the ggml C/C++ engine for image and video diffusion (SD, SDXL, FLUX, Qwen-Image, Z-Image, Wan) with sd-cli and the sd-server HTTP API. Use for sd-cli/sd-server flags, GGUF conversion and quantization, --offload-to-cpu/--vae-tiling/--diffusion-fa, OpenAI /v1/images/generations, /sdcpp/v1/img_gen jobs, black or NaN images, ghcr.io/leejet/stable-diffusion.cpp images, or sd-server behind llama-swap and LiteLLM. Not for ComfyUI or diffusers.

Quellinformationen

Repository
ScaleDockHQ/llm-skills
Letzte Quellaktivität
15. Oktober 2026 um 09:09
Erkannte Sprache von SKILL.md
Englisch
Sterne
0
Forks
0

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
10 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
stable-diffusion-cpp
description
Install, run and serve stable-diffusion.cpp, the ggml C/C++ engine for image and video diffusion (SD, SDXL, FLUX, Qwen-Image, Z-Image, Wan) with sd-cli and the sd-server HTTP API. Use for sd-cli/sd-server flags, GGUF conversion and quantization, --offload-to-cpu/--vae-tiling/--diffusion-fa, OpenAI /v1/images/generations, /sdcpp/v1/img_gen jobs, black or NaN images, ghcr.io/leejet/stable-diffusion.cpp images, or sd-server behind llama-swap and LiteLLM. Not for ComfyUI or diffusers.
license
MIT
compatibility
Linux, macOS (Metal) and Windows; CPU, CUDA, Vulkan, ROCm, SYCL; curl and jq for the API commands, cmake and a C++ toolchain for source builds. Installs, builds, large model downloads and binding beyond loopback need the user's explicit approval.
metadata
{"author":"ScaleDockHQ","version":"1.0.0"}
# stable-diffusion.cpp Get a working, memory-safe `sd-cli` or `sd-server` for image or video diffusion with no Python stack, and keep it updatable. **Scope:** this one product: install or build, weights and GGUF, `sd-server` and its three APIs, memory tuning, update, troubleshoot, and its llama-swap plus LiteLLM combo. Choosing between ComfyUI, sd.cpp and diffusers, licences and the wider media stack belong to `self-hosted-genmedia`. Version facts were verified on master-956-1b0ba10 (2026-10-11); the project warns that "API and command-line option may change frequently". Work through the steps in order. Load a reference only when a step names it. ## Discover first Read-only; nothing here prints secrets. ```bash # Binaries, version, devices command -v sd-cli sd-server; sd-server --help 2>&1 | head -2 # first line prints the commit sd-server --list-devices 2>/dev/null # names accepted by --backend nvidia-smi --query-gpu=name,memory.total,memory.used --format=csv 2>/dev/null # Running server (default 127.0.0.1:1234) curl -fsS 127.0.0.1:1234/v1/models | jq . curl -fsS 127.0.0.1:1234/sdcpp/v1/capabilities | jq '{model, supported_modes}' ps -eo args | grep -E '[s]d-server' docker ps --format '{{.Names}}\t{{.Image}}' 2>/dev/null | grep -i stable-diffusion df -h ~ | tail -1; ls -lh ~/models/sd 2>/dev/null ``` ## Decision flow 1. No binary yet: pick a release zip, a container image or a CMake build (`references/install.md`). Linux has no prebuilt CUDA or arm64 zip, so NVIDIA Linux and DGX Spark use the image or a build. 2. Weights: single checkpoint (`-m`) or split diffusion model, VAE and text encoder; GGUF to save memory (`references/models-and-weights.md`). 3. One-off image or video: `sd-cli` (`references/models-and-weights.md` has a first command). 4. Programs need an endpoint: `sd-server` (`references/serve-and-api.md`). OpenAI clients use `/v1/images/generations`; long or video jobs use the async `/sdcpp/v1/*` API. 5. Out of memory or slow: `references/performance-memory.md`. 6. Shared GPU with LLMs: llama-swap swaps it like an LLM (`references/combos/llama-swap-litellm.md`). 7. Upgrading: `references/updating.md`. Black images, load errors, 524s: `references/troubleshooting.md`. ## Rules - **Ask before changing the system.** Installs, builds, services, image pulls, model downloads and any bind beyond `127.0.0.1` need approval and an undo path. - **Loopback only.** `sd-server` has no authentication and defaults to `127.0.0.1:1234`. `--listen-ip 0.0.0.0` exposes the UI and API; put a proxy with keys in front (`llm-gateway`, `litellm`). - **The server is one model, one process.** The model is fixed at start; switching means a restart (or llama-swap). - **LoRA is structured on the server.** `<lora:...>` prompt tags work in `sd-cli` but are intentionally unsupported by every server API; send the `lora` array (`references/serve-and-api.md`). - **Match component files to the architecture.** A wrong text encoder or VAE fails at load or gives garbage; read the model's page under upstream `docs/`. - **Pin versions.** Release and image tags named `master-*` move; record the commit that works. - **Secrets stay out of output.** Hugging Face tokens come from `HF_TOKEN` or a `0600` file, never from echoed commands. - **Verify upstream.** Flags change often; check `sd-server --help` on the installed build. ## Workflows - [ ] Install a build -> `references/install.md` - [ ] Download weights, optionally convert to GGUF -> `references/models-and-weights.md` - [ ] Smoke test with `sd-cli`: fixed seed, small size, then open the PNG - [ ] Start `sd-server` on loopback and call `/v1/models` -> `references/serve-and-api.md` - [ ] Generate through OpenAI or native API and decode the base64 result -> `references/serve-and-api.md` - [ ] Fit memory (flash attention, VAE tiling, offload) -> `references/performance-memory.md` - [ ] Put it behind llama-swap and LiteLLM -> `references/combos/llama-swap-litellm.md` - [ ] Update and regression-check with one fixed-seed image -> `references/updating.md` - [ ] Verify: the server answers `/v1/models` only after the model loaded, one generation returns an image that `file` recognises, and VRAM returns after the process stops. ## Reference index - `references/install.md`: release zips, container images and tags, CMake backends, DGX Spark, macOS. - `references/models-and-weights.md`: supported families, component files, GGUF convert and `--type`, LoRA, first `sd-cli` commands. - `references/serve-and-api.md`: `sd-server` flags, OpenAI, WebUI and native APIs, job polling, `sd_cpp_extra_args`, timeouts. - `references/performance-memory.md`: flash attention, VAE tiling, params backend, offload, multi-GPU, caching modes. - `references/updating.md`: rebuild or re-pull, pin, regression check, config drift. - `references/troubleshooting.md`: symptom to fix table. - `references/combos/llama-swap-litellm.md`: native, container and llama-swap entries, LiteLLM image route, Cloudflare limits. ## Companion skills - `self-hosted-genmedia`: choose between ComfyUI, sd-server and speech servers; memory planning next to LLMs. Install: `npx skills add ScaleDockHQ/llm-skills --skill self-hosted-genmedia`. - `comfyui`: node-graph workflows and a richer API. Install: `npx skills add ScaleDockHQ/llm-skills --skill comfyui`. - `llama-swap`: hot-swap sd-server with LLMs. Install: `npx skills add ScaleDockHQ/llm-skills --skill llama-swap`. - `litellm`: keys, budgets and routing in front. Install: `npx skills add ScaleDockHQ/llm-skills --skill litellm`. - `hugging-face`: fetch weights and manage the cache. Install: `npx skills add ScaleDockHQ/llm-skills --skill hugging-face`. - `nvidia-dgx-spark`: arm64 unified-memory notes. Install: `npx skills add ScaleDockHQ/llm-skills --skill nvidia-dgx-spark`.
Auf GitHub ansehen