| import torch | |
| import gradio as gr | |
| # Use a pipeline as a high-level helper | |
| from transformers import pipeline | |
| # model_path = "../Models/models--deepset--roberta-base-squad2/snapshots/adc3b06f79f797d1c575d5479d6f5efe54a9e3b4" | |
| # question_answer = pipeline("question-answering", model=model_path) | |
| question_answer = pipeline("question-answering", model="deepset/roberta-base-squad2") | |
| 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}" | |
| # context = ("Mark Elliot Zuckerberg (/ˈzʌkərbɜːrɡ/; born May 14, 1984) is an American businessman who co-founded the social media service Facebook" | |
| # " and its parent company Meta Platforms, of which he is the chairman, chief executive officer, and controlling shareholder. " | |
| # "Zuckerberg has been the subject of multiple lawsuits regarding the creation and ownership of the website as well as issues such " | |
| # "as user privacy. Zuckerberg briefly attended Harvard College, where he launched Facebook in February 2004 with his roommates " | |
| # "Eduardo Saverin, Andrew McCollum, Dustin Moskovitz and Chris Hughes. Zuckerberg took the company public in May 2012 with majority " | |
| # "shares. He became the world's youngest self-made billionaire[a] in 2008, at age 23, and has consistently ranked among the world's " | |
| # "wealthiest individuals. According to Forbes, as of March 2025, Zuckerberg's estimated net worth stood at US$214.1 billion, " | |
| # "making him the second richest individual in the world,[2] behind Elon Musk and before Jeff Bezos.") | |
| # | |
| # question = "What is DOB of Mark?" | |
| # answer = question_answer(question=question, context=context) | |
| # | |
| # print(answer) | |
| def get_answer(file, question): | |
| context = read_file_content(file) | |
| answer = question_answer(question=question, context=context) | |
| return answer["answer"] | |
| gr.close_all() | |
| 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="Answered text",lines=4)], | |
| title="@GenAILearniverse Project 5: Document Q n A", | |
| description="THIS APPLICATION WILL BE USED TO ANSWER QUESTION BASED ON CONTEXT PROVIDED.") | |
| demo.launch() |