Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
822210bae5
|
@ -7,7 +7,7 @@
|
|||
"Loading...": "載入中…",
|
||||
"view": "檢視",
|
||||
"api": "api",
|
||||
"•": "•",
|
||||
"•": " • ",
|
||||
"built with gradio": "基於 Gradio 構建",
|
||||
"Stable Diffusion checkpoint": "Stable Diffusion 模型權重存檔點",
|
||||
"txt2img": "文生圖",
|
||||
|
@ -70,12 +70,12 @@
|
|||
"Variation strength": "差異強度",
|
||||
"Resize seed from width": "自寬度縮放隨機種子",
|
||||
"Resize seed from height": "自高度縮放隨機種子",
|
||||
"Open for Clip Aesthetic!": "打開美術風格 Clip!",
|
||||
"Open for Clip Aesthetic!": "打開以調整 Clip 的美術風格!",
|
||||
"▼": "▼",
|
||||
"Aesthetic weight": "美術風格權重",
|
||||
"Aesthetic steps": "美術風格疊代步數",
|
||||
"Aesthetic learning rate": "美術風格學習率",
|
||||
"Slerp interpolation": "Slerp 插值",
|
||||
"Slerp interpolation": "球面線性插值角度",
|
||||
"Aesthetic imgs embedding": "美術風格圖集 embedding",
|
||||
"None": "無",
|
||||
"Aesthetic text for imgs": "該圖集的美術風格描述",
|
||||
|
@ -105,15 +105,15 @@
|
|||
"Prompt order": "提示詞順序",
|
||||
"Sampler": "採樣器",
|
||||
"Checkpoint name": "模型權重存檔點的名稱",
|
||||
"Hypernetwork": "超網路",
|
||||
"Hypernet str.": "超網路強度",
|
||||
"Hypernetwork": "超網路(Hypernetwork)",
|
||||
"Hypernet str.": "超網路(Hypernetwork)強度",
|
||||
"Sigma Churn": "Sigma Churn",
|
||||
"Sigma min": "最小 Sigma",
|
||||
"Sigma max": "最大 Sigma",
|
||||
"Sigma noise": "Sigma noise",
|
||||
"Eta": "Eta",
|
||||
"Clip skip": "Clip 跳過",
|
||||
"Denoising": "去噪",
|
||||
"Denoising": "重繪幅度",
|
||||
"Cond. Image Mask Weight": "圖像調節屏蔽度",
|
||||
"X values": "X軸數值",
|
||||
"Y type": "Y軸類型",
|
||||
|
@ -189,6 +189,7 @@
|
|||
"Tile overlap": "圖塊重疊的畫素",
|
||||
"Upscaler": "放大演算法",
|
||||
"Lanczos": "Lanczos",
|
||||
"Nearest": "最鄰近(整數縮放)",
|
||||
"LDSR": "LDSR",
|
||||
"BSRGAN 4x": "BSRGAN 4x",
|
||||
"ESRGAN_4x": "ESRGAN_4x",
|
||||
|
@ -230,15 +231,15 @@
|
|||
"for detailed explanation.": "以了解詳細說明",
|
||||
"Create embedding": "生成 embedding",
|
||||
"Create aesthetic images embedding": "生成美術風格圖集 embedding",
|
||||
"Create hypernetwork": "生成 hypernetwork",
|
||||
"Create hypernetwork": "生成超網路(Hypernetwork)",
|
||||
"Preprocess images": "圖像預處理",
|
||||
"Name": "名稱",
|
||||
"Initialization text": "初始化文字",
|
||||
"Number of vectors per token": "每個 token 的向量數",
|
||||
"Overwrite Old Embedding": "覆寫舊的 Embedding",
|
||||
"Modules": "模組",
|
||||
"Enter hypernetwork layer structure": "輸入 hypernetwork 層結構",
|
||||
"Select activation function of hypernetwork": "選擇 hypernetwork 的激活函數",
|
||||
"Enter hypernetwork layer structure": "輸入超網路(Hypernetwork)層結構",
|
||||
"Select activation function of hypernetwork": "選擇超網路(Hypernetwork)的激活函數",
|
||||
"linear": "linear",
|
||||
"relu": "relu",
|
||||
"leakyrelu": "leakyrelu",
|
||||
|
@ -276,7 +277,7 @@
|
|||
"XavierNormal": "Xavier 正態",
|
||||
"Add layer normalization": "加入層標準化",
|
||||
"Use dropout": "採用 dropout 防止過擬合",
|
||||
"Overwrite Old Hypernetwork": "覆寫舊的 Hypernetwork",
|
||||
"Overwrite Old Hypernetwork": "覆寫舊的超網路(Hypernetwork)",
|
||||
"Source directory": "來源目錄",
|
||||
"Destination directory": "目標目錄",
|
||||
"Existing Caption txt Action": "對已有的TXT說明文字的行為",
|
||||
|
@ -298,11 +299,11 @@
|
|||
"Create debug image": "生成除錯圖片",
|
||||
"Preprocess": "預處理",
|
||||
"Train an embedding; must specify a directory with a set of 1:1 ratio images": "訓練 embedding; 必須指定一組具有 1:1 比例圖像的目錄",
|
||||
"Train an embedding or Hypernetwork; you must specify a directory with a set of 1:1 ratio images": "訓練 embedding 或者 hypernetwork; 必須指定一組具有 1:1 比例圖像的目錄",
|
||||
"[wiki]": "[wiki]",
|
||||
"Train an embedding or Hypernetwork; you must specify a directory with a set of 1:1 ratio images": "訓練 embedding 或者超網路(Hypernetwork); 必須指定一組具有 1:1 比例圖像的目錄",
|
||||
"[wiki]": "[wiki文件]",
|
||||
"Embedding": "Embedding",
|
||||
"Embedding Learning rate": "Embedding 學習率",
|
||||
"Hypernetwork Learning rate": "Hypernetwork 學習率",
|
||||
"Hypernetwork Learning rate": "超網路(Hypernetwork)學習率",
|
||||
"Learning rate": "學習率",
|
||||
"Dataset directory": "資料集目錄",
|
||||
"Log directory": "日誌目錄",
|
||||
|
@ -312,7 +313,7 @@
|
|||
"Save a copy of embedding to log directory every N steps, 0 to disable": "每 N 步將 embedding 的副本儲存到日誌目錄,0 表示禁用",
|
||||
"Save images with embedding in PNG chunks": "儲存圖像,並在 PNG 圖片檔案中嵌入 embedding 檔案",
|
||||
"Read parameters (prompt, etc...) from txt2img tab when making previews": "進行預覽時,從文生圖頁籤中讀取參數(提示詞等)",
|
||||
"Train Hypernetwork": "訓練 Hypernetwork",
|
||||
"Train Hypernetwork": "訓練超網路(Hypernetwork)",
|
||||
"Train Embedding": "訓練 Embedding",
|
||||
"Create an aesthetic embedding out of any number of images": "從任意數量的圖像中建立美術風格 embedding",
|
||||
"Create images embedding": "生成圖集 embedding",
|
||||
|
@ -418,7 +419,7 @@
|
|||
"Checkpoints to cache in RAM": "快取在內存(RAM)中的模型權重存檔點",
|
||||
"SD VAE": "模型的VAE",
|
||||
"auto": "自動",
|
||||
"Hypernetwork strength": "Hypernetwork 強度",
|
||||
"Hypernetwork strength": "超網路(Hypernetwork)強度",
|
||||
"Inpainting conditioning mask strength": "局部重繪時圖像調節的蒙版屏蔽強度",
|
||||
"Apply color correction to img2img results to match original colors.": "對圖生圖結果套用顏色校正以匹配原始顏色",
|
||||
"With img2img, do exactly the amount of steps the slider specifies (normally you'd do less with less denoising).": "在進行圖生圖的時候,確切地執行滑塊指定的疊代步數(正常情況下更弱的重繪幅度需要更少的疊代步數)",
|
||||
|
@ -488,7 +489,17 @@
|
|||
"Extension": "擴充",
|
||||
"URL": "網址",
|
||||
"Update": "更新",
|
||||
"a1111-sd-webui-tagcomplete": "標記自動補全",
|
||||
"unknown": "未知",
|
||||
"deforum-for-automatic1111-webui": "Deforum",
|
||||
"sd-dynamic-prompting": "動態提示詞",
|
||||
"stable-diffusion-webui-aesthetic-gradients": "美術風格梯度",
|
||||
"stable-diffusion-webui-aesthetic-image-scorer": "美術風格評等",
|
||||
"stable-diffusion-webui-artists-to-study": "藝術家圖庫",
|
||||
"stable-diffusion-webui-dataset-tag-editor": "資料集標記編輯器",
|
||||
"stable-diffusion-webui-images-browser": "圖庫瀏覽器",
|
||||
"stable-diffusion-webui-inspiration": "靈感",
|
||||
"stable-diffusion-webui-wildcards": "萬用字元",
|
||||
"Load from:": "載入自",
|
||||
"Extension index URL": "擴充清單連結",
|
||||
"URL for extension's git repository": "擴充的 git 倉庫連結",
|
||||
|
@ -527,8 +538,8 @@
|
|||
"What to put inside the masked area before processing it with Stable Diffusion.": "在使用 Stable Diffusion 處理蒙版區域之前要在蒙版區域內放置什麼",
|
||||
"fill it with colors of the image": "用圖像的顏色(高強度模糊)填充它",
|
||||
"keep whatever was there originally": "保留原來的圖像,不進行預處理",
|
||||
"fill it with latent space noise": "用潛空間的噪聲填充它",
|
||||
"fill it with latent space zeroes": "用潛空間的零填充它",
|
||||
"fill it with latent space noise": "於潛空間填充噪聲",
|
||||
"fill it with latent space zeroes": "於潛空間填零",
|
||||
"Upscale masked region to target resolution, do inpainting, downscale back and paste into original image": "將蒙版區域(包括預留畫素長度的緩衝區域)放大到目標解析度,進行局部重繪。\n然後縮小並粘貼回原始圖像中",
|
||||
"Resize image to target resolution. Unless height and width match, you will get incorrect aspect ratio.": "將圖像大小調整為目標解析度。除非高度和寬度匹配,否則你將獲得不正確的縱橫比",
|
||||
"Resize the image so that entirety of target resolution is filled with the image. Crop parts that stick out.": "調整圖像大小,使整個目標解析度都被圖像填充。裁剪多出來的部分",
|
||||
|
@ -560,6 +571,8 @@
|
|||
"Select which Real-ESRGAN models to show in the web UI. (Requires restart)": "選擇哪些 Real-ESRGAN 模型顯示在網頁使用者介面。(需要重新啟動)",
|
||||
"Allowed categories for random artists selection when using the Roll button": "使用抽選藝術家按鈕時將會隨機的藝術家類別",
|
||||
"Append commas": "附加逗號",
|
||||
"latest": "最新",
|
||||
"behind": "落後",
|
||||
"Roll three": "抽三位出來",
|
||||
"Generate forever": "無限生成",
|
||||
"Cancel generate forever": "停止無限生成",
|
||||
|
@ -581,10 +594,9 @@
|
|||
"Start drawing": "開始繪製",
|
||||
"Description": "描述",
|
||||
"Action": "行動",
|
||||
"Aesthetic Gradients": "美術風格",
|
||||
"aesthetic-gradients": "美術風格",
|
||||
"stable-diffusion-webui-wildcards": "萬用字元",
|
||||
"Dynamic Prompts": "動態提示",
|
||||
"Aesthetic Gradients": "美術風格梯度",
|
||||
"aesthetic-gradients": "美術風格梯度",
|
||||
"Dynamic Prompts": "動態提示詞",
|
||||
"images-browser": "圖庫瀏覽器",
|
||||
"Inspiration": "靈感",
|
||||
"Deforum": "Deforum",
|
||||
|
|
|
@ -46,25 +46,23 @@ class CFGDenoiserParams:
|
|||
|
||||
|
||||
ScriptCallback = namedtuple("ScriptCallback", ["script", "callback"])
|
||||
callbacks_app_started = []
|
||||
callbacks_model_loaded = []
|
||||
callbacks_ui_tabs = []
|
||||
callbacks_ui_settings = []
|
||||
callbacks_before_image_saved = []
|
||||
callbacks_image_saved = []
|
||||
callbacks_cfg_denoiser = []
|
||||
callback_map = dict(
|
||||
callbacks_app_started=[],
|
||||
callbacks_model_loaded=[],
|
||||
callbacks_ui_tabs=[],
|
||||
callbacks_ui_settings=[],
|
||||
callbacks_before_image_saved=[],
|
||||
callbacks_image_saved=[],
|
||||
callbacks_cfg_denoiser=[]
|
||||
)
|
||||
|
||||
|
||||
def clear_callbacks():
|
||||
callbacks_model_loaded.clear()
|
||||
callbacks_ui_tabs.clear()
|
||||
callbacks_ui_settings.clear()
|
||||
callbacks_before_image_saved.clear()
|
||||
callbacks_image_saved.clear()
|
||||
callbacks_cfg_denoiser.clear()
|
||||
for callback_list in callback_map.values():
|
||||
callback_list.clear()
|
||||
|
||||
def app_started_callback(demo: Optional[Blocks], app: FastAPI):
|
||||
for c in callbacks_app_started:
|
||||
for c in callback_map['callbacks_app_started']:
|
||||
try:
|
||||
c.callback(demo, app)
|
||||
except Exception:
|
||||
|
@ -72,7 +70,7 @@ def app_started_callback(demo: Optional[Blocks], app: FastAPI):
|
|||
|
||||
|
||||
def model_loaded_callback(sd_model):
|
||||
for c in callbacks_model_loaded:
|
||||
for c in callback_map['callbacks_model_loaded']:
|
||||
try:
|
||||
c.callback(sd_model)
|
||||
except Exception:
|
||||
|
@ -82,7 +80,7 @@ def model_loaded_callback(sd_model):
|
|||
def ui_tabs_callback():
|
||||
res = []
|
||||
|
||||
for c in callbacks_ui_tabs:
|
||||
for c in callback_map['callbacks_ui_tabs']:
|
||||
try:
|
||||
res += c.callback() or []
|
||||
except Exception:
|
||||
|
@ -92,7 +90,7 @@ def ui_tabs_callback():
|
|||
|
||||
|
||||
def ui_settings_callback():
|
||||
for c in callbacks_ui_settings:
|
||||
for c in callback_map['callbacks_ui_settings']:
|
||||
try:
|
||||
c.callback()
|
||||
except Exception:
|
||||
|
@ -100,7 +98,7 @@ def ui_settings_callback():
|
|||
|
||||
|
||||
def before_image_saved_callback(params: ImageSaveParams):
|
||||
for c in callbacks_before_image_saved:
|
||||
for c in callback_map['callbacks_before_image_saved']:
|
||||
try:
|
||||
c.callback(params)
|
||||
except Exception:
|
||||
|
@ -108,7 +106,7 @@ def before_image_saved_callback(params: ImageSaveParams):
|
|||
|
||||
|
||||
def image_saved_callback(params: ImageSaveParams):
|
||||
for c in callbacks_image_saved:
|
||||
for c in callback_map['callbacks_image_saved']:
|
||||
try:
|
||||
c.callback(params)
|
||||
except Exception:
|
||||
|
@ -116,7 +114,7 @@ def image_saved_callback(params: ImageSaveParams):
|
|||
|
||||
|
||||
def cfg_denoiser_callback(params: CFGDenoiserParams):
|
||||
for c in callbacks_cfg_denoiser:
|
||||
for c in callback_map['callbacks_cfg_denoiser']:
|
||||
try:
|
||||
c.callback(params)
|
||||
except Exception:
|
||||
|
@ -129,17 +127,33 @@ def add_callback(callbacks, fun):
|
|||
|
||||
callbacks.append(ScriptCallback(filename, fun))
|
||||
|
||||
|
||||
def remove_current_script_callbacks():
|
||||
stack = [x for x in inspect.stack() if x.filename != __file__]
|
||||
filename = stack[0].filename if len(stack) > 0 else 'unknown file'
|
||||
if filename == 'unknown file':
|
||||
return
|
||||
for callback_list in callback_map.values():
|
||||
for callback_to_remove in [cb for cb in callback_list if cb.script == filename]:
|
||||
callback_list.remove(callback_to_remove)
|
||||
|
||||
|
||||
def remove_callbacks_for_function(callback_func):
|
||||
for callback_list in callback_map.values():
|
||||
for callback_to_remove in [cb for cb in callback_list if cb.callback == callback_func]:
|
||||
callback_list.remove(callback_to_remove)
|
||||
|
||||
|
||||
def on_app_started(callback):
|
||||
"""register a function to be called when the webui started, the gradio `Block` component and
|
||||
fastapi `FastAPI` object are passed as the arguments"""
|
||||
add_callback(callbacks_app_started, callback)
|
||||
add_callback(callback_map['callbacks_app_started'], callback)
|
||||
|
||||
|
||||
def on_model_loaded(callback):
|
||||
"""register a function to be called when the stable diffusion model is created; the model is
|
||||
passed as an argument"""
|
||||
add_callback(callbacks_model_loaded, callback)
|
||||
add_callback(callback_map['callbacks_model_loaded'], callback)
|
||||
|
||||
|
||||
def on_ui_tabs(callback):
|
||||
|
@ -152,13 +166,13 @@ def on_ui_tabs(callback):
|
|||
title is tab text displayed to user in the UI
|
||||
elem_id is HTML id for the tab
|
||||
"""
|
||||
add_callback(callbacks_ui_tabs, callback)
|
||||
add_callback(callback_map['callbacks_ui_tabs'], callback)
|
||||
|
||||
|
||||
def on_ui_settings(callback):
|
||||
"""register a function to be called before UI settings are populated; add your settings
|
||||
by using shared.opts.add_option(shared.OptionInfo(...)) """
|
||||
add_callback(callbacks_ui_settings, callback)
|
||||
add_callback(callback_map['callbacks_ui_settings'], callback)
|
||||
|
||||
|
||||
def on_before_image_saved(callback):
|
||||
|
@ -166,7 +180,7 @@ def on_before_image_saved(callback):
|
|||
The callback is called with one argument:
|
||||
- params: ImageSaveParams - parameters the image is to be saved with. You can change fields in this object.
|
||||
"""
|
||||
add_callback(callbacks_before_image_saved, callback)
|
||||
add_callback(callback_map['callbacks_before_image_saved'], callback)
|
||||
|
||||
|
||||
def on_image_saved(callback):
|
||||
|
@ -174,7 +188,7 @@ def on_image_saved(callback):
|
|||
The callback is called with one argument:
|
||||
- params: ImageSaveParams - parameters the image was saved with. Changing fields in this object does nothing.
|
||||
"""
|
||||
add_callback(callbacks_image_saved, callback)
|
||||
add_callback(callback_map['callbacks_image_saved'], callback)
|
||||
|
||||
|
||||
def on_cfg_denoiser(callback):
|
||||
|
@ -182,5 +196,4 @@ def on_cfg_denoiser(callback):
|
|||
The callback is called with one argument:
|
||||
- params: CFGDenoiserParams - parameters to be passed to the inner model and sampling state details.
|
||||
"""
|
||||
add_callback(callbacks_cfg_denoiser, callback)
|
||||
|
||||
add_callback(callback_map['callbacks_cfg_denoiser'], callback)
|
||||
|
|
Loading…
Reference in New Issue