File size: 1,449 Bytes
1cae22b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5a98f40
b8fb48a
 
 
 
 
 
 
 
 
 
 
 
 
5a98f40
 
1cae22b
3d408c3
98dbfb1
 
 
3d408c3
 
93e85ab
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import gradio as gr

from transformers import (
    AutoModelForSeq2SeqLM,
    AutoTokenizer,
    AutoConfig,
    pipeline,
)

model_name = "sagard21/python-code-explainer"

tokenizer = AutoTokenizer.from_pretrained(model_name, padding=True)

model = AutoModelForSeq2SeqLM.from_pretrained(model_name)

config = AutoConfig.from_pretrained(model_name)

model.eval()

pipe = pipeline("summarization", model=model_name, config=config, tokenizer=tokenizer)

def generate_text(text_prompt):
  response = pipe(text_prompt)
  return response[0]['summary_text']

textbox1 = gr.Textbox(value = """
class Solution(object):
    def isValid(self, s):
        stack = []
        mapping = {")": "(", "}": "{", "]": "["}
        for char in s:
            if char in mapping:
                top_element = stack.pop() if stack else '#'
                if mapping[char] != top_element:
                    return False
            else:
                stack.append(char)
        return not stack""")

textbox2 = gr.Textbox()

if __name__ == "__main__":
    gr.Textbox("The Inference Takes about 1 min 30 seconds")
    with gr.Blocks() as demo:
        gr.Interface(fn = generate_text, inputs = textbox1, outputs = textbox2)
        with gr.Row():
            gr.Image(value = "output.jpg", label = "Sample Explaination in Natural Language")
            gr.Image(value = "code.jpg", label = "Sample Code for Checking if a Binary Tree is Mirrored")
    demo.launch()