Yati05 commited on
Commit
ea7e070
·
1 Parent(s): 916f3a4

Change UI to chatbot

Browse files
Files changed (1) hide show
  1. app.py +14 -11
app.py CHANGED
@@ -1,12 +1,12 @@
1
  import gradio as gr
2
  from transformers import TFT5ForConditionalGeneration, RobertaTokenizer
3
-
4
  # load saved finetuned model
5
  model = TFT5ForConditionalGeneration.from_pretrained('Yati05/TF-CodeT5-base')
6
  # load saved tokenizer
7
  tokenizer = RobertaTokenizer.from_pretrained('Yati05/TF-CodeT5-base')
8
 
9
- def predict(user_input):
10
  query = "Generate Python: " + user_input
11
  encoded_text = tokenizer(query, return_tensors='tf', padding='max_length', truncation=True, max_length=48)
12
 
@@ -19,15 +19,18 @@ def predict(user_input):
19
  # decode generated tokens
20
  decoded_code = tokenizer.decode(generated_code.numpy()[0], skip_special_tokens=True)
21
 
22
- return decoded_code
23
-
 
 
 
24
 
25
 
26
- with gr.Blocks(title="Python Code Generation",theme=gr.themes.Monochrome()) as demo:
27
- gr.HTML(value="<style>h1 {text-align: center;}</style><h1>Python Code Generation</h1>")
28
- input = gr.Textbox(label="Write a python script to:",placeholder="e.g. Check if a number is prime")
29
- greet_btn = gr.Button("Generate")
30
- output = gr.Textbox(label="Code")
31
- greet_btn.click(fn=predict, inputs=input, outputs=output)
32
-
33
  demo.launch(enable_queue=True)
 
1
  import gradio as gr
2
  from transformers import TFT5ForConditionalGeneration, RobertaTokenizer
3
+ import regex as re
4
  # load saved finetuned model
5
  model = TFT5ForConditionalGeneration.from_pretrained('Yati05/TF-CodeT5-base')
6
  # load saved tokenizer
7
  tokenizer = RobertaTokenizer.from_pretrained('Yati05/TF-CodeT5-base')
8
 
9
+ def chat(chat_history, user_input):
10
  query = "Generate Python: " + user_input
11
  encoded_text = tokenizer(query, return_tensors='tf', padding='max_length', truncation=True, max_length=48)
12
 
 
19
  # decode generated tokens
20
  decoded_code = tokenizer.decode(generated_code.numpy()[0], skip_special_tokens=True)
21
 
22
+ return chat_history + [(user_input, re.sub(r"( {4})", "&emsp;", bot_response))]
23
+ # response = ""
24
+ # for letter in decoded_code: #[decoded_code[i:i+1] for i in range(0, len(decoded_code), 1)]:
25
+ # response += letter + ""
26
+ # yield chat_history + [(user_input, response)]
27
 
28
 
29
+ with gr.Blocks(title="Python Code Generation") as demo:
30
+ gr.HTML(value="<style>h1 {text-align: center;}</style><h1>Python Code Generation</h1>")
31
+ chatbot = gr.Chatbot([], elem_id="chatbot")
32
+ message = gr.Textbox(label="Write a python script to..",placeholder="Eg. Check if a number is prime")
33
+ message.submit(chat, [chatbot, message], chatbot)
34
+
35
+
36
  demo.launch(enable_queue=True)