hyechanjun's picture
Update app.py
0d9ea65
raw
history blame
1.58 kB
import gradio as gr
import torch
from transformers import BartForConditionalGeneration, BartTokenizer
# initialize model + tok variables
model = None
tok = None
# pass in Strings of model choice and input text for context
def genQuestion(model_choice, context):
if model_choice=="interview-question-remake":
model = BartForConditionalGeneration.from_pretrained("hyechanjun/interview-question-remake")
tok = BartTokenizer.from_pretrained("hyechanjun/interview-question-remake")
elif model_choice=="interview-length-tagged":
model = BartForConditionalGeneration.from_pretrained("hyechanjun/interview-length-tagged")
tok = BartTokenizer.from_pretrained("hyechanjun/interview-length-tagged")
elif model_choice=="reverse-interview-question":
model = BartForConditionalGeneration.from_pretrained("hyechanjun/reverse-interview-question")
tok = BartTokenizer.from_pretrained("hyechanjun/reverse-interview-question")
inputs = tok(context, return_tensors="pt")
output = model.generate(inputs["input_ids"], num_beams=4, max_length=64, min_length=9, num_return_sequences=4, diversity_penalty =1.0, num_beam_groups=2)
final_output = ''
for i in range(4):
final_output += [tok.decode(beam, skip_special_tokens=True, clean_up_tokenization_spaces=False) for beam in output][i] + "\n"
return final_output
iface = gr.Interface(fn=genQuestion, inputs=[gr.inputs.Dropdown(["interview-question-remake", "interview-length-tagged", "reverse-interview-question"]), "text"], outputs="text")
iface.launch()