Spaces:
No application file
No application file
from modules import shared | |
from packaging import version | |
import re | |
v160 = version.parse("1.6.0") | |
v170_tsnr = version.parse("v1.7.0-225") | |
def parse_version(text): | |
if text is None: | |
return None | |
m = re.match(r'([^-]+-[^-]+)-.*', text) | |
if m: | |
text = m.group(1) | |
try: | |
return version.parse(text) | |
except Exception: | |
return None | |
def backcompat(d): | |
"""Checks infotext Version field, and enables backwards compatibility options according to it.""" | |
if not shared.opts.auto_backcompat: | |
return | |
ver = parse_version(d.get("Version")) | |
if ver is None: | |
return | |
if ver < v160 and '[' in d.get('Prompt', ''): | |
d["Old prompt editing timelines"] = True | |
if ver < v160 and d.get('Sampler', '') in ('DDIM', 'PLMS'): | |
d["Pad conds v0"] = True | |
if ver < v170_tsnr: | |
d["Downcast alphas_cumprod"] = True | |