@@ -60,6 +60,7 @@ enum scheduler_t {
6060 SGM_UNIFORM_SCHEDULER ,
6161 SIMPLE_SCHEDULER ,
6262 SMOOTHSTEP_SCHEDULER ,
63+ KL_OPTIMAL_SCHEDULER ,
6364 LCM_SCHEDULER ,
6465 SCHEDULER_COUNT
6566};
@@ -168,7 +169,6 @@ typedef struct {
168169 const char * vae_path ;
169170 const char * taesd_path ;
170171 const char * control_net_path ;
171- const char * lora_model_dir ;
172172 const sd_embedding_t * embeddings ;
173173 uint32_t embedding_count ;
174174 const char * photo_maker_path ;
@@ -182,17 +182,21 @@ typedef struct {
182182 enum prediction_t prediction ;
183183 enum lora_apply_mode_t lora_apply_mode ;
184184 bool offload_params_to_cpu ;
185+ bool enable_mmap ;
185186 bool keep_clip_on_cpu ;
186187 bool keep_control_net_on_cpu ;
187188 bool keep_vae_on_cpu ;
188189 bool diffusion_flash_attn ;
189190 bool tae_preview_only ;
190191 bool diffusion_conv_direct ;
191192 bool vae_conv_direct ;
193+ bool circular_x ;
194+ bool circular_y ;
192195 bool force_sdxl_vae_conv_scale ;
193196 bool chroma_use_dit_mask ;
194197 bool chroma_use_t5_mask ;
195198 int chroma_t5_mask_pad ;
199+ bool qwen_image_zero_cond_t ;
196200 float flow_shift ;
197201} sd_ctx_params_t ;
198202
@@ -236,12 +240,34 @@ typedef struct {
236240 float style_strength ;
237241} sd_pm_params_t ; // photo maker
238242
243+ enum sd_cache_mode_t {
244+ SD_CACHE_DISABLED = 0 ,
245+ SD_CACHE_EASYCACHE ,
246+ SD_CACHE_UCACHE ,
247+ SD_CACHE_DBCACHE ,
248+ SD_CACHE_TAYLORSEER ,
249+ SD_CACHE_CACHE_DIT ,
250+ };
251+
239252typedef struct {
240- bool enabled ;
253+ enum sd_cache_mode_t mode ;
241254 float reuse_threshold ;
242255 float start_percent ;
243256 float end_percent ;
244- } sd_easycache_params_t ;
257+ float error_decay_rate ;
258+ bool use_relative_threshold ;
259+ bool reset_error_on_compute ;
260+ int Fn_compute_blocks ;
261+ int Bn_compute_blocks ;
262+ float residual_diff_threshold ;
263+ int max_warmup_steps ;
264+ int max_cached_steps ;
265+ int max_continuous_cached_steps ;
266+ int taylorseer_n_derivatives ;
267+ int taylorseer_skip_interval ;
268+ const char * scm_mask ;
269+ bool scm_policy_dynamic ;
270+ } sd_cache_params_t ;
245271
246272typedef struct {
247273 bool is_high_noise ;
@@ -271,7 +297,7 @@ typedef struct {
271297 float control_strength ;
272298 sd_pm_params_t pm_params ;
273299 sd_tiling_params_t vae_tiling_params ;
274- sd_easycache_params_t easycache ;
300+ sd_cache_params_t cache ;
275301} sd_img_gen_params_t ;
276302
277303typedef struct {
@@ -293,7 +319,8 @@ typedef struct {
293319 int64_t seed ;
294320 int video_frames ;
295321 float vace_strength ;
296- sd_easycache_params_t easycache ;
322+ sd_tiling_params_t vae_tiling_params ;
323+ sd_cache_params_t cache ;
297324} sd_vid_gen_params_t ;
298325
299326typedef struct sd_ctx_t sd_ctx_t ;
@@ -323,7 +350,7 @@ SD_API enum preview_t str_to_preview(const char* str);
323350SD_API const char * sd_lora_apply_mode_name (enum lora_apply_mode_t mode );
324351SD_API enum lora_apply_mode_t str_to_lora_apply_mode (const char * str );
325352
326- SD_API void sd_easycache_params_init ( sd_easycache_params_t * easycache_params );
353+ SD_API void sd_cache_params_init ( sd_cache_params_t * cache_params );
327354
328355SD_API void sd_ctx_params_init (sd_ctx_params_t * sd_ctx_params );
329356SD_API char * sd_ctx_params_to_str (const sd_ctx_params_t * sd_ctx_params );
@@ -335,7 +362,7 @@ SD_API void sd_sample_params_init(sd_sample_params_t* sample_params);
335362SD_API char * sd_sample_params_to_str (const sd_sample_params_t * sample_params );
336363
337364SD_API enum sample_method_t sd_get_default_sample_method (const sd_ctx_t * sd_ctx );
338- SD_API enum scheduler_t sd_get_default_scheduler (const sd_ctx_t * sd_ctx );
365+ SD_API enum scheduler_t sd_get_default_scheduler (const sd_ctx_t * sd_ctx , enum sample_method_t sample_method );
339366
340367SD_API void sd_img_gen_params_init (sd_img_gen_params_t * sd_img_gen_params );
341368SD_API char * sd_img_gen_params_to_str (const sd_img_gen_params_t * sd_img_gen_params );
@@ -363,7 +390,8 @@ SD_API bool convert(const char* input_path,
363390 const char * vae_path ,
364391 const char * output_path ,
365392 enum sd_type_t output_type ,
366- const char * tensor_type_rules );
393+ const char * tensor_type_rules ,
394+ bool convert_name );
367395
368396SD_API bool preprocess_canny (sd_image_t image ,
369397 float high_threshold ,
@@ -379,4 +407,4 @@ SD_API const char* sd_version(void);
379407}
380408#endif
381409
382- #endif // __STABLE_DIFFUSION_H__
410+ #endif // __STABLE_DIFFUSION_H__
0 commit comments