| import gradio as gr |
| import os |
| import sys |
| import json |
|
|
| now_dir = os.getcwd() |
|
|
|
|
| def stop_train(model_name: str): |
| pid_file_path = os.path.join(now_dir, "logs", model_name, "config.json") |
| try: |
| with open(pid_file_path, "r") as pid_file: |
| pid_data = json.load(pid_file) |
| pids = pid_data.get("process_pids", []) |
| with open(pid_file_path, "w") as pid_file: |
| pid_data.pop("process_pids", None) |
| json.dump(pid_data, pid_file, indent=4) |
| for pid in pids: |
| os.kill(pid, 9) |
| except: |
| pass |
|
|
|
|
| def stop_infer(): |
| pid_file_path = os.path.join(now_dir, "assets", "infer_pid.txt") |
| try: |
| with open(pid_file_path, "r") as pid_file: |
| pids = [int(pid) for pid in pid_file.readlines()] |
| for pid in pids: |
| os.kill(pid, 9) |
| os.remove(pid_file_path) |
| except: |
| pass |
|
|
|
|
| def restart_applio(): |
| if os.name != "nt": |
| os.system("clear") |
| else: |
| os.system("cls") |
| python = sys.executable |
| os.execl(python, python, *sys.argv) |
|
|
|
|
| from assets.i18n.i18n import I18nAuto |
|
|
| i18n = I18nAuto() |
|
|
|
|
| def restart_tab(): |
| with gr.Row(): |
| with gr.Column(): |
| restart_button = gr.Button(i18n("Restart Applio")) |
| restart_button.click( |
| fn=restart_applio, |
| inputs=[], |
| outputs=[], |
| ) |
|
|