Skip to content

Commit a88b3c7

Browse files
committed
Use ref_images parameter for Kontext images
1 parent aa200f7 commit a88b3c7

File tree

3 files changed

+6
-23
lines changed

3 files changed

+6
-23
lines changed

otherarch/sdcpp/sdtype_adapter.cpp

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -687,16 +687,16 @@ sd_generation_outputs sdtype_generate(const sd_generation_inputs inputs)
687687
}
688688
}
689689

690-
std::vector<sd_image_t> kontext_imgs;
690+
std::vector<sd_image_t> reference_imgs;
691691
if(extra_image_data.size()>0 && loadedsdver==SDVersion::VERSION_FLUX && !loaded_model_is_chroma(sd_ctx))
692692
{
693693
for(int i=0;i<extra_image_data.size();++i)
694694
{
695-
kontext_imgs.push_back(extraimage_references[i]);
695+
reference_imgs.push_back(extraimage_references[i]);
696696
}
697697
if(!sd_is_quiet && sddebugmode==1)
698698
{
699-
printf("\nFlux Kontext: Using %d reference images\n",kontext_imgs.size());
699+
printf("\nFlux Kontext: Using %d reference images\n",reference_imgs.size());
700700
}
701701
}
702702

@@ -741,9 +741,10 @@ sd_generation_outputs sdtype_generate(const sd_generation_inputs inputs)
741741
params.guidance.slg.layer_end = sd_params->skip_layer_end;
742742
params.guidance.slg.scale = sd_params->slg_scale;
743743

744+
params.ref_images = reference_imgs.data();
745+
params.ref_images_count = reference_imgs.size();
746+
744747
kcpp_img_gen_params_t extra_params = {};
745-
extra_params.kontext_imgs = kontext_imgs.data();
746-
extra_params.kontext_img_count = kontext_imgs.size();
747748
extra_params.photomaker_references = photomaker_imgs.data();
748749
extra_params.photomaker_reference_count = photomaker_imgs.size();
749750

otherarch/sdcpp/stable-diffusion.cpp

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2288,22 +2288,6 @@ sd_image_t* generate_image(sd_ctx_t* sd_ctx, const sd_img_gen_params_t* sd_img_g
22882288
LOG_INFO("encode_first_stage completed, taking %.2fs", (t1 - t0) * 1.0f / 1000);
22892289
}
22902290

2291-
if (kcpp_img_gen_params) {
2292-
for (int i = 0; i < kcpp_img_gen_params->kontext_img_count; i++) {
2293-
ggml_tensor* img = ggml_new_tensor_4d(work_ctx, GGML_TYPE_F32, kcpp_img_gen_params->kontext_imgs[i].width, kcpp_img_gen_params->kontext_imgs[i].height, 3, 1);
2294-
sd_image_to_tensor(kcpp_img_gen_params->kontext_imgs[i].data, img);
2295-
2296-
ggml_tensor* latent = NULL;
2297-
if (!sd_ctx->sd->use_tiny_autoencoder) {
2298-
ggml_tensor* moments = sd_ctx->sd->encode_first_stage(work_ctx, img);
2299-
latent = sd_ctx->sd->get_first_stage_encoding(work_ctx, moments);
2300-
} else {
2301-
latent = sd_ctx->sd->encode_first_stage(work_ctx, img);
2302-
}
2303-
ref_latents.push_back(latent);
2304-
}
2305-
}
2306-
23072291
sd_image_t* result_images = generate_image_internal(sd_ctx,
23082292
work_ctx,
23092293
init_latent,

otherarch/sdcpp/stable-diffusion.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -189,8 +189,6 @@ typedef struct {
189189
} sd_img_gen_params_t;
190190

191191
typedef struct {
192-
sd_image_t* kontext_imgs;
193-
int kontext_img_count;
194192
sd_image_t* photomaker_references;
195193
int photomaker_reference_count;
196194
} kcpp_img_gen_params_t;

0 commit comments

Comments
 (0)