|
import subprocess |
|
import gradio as gr |
|
|
|
|
|
try: |
|
subprocess.run(["make", "runfast"], check=True, shell=True) |
|
print("Model compilation successful.") |
|
except subprocess.CalledProcessError as e: |
|
print("Error:", e) |
|
print(e.stderr) |
|
|
|
def chatbot(prompt, temperature, topt, maxtoken, model_file): |
|
command = ["./run", model_file, "-t", str(temperature), "-p", str(topt), "-n", str(maxtoken), "-i", f"{prompt}"] |
|
try: |
|
result = subprocess.run(command, capture_output=True, text=True, check=True, shell=False) |
|
response = result.stdout |
|
except subprocess.CalledProcessError as e: |
|
response = "Error occurred while processing the request." |
|
return response |
|
|
|
with gr.Blocks() as demo: |
|
gr.Markdown("HF Spaces for TinyStories") |
|
|
|
with gr.Column(): |
|
inp = gr.Textbox(placeholder="Type the beginning of the story") |
|
with gr.Row(): |
|
btn = gr.Button("Run") |
|
with gr.Column(): |
|
temperature_slider = gr.Slider(minimum=0.1, maximum=2.0, value=0.8, label="Temperature") |
|
topt_slider = gr.Slider(minimum=0.1, maximum=1.0, value=0.9, label="Topt") |
|
maxtoken_slider = gr.Slider(minimum=16, maximum=512, value=256, label="Max Tokens") |
|
model_file_dropdown = gr.Dropdown(choices=["stories15M.bin", "stories42M.bin", "stories110M.bin"], label="Model File", value="stories15M.bin") |
|
out = gr.Textbox() |
|
btn.click(fn=chatbot, inputs=[inp, temperature_slider, topt_slider, maxtoken_slider, model_file_dropdown], outputs=out) |
|
|
|
demo.launch() |
|
|