Spaces:
Running
Running
from flask import Flask, send_from_directory | |
from flask_autoindex import AutoIndex | |
import subprocess, os | |
from download_s3_path import download_s3_folder | |
from split import split_data | |
import os | |
import shutil | |
app = Flask(__name__) | |
AutoIndex(app, browse_root=os.path.curdir) | |
def train(): | |
try: | |
subprocess.call(["./simple_train.sh"]) | |
return "Bash script triggered successfully!" | |
except subprocess.CalledProcessError as e: | |
return f"An error occurred: {str(e)}", 500 | |
def train_with_working_id(working_id): | |
path = f"working/{str(working_id)}" | |
delete_folder(path) | |
download_s3_folder(os.getenv("S3_BUCKET_NAME", "pycil.com"), path, path) | |
data_path = path + "/data" | |
config_path = path + "/config.json" | |
output_path = f"output/{working_id}" | |
split_data(data_path) | |
subprocess.call( | |
["./train_from_working.sh", config_path, data_path, path, output_path] | |
) | |
return f"Training started with working id {working_id}!" | |
def delete_folder(folder_path): | |
if os.path.exists(folder_path): | |
shutil.rmtree(folder_path) | |
print(f"Folder '{folder_path}' has been deleted.") | |
else: | |
print(f"Folder '{folder_path}' does not exist.") | |
if __name__ == "__main__": | |
app.run(host="0.0.0.0", port=7860, debug=True) | |