File size: 1,307 Bytes
4e37ec9 4b93a41 059ad72 87d7845 4b93a41 cc30266 4e37ec9 4b93a41 4e37ec9 4b93a41 87d7845 4b93a41 4e37ec9 059ad72 4b93a41 059ad72 4b93a41 cc30266 4e37ec9 4b93a41 87d7845 d74cbad 87d7845 cc30266 4b93a41 cc30266 4b93a41 d74cbad 4b93a41 |
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 |
import torch
import gradio as gr
# Use a pipeline as a high-level helper
from transformers import pipeline
question_answer = pipeline("question-answering",
model="deepset/roberta-base-squad2")
# question_answer = pipeline("question-answering",
# model=model_path)
def read_file_content(file_obj):
"""
Reads the content of a file object and returns it.
Parameters:
file_obj (file object): The file object to read from.
Returns:
str: The content of the file.
"""
try:
with open(file_obj.name, 'r', encoding='utf-8') as file:
context = file.read()
return context
except Exception as e:
return f"An error occurred: {e}"
def get_answer(file, question):
context = read_file_content(file)
answer = question_answer(question=question, context=context)
return answer["answer"]
demo = gr.Interface(fn=get_answer,
inputs=[gr.File(label="Upload your file"), gr.Textbox(label="Input your question",lines=1)],
outputs=[gr.Textbox(label="Answer text",lines=1)],
title="Document Q & A",
description="THIS APPLICATION WILL BE USED TO ANSER QUESTIONS BASED ON CONTEXT PROVIDED.")
demo.launch() |