Spaces:
Runtime error
Runtime error
from transformers import AutoModel, AutoModelForSeq2SeqLM, AutoModelForQuestionAnswering, AutoTokenizer, pipeline | |
import gradio as grad | |
import ast | |
# 1. The RoBERTa base model is used, fine-tuned using the SQuAD 2.0 dataset. | |
# It’s been trained on question-answer pairs, including unanswerable questions, for the task of question and answering. | |
# mdl_name = "deepset/roberta-base-squad2" | |
# my_pipeline = pipeline('question-answering', model=mdl_name, tokenizer=mdl_name) | |
# 2. Different model. | |
# mdl_name = "distilbert-base-cased-distilled-squad" | |
# my_pipeline = pipeline('question-answering', model=mdl_name, tokenizer=mdl_name) | |
# def answer_question(question,context): | |
# text= "{"+"'question': '"+question+"','context': '"+context+"'}" | |
# di=ast.literal_eval(text) | |
# response = my_pipeline(di) | |
# return response | |
# grad.Interface(answer_question, inputs=["text","text"], outputs="text").launch() | |
# 3. Different task: language translation. | |
# First model translates English to German. | |
# mdl_name = "Helsinki-NLP/opus-mt-en-de" | |
# opus_translator = pipeline("translation", model=mdl_name) | |
# def translate(text): | |
# response = opus_translator(text) | |
# return response | |
# grad.Interface(translate, inputs=["text",], outputs="text").launch() | |
# 4. Language translation without pipeline API. | |
# Second model translates English to French. | |
mdl_name = "Helsinki-NLP/opus-mt-en-fr" | |
mdl = AutoModelForSeq2SeqLM.from_pretrained(mdl_name) | |
my_tkn = AutoTokenizer.from_pretrained(mdl_name) | |
def translate(text): | |
inputs = my_tkn(text, return_tensors="pt") | |
trans_output = mdl.generate(**inputs) | |
response = my_tkn.decode(trans_output[0], skip_special_tokens=True) | |
return response | |
txt=grad.Textbox(lines=1, label="English", placeholder="English Text here") | |
out=grad.Textbox(lines=1, label="French") | |
grad.Interface(translate, inputs=txt, outputs=out).launch() | |