File size: 1,464 Bytes
2de3774
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
try:
    from transformers import CLIPTokenizer
except:
    pass
from modules.settings import SettingsManager
from modules.performance import PerformanceSettings
from modules.resolutions import ResolutionSettings
from modules.path import PathManager
from modules.model_handler import Models
from argparser import args
import time

gradio_root = None

state = {
    "preview_image": None,
    "ctrls_name": [],
    "ctrls_obj": [],
    "setting_name": [],
    "setting_obj": [],
    "cfg_items_name": [],
    "cfg_items_obj": [],
    "pipeline": None,
    "last_config": 0.0,
}

wildcards = None
try:
    tokenizer = CLIPTokenizer.from_pretrained("openai/clip-vit-large-patch14")
except:
    print("No tokenizer in shared.py yet")
    tokenizer = None

settings = SettingsManager()
path_manager = PathManager()
performance_settings = PerformanceSettings()
resolution_settings = ResolutionSettings()
models = Models()
shared_cache = {}

# Call this to trigger a refresh of ui components
def update_cfg():
    state["last_config"] = str(time.time())

def add_ctrl(name, obj, configurable=False):
    state["ctrls_name"] += [name]
    state["ctrls_obj"] += [obj]
    if configurable:
        state["cfg_items_name"] += [name]
        state["cfg_items_obj"] += [obj]

def add_setting(name, obj):
    state["setting_name"] += [name]
    state["setting_obj"] += [obj]

def add_cfg_item(name, obj):
    state["cfg_items_name"] += [name]
    state["cfg_items_obj"] += [obj]