@@ -263,14 +263,13 @@ struct CompVisVDenoiser : public Denoiser {
263263
264264typedef std::function<ggml_tensor*(ggml_tensor*, float , int )> denoise_cb_t ;
265265
266-
267266// k diffusion reverse ODE: dx = (x - D(x;\sigma)) / \sigma dt; \sigma(t) = t
268- void sample_k_diffusion (sample_method_t method,
269- denoise_cb_t model,
270- ggml_context* work_ctx,
271- ggml_tensor* x,
272- std::vector<float > sigmas,
273- std::shared_ptr<RNG> rng) {
267+ static void sample_k_diffusion (sample_method_t method,
268+ denoise_cb_t model,
269+ ggml_context* work_ctx,
270+ ggml_tensor* x,
271+ std::vector<float > sigmas,
272+ std::shared_ptr<RNG> rng) {
274273 size_t steps = sigmas.size () - 1 ;
275274 // sample_euler_ancestral
276275 switch (method) {
@@ -401,7 +400,7 @@ void sample_k_diffusion(sample_method_t method,
401400 }
402401
403402 ggml_tensor* denoised = model (x2, sigmas[i + 1 ], i + 1 );
404- float * vec_denoised = (float *)denoised->data ;
403+ float * vec_denoised = (float *)denoised->data ;
405404 for (int j = 0 ; j < ggml_nelements (x); j++) {
406405 float d2 = (vec_x2[j] - vec_denoised[j]) / sigmas[i + 1 ];
407406 vec_d[j] = (vec_d[j] + d2) / 2 ;
@@ -453,7 +452,7 @@ void sample_k_diffusion(sample_method_t method,
453452 }
454453
455454 ggml_tensor* denoised = model (x2, sigma_mid, i + 1 );
456- float * vec_denoised = (float *)denoised->data ;
455+ float * vec_denoised = (float *)denoised->data ;
457456 for (int j = 0 ; j < ggml_nelements (x); j++) {
458457 float d2 = (vec_x2[j] - vec_denoised[j]) / sigma_mid;
459458 vec_x[j] = vec_x[j] + d2 * dt_2;
0 commit comments