Spaces:
				
			
			
	
			
			
		Sleeping
		
	
	
	
			
			
	
	
	
	
		
		
		Sleeping
		
	| # -*- coding: utf-8 -*- | |
| """Untitled44.ipynb | |
| Automatically generated by Colaboratory. | |
| Original file is located at | |
| https://colab.research.google.com/drive/1PxYl919o_aJGWdZoMRTVFD4XESysiWAH | |
| """ | |
| import gradio as gr | |
| import random | |
| import time | |
| from transformers import pipeline,AutoModelForQuestionAnswering,AutoTokenizer | |
| import pdfplumber | |
| def extract_text_from_pdf(pdf_path): | |
| text = "" | |
| with pdfplumber.open(pdf_path) as pdf: | |
| for page in pdf.pages: | |
| text += page.extract_text() | |
| return text | |
| pdf_path = "Ketan gandhi-chatbotdata.pdf" | |
| pdf_text = extract_text_from_pdf(pdf_path) | |
| model_name="deepset/roberta-base-squad2" | |
| qa_pipeline = pipeline("question-answering", model=AutoModelForQuestionAnswering.from_pretrained(model_name),tokenizer=AutoTokenizer.from_pretrained(model_name)) | |
| with gr.Blocks() as demo: | |
| chatbot = gr.Chatbot() | |
| msg = gr.Textbox(placeholder="Ask me anything related to Ketan Gandhi😎") | |
| clear = gr.ClearButton([msg, chatbot]) | |
| def respond(message, chat_history): | |
| question = message | |
| answer = qa_pipeline(question=question, context=pdf_text) | |
| confidence_threshold=0.3 | |
| if answer['score']>confidence_threshold: | |
| bot_message = answer['answer'] | |
| chat_history.append((message, bot_message)) | |
| else: | |
| chat_history.append((message,"I may not be the right bot to answer this......😅")) | |
| time.sleep(2) | |
| return "", chat_history | |
| def vote(data: gr.LikeData): | |
| if data.liked: | |
| print("You upvoted this response: " + data.value) | |
| else: | |
| print("You downvoted this response: " + data.value) | |
| msg.submit(respond, [msg, chatbot], [msg, chatbot]) | |
| chatbot.like(vote, None, None) | |
| if __name__ == "__main__": | |
| demo.launch() | |