abdulmeLINK's picture
Update app.py
e71e96b
raw history blame
No virus
2.59 kB
from cProfile import label
from code import interact
from multiprocessing.util import ForkAwareThreadLock
import os
import requests
import gradio as gr
# ENV vars
API_URL = os.environ["API_URL"]
HF_TOKEN = os.environ["HF_TOKEN"]
headers = {"Authorization": f"Bearer {HF_TOKEN}"}
comment_syntaxes = {
"C": "/* {} */",
"C++": "/* {} */",
"Java": "/* {} */",
"Golang": "/* {} */",
"Rust": "/* {} */",
"Javascript": "/* {} */",
"PHP": "/* {} */",
"Kotlin": "/* {} */",
"HTML": "<!-- {} -->",
"Python": "#{}",
"Bash": "#{}",
"Ruby": "=begin {} =end",
}
jsn_trail = {"parameters":
{
"top_p": 0.9,
"max_new_tokens": 64,
"return_full_text": True,
"do_sample": True,
},
"options":
{"use_cache": True,
"wait_for_model": True,
}, }
def post(jsn):
response = requests.post(API_URL, headers=headers, json=jsn)
return response.json()[0]["generated_text"]
def get_script(lang, instruction):
jsn = {"inputs": comment_syntaxes[lang].format("Programming Language: " + lang) + "\n" + comment_syntaxes[lang].format("Instruction: " + instruction.replace(
'\n', '')) + '\n', **jsn_trail}
return post(jsn)
def feedback(opt):
return post({"inputs": opt, **jsn_trail})
demo = gr.Blocks()
with demo:
gr.Markdown(
"<h1><center>Give Instructions to Generate a Program</center></h1>")
gr.Markdown(
"<p>This project aims to prepare a prompt for BLOOM to generate scripts</p>")
with gr.Row():
dropdown = gr.Dropdown(value="Python",
choices=list(comment_syntaxes.keys()), label="Choose the language")
# with gr.Column:
instruction = gr.Textbox(label="Write an instruction",
value="Create a python function that generates random password with given length using ascii characters ", lines=6)
with gr.Row():
generated_txt = gr.Textbox(lines=5, interactive=False, label="Output")
btn = gr.Button("Generate")
btn.click(get_script, inputs=[dropdown,
instruction], outputs=generated_txt)
feeedback_btn = gr.Button("Feedback")
feeedback_btn.click(
feedback, inputs=[generated_txt], outputs=generated_txt)
with gr.Row():
gr.Markdown(
"![visitor badge](https://visitor-badge.glitch.me/badge?page_id=abdulmeLINK.programmer-bloom)")
demo.launch(enable_queue=True, debug=True)