Update app.py
Browse files
app.py
CHANGED
@@ -56,35 +56,29 @@ def format_sampler_params(sampler_params):
|
|
56 |
steps = params.get("steps", "Không xác định")
|
57 |
return f"scheduler: {scheduler}\nCFG: {cfg_scale}\nSteps: {steps}"
|
58 |
|
|
|
|
|
59 |
def save_metadata_to_file(image_input, prompt, neg_prompt, model, loras, seed, sampler, sampler_params, metadata):
|
60 |
if not any([prompt, neg_prompt, model, loras, seed, sampler, sampler_params, metadata]):
|
61 |
-
return None, gr.Info("Không có thông tin để lưu!", duration=2)
|
62 |
-
|
63 |
-
if image_input is None:
|
64 |
-
return None, gr.Info("Không thể lưu tệp: Không có ảnh nào được tải lên.", duration=2)
|
65 |
|
66 |
-
# Lấy tên ảnh
|
67 |
image_filename = os.path.basename(image_input)
|
68 |
txt_filename = os.path.splitext(image_filename)[0] + ".txt"
|
|
|
69 |
|
70 |
-
#
|
71 |
-
|
72 |
-
f"Prompt: {prompt}\n"
|
73 |
-
f"Negative Prompt: {neg_prompt}\n"
|
74 |
-
f"Model: {model}\n"
|
75 |
-
f"Loras: {loras}\n"
|
76 |
-
f"Seed: {seed}\n"
|
77 |
-
f"Sampler: {sampler}\n"
|
78 |
-
f"Sampler Parameters: {sampler_params}\n"
|
79 |
-
f"Other Metadata:\n{metadata}\n"
|
80 |
-
|
81 |
-
|
82 |
-
# Sử dụng io.BytesIO để tạo file tạm thời trong bộ nhớ
|
83 |
-
txt_file = io.BytesIO()
|
84 |
-
txt_file.write(file_content.encode('utf-8'))
|
85 |
-
txt_file.seek(0)
|
86 |
-
|
87 |
-
return gr.File.update(value=txt_file, filename=txt_filename), gr.Info(f"Đang tải file {txt_filename}...", duration=2)
|
88 |
|
89 |
|
90 |
|
@@ -354,7 +348,7 @@ with gr.Blocks(js = js_func) as demo:
|
|
354 |
model_output, lora_output, seed_output,
|
355 |
sampler_output, sampler_params_output, other_metadata_output
|
356 |
],
|
357 |
-
outputs=
|
358 |
)
|
359 |
|
360 |
|
|
|
56 |
steps = params.get("steps", "Không xác định")
|
57 |
return f"scheduler: {scheduler}\nCFG: {cfg_scale}\nSteps: {steps}"
|
58 |
|
59 |
+
download_file = gr.File(label="Tải file đã tạo", visible=False)
|
60 |
+
|
61 |
def save_metadata_to_file(image_input, prompt, neg_prompt, model, loras, seed, sampler, sampler_params, metadata):
|
62 |
if not any([prompt, neg_prompt, model, loras, seed, sampler, sampler_params, metadata]):
|
63 |
+
return None, gr.Info("Không có thông tin để lưu!", duration=2), gr.update(visible=False)
|
|
|
|
|
|
|
64 |
|
65 |
+
# Lấy tên file ảnh và đặt tên cho file txt
|
66 |
image_filename = os.path.basename(image_input)
|
67 |
txt_filename = os.path.splitext(image_filename)[0] + ".txt"
|
68 |
+
txt_filepath = os.path.join(output_dir, txt_filename)
|
69 |
|
70 |
+
# Ghi thông tin metadata vào file txt
|
71 |
+
with open(txt_filepath, "w", encoding="utf-8") as f:
|
72 |
+
f.write(f"Prompt: {prompt}\n")
|
73 |
+
f.write(f"Negative Prompt: {neg_prompt}\n")
|
74 |
+
f.write(f"Model: {model}\n")
|
75 |
+
f.write(f"Loras: {loras}\n")
|
76 |
+
f.write(f"Seed: {seed}\n")
|
77 |
+
f.write(f"Sampler: {sampler}\n")
|
78 |
+
f.write(f"Sampler Parameters: {sampler_params}\n")
|
79 |
+
f.write(f"Other Metadata:\n{metadata}\n")
|
80 |
+
|
81 |
+
return txt_filepath, gr.update(visible=True)
|
|
|
|
|
|
|
|
|
|
|
|
|
82 |
|
83 |
|
84 |
|
|
|
348 |
model_output, lora_output, seed_output,
|
349 |
sampler_output, sampler_params_output, other_metadata_output
|
350 |
],
|
351 |
+
outputs=[download_file, message_output]
|
352 |
)
|
353 |
|
354 |
|