Commit 0886f11 for stable-diffusion.cpp
commit 0886f11b6b8b4d1f6259e0f1337cae554284c37a
Author: Wagner Bruna <wbruna@users.noreply.github.com>
Date: Sat Oct 24 18:19:32 2026 -0300
fix: skip reference image VAE encoding when latents have no consumer (#2207)
diff --git a/src/pipeline/image.cpp b/src/pipeline/image.cpp
index 7daec86..7d264e2 100644
--- a/src/pipeline/image.cpp
+++ b/src/pipeline/image.cpp
@@ -313,9 +313,13 @@ namespace sd::pipeline {
LOG_INFO("EDIT mode");
}
+ bool skip_vae_encoding = (sd->version == VERSION_HIDREAM_O1) || !(
+ ref_image_params.pass_to_dit || ref_image_params.vlm_use_vae_input ||
+ sd_version_is_unet_edit(sd->version) || sd_version_is_pid(sd->version));
+
std::vector<sd::Tensor<float>> ref_latents;
for (size_t i = 0; i < ref_images.size(); i++) {
- if (sd->version == VERSION_HIDREAM_O1) {
+ if (skip_vae_encoding) {
continue;
}
sd::Tensor<float> ref_latent;