NIn / app.py
nin101's picture
Update app.py
c0327b8 verified
Raw
History Blame Contribute Delete
1.01 kB
import gradio as gr
import spaces
import subprocess
import os
# 1. Wrap the execution in a function tagged with @spaces.GPU
@spaces.GPU(duration=120) # Requests maximum GPU execution time
def run_training():
print("--- STARTING TRAINING RUN ---")
try:
# 2. This triggers your custom train.py script on the GPU backend
result = subprocess.run(
["python", "train.py"],
capture_output=True,
text=True,
check=True
)
return f"Training Complete! Logs:\n\n{result.stdout}"
except subprocess.CalledProcessError as e:
return f"Training Failed! Error Logs:\n\n{e.stderr}"
# 3. Create a simple single-button interface to click and launch it
with gr.Blocks() as demo:
gr.Markdown("# Luau AI Training Dashboard")
train_btn = gr.Button("🚀 Start Fine-Tuning Script")
output_logs = gr.Textbox(label="Console Outputs", lines=20)
train_btn.click(fn=run_training, outputs=output_logs)
demo.launch()