def copaint_config_library(timesteps):
"""CoPaint inpainting configurations"""
# Friendly names map:
# - celebahq_try3 -> short-jump (TT) : jump_length=5, use_timetravel=True, num_iteration_optimize_xt=5
# - celebahq_noTTJ5 -> short-jump (no TT) : jump_length=5, use_timetravel=False, num_iteration_optimize_xt=2
# - celebahq -> long-jump (TT) : jump_length=10, use_timetravel=True, num_iteration_optimize_xt=2
config_lib = {
"celebahq_try1": config.Config(default_config_dict={
"respace_interpolate": False,
"ddim": {
"ddim_sigma": 0.0,
"schedule_params": {
"ddpm_num_steps": timesteps,
"jump_length": 20, # 10,
"jump_n_sample": 4, # 2,
"num_inference_steps": timesteps,
"schedule_type": "linear",
"time_travel_filter_type": "none",
"use_timetravel": True
}
},
"optimize_xt": {
"coef_xt_reg": 0.00001, # 0.0001,
"coef_xt_reg_decay": 1.05, # 1.01,
"filter_xT": False,
"lr_xt": 0.02,
"lr_xt_decay": 1.012,
"mid_interval_num": 1,
"num_iteration_optimize_xt": 5,
"optimize_before_time_travel": True,
"optimize_xt": True,
"use_adaptive_lr_xt": True,
"use_smart_lr_xt_decay": True
},
"debug": False
}, use_argparse=False),
"celebahq_noTTJ5": config.Config(default_config_dict={ # short-jump (no TT)
"respace_interpolate": False,
"ddim": {
"ddim_sigma": 0.0,
"schedule_params": {
"ddpm_num_steps": timesteps,
"jump_length": 5, # was 10 before 2025-07
"jump_n_sample": 2,
"num_inference_steps": timesteps,
"schedule_type": "linear",
"time_travel_filter_type": "none",
"use_timetravel": False,
}
},
"optimize_xt": {
"coef_xt_reg": 0.0001,
"coef_xt_reg_decay": 1.01,
"filter_xT": False,
"lr_xt": 0.02,
"lr_xt_decay": 1.012,
"mid_interval_num": 1,
"num_iteration_optimize_xt": 2,
"optimize_before_time_travel": True,
"optimize_xt": True,
"use_adaptive_lr_xt": True,
"use_smart_lr_xt_decay": True
},
"debug": False
}, use_argparse=False),
"celebahq_noTT2": config.Config(default_config_dict={
"respace_interpolate": False,
"ddim": {
"ddim_sigma": 0.0,
"schedule_params": {
"ddpm_num_steps": timesteps,
"jump_length": 10,
"jump_n_sample": 2,
"num_inference_steps": timesteps,
"schedule_type": "linear",
"time_travel_filter_type": "none",
"use_timetravel": False,
}
},
"optimize_xt": {
"coef_xt_reg": 0.0001,
"coef_xt_reg_decay": 1.01,
"filter_xT": False,
"lr_xt": 0.02,
"lr_xt_decay": 1.012,
"mid_interval_num": 1,
"num_iteration_optimize_xt": 5,
"optimize_before_time_travel": True,
"optimize_xt": True,
"use_adaptive_lr_xt": True,
"use_smart_lr_xt_decay": True
},
"debug": False
}, use_argparse=False),
"celebahq_try3": config.Config(default_config_dict={ # short-jump (TT)
"respace_interpolate": False,
"ddim": {
"ddim_sigma": 0.0,
"schedule_params": {
"ddpm_num_steps": timesteps,
"jump_length": 5, # 10
"jump_n_sample": 2,
"num_inference_steps": timesteps,
"schedule_type": "linear",
"time_travel_filter_type": "none",
"use_timetravel": True
}
},
"optimize_xt": {
"coef_xt_reg": 0.0001,
"coef_xt_reg_decay": 1.01,
"filter_xT": False,
"lr_xt": 0.02,
"lr_xt_decay": 1.012,
"mid_interval_num": 1,
"num_iteration_optimize_xt": 5, # 2,
"optimize_before_time_travel": True,
"optimize_xt": True,
"use_adaptive_lr_xt": True,
"use_smart_lr_xt_decay": True
},
"debug": False
}, use_argparse=False),
"celebahq": config.Config(default_config_dict={ # long-jump (TT)
"respace_interpolate": False,
"ddim": {
"ddim_sigma": 0.0,
"schedule_params": {
"ddpm_num_steps": timesteps,
"jump_length": 10,
"jump_n_sample": 2,
"num_inference_steps": timesteps,
"schedule_type": "linear",
"time_travel_filter_type": "none",
"use_timetravel": True
}
},
"optimize_xt": {
"coef_xt_reg": 0.0001,
"coef_xt_reg_decay": 1.01,
"filter_xT": False,
"lr_xt": 0.02,
"lr_xt_decay": 1.012,
"mid_interval_num": 1,
"num_iteration_optimize_xt": 2,
"optimize_before_time_travel": True,
"optimize_xt": True,
"use_adaptive_lr_xt": True,
"use_smart_lr_xt_decay": True
},
"debug": False
}, use_argparse=False),
# "imagenet": config.Config(default_config_dict={
# "respace_interpolate": False,
# "ddim": {
# "ddim_sigma": 0.0,
# "schedule_params": {
# "ddpm_num_steps": timesteps,
# "jump_length": 10,
# "jump_n_sample": 2,
# "num_inference_steps": 200,
# "schedule_type": "linear",
# "time_travel_filter_type": "none",
# "use_timetravel": True
# }
# },
# "optimize_xt": {
# "coef_xt_reg": 0.01,
# "coef_xt_reg_decay": 1.0,
# "filter_xT": False,
# "lr_xt": 0.02,
# "lr_xt_decay": 1.012,
# "mid_interval_num": 1,
# "num_iteration_optimize_xt": 2,
# "optimize_before_time_travel": True,
# "optimize_xt": True,
# "use_adaptive_lr_xt": True,
# "use_smart_lr_xt_decay": True
# },
# "debug": False
# }, use_argparse=False),
}
return config_lib