@@ -1422,7 +1422,7 @@ sd_image_t* generate_image(sd_ctx_t* sd_ctx,
14221422 sd_ctx->sd ->diffusion_model ->get_adm_in_channels ());
14231423
14241424 SDCondition uncond;
1425- if (cfg_scale != 1.0 || sd_ctx->sd ->version == VERSION_INSTRUCT_PIX2PIX && cfg_scale != guidance) {
1425+ if (cfg_scale != 1.0 || sd_version_use_concat ( sd_ctx->sd ->version ) && cfg_scale != guidance) {
14261426 bool force_zero_embeddings = false ;
14271427 if (sd_version_is_sdxl (sd_ctx->sd ->version ) && negative_prompt.size () == 0 ) {
14281428 force_zero_embeddings = true ;
@@ -1493,7 +1493,7 @@ sd_image_t* generate_image(sd_ctx_t* sd_ctx,
14931493 cond.c_concat = masked_latent;
14941494 uncond.c_concat = empty_latent;
14951495 // noise_mask = masked_latent;
1496- } else if (sd_ctx->sd ->version == VERSION_INSTRUCT_PIX2PIX ) {
1496+ } else if (sd_version_is_edit ( sd_ctx->sd ->version ) ) {
14971497 cond.c_concat = masked_latent;
14981498 auto empty_latent = ggml_new_tensor_4d (work_ctx, GGML_TYPE_F32, masked_latent->ne [0 ], masked_latent->ne [1 ], masked_latent->ne [2 ], masked_latent->ne [3 ]);
14991499 ggml_set_f32 (empty_latent, 0 );
@@ -1825,7 +1825,7 @@ sd_image_t* img2img(sd_ctx_t* sd_ctx,
18251825 }
18261826 }
18271827 }
1828- } else if (sd_ctx->sd ->version == VERSION_INSTRUCT_PIX2PIX ) {
1828+ } else if (sd_version_is_edit ( sd_ctx->sd ->version ) ) {
18291829 // Not actually masked, we're just highjacking the masked_latent variable since it will be used the same way
18301830 if (!sd_ctx->sd ->use_tiny_autoencoder ) {
18311831 masked_latent = sd_ctx->sd ->get_first_stage_encoding_mode (work_ctx, init_moments);
0 commit comments