Spaces:
Runtime error
Runtime error
| from transformers import GPT2Tokenizer, GPT2LMHeadModel, TextDataset, DataCollatorForLanguageModeling | |
| # Load the fine-tuned model and tokenizer | |
| model = GPT2LMHeadModel.from_pretrained("kkhan/gpt2-medium-iba-faq") | |
| tokenizer = GPT2Tokenizer.from_pretrained("kkhan/gpt2-medium-iba-faq") | |
| def get_answer(model, tokenizer, question, max_length): | |
| input_ids = tokenizer.encode(question, return_tensors="pt") | |
| # Create the attention mask and pad token id | |
| attention_mask = torch.ones_like(input_ids) | |
| pad_token_id = tokenizer.eos_token_id | |
| output = model.generate( | |
| input_ids, | |
| max_length=max_length, | |
| num_return_sequences=1, | |
| attention_mask=attention_mask, | |
| pad_token_id=pad_token_id | |
| ) | |
| return tokenizer.decode(output[0], skip_special_tokens=True) | |
| #Test the chatbot | |
| #question = "Where does the IBA conduct aptitude tests and interviews?" # Replace with your desired prompt | |
| #answer = get_answer(model, tokenizer, question,50) | |
| #print("Generated response:", answer) | |
| import gradio as gr | |
| def chat(chat_history, user_input): | |
| bot_response = get_answer(model, tokenizer,user_input,100) | |
| print(bot_response) | |
| response = "" | |
| for letter in ''.join(bot_response.response): #[bot_response[i:i+1] for i in range(0, len(bot_response), 1)]: | |
| response += letter + "" | |
| yield chat_history + [(user_input, bot_response)] | |
| with gr.Blocks() as demo: | |
| gr.Markdown('# Q&A Bot with Fine-tuned Model') | |
| with gr.Tab("Knowledge Bot"): | |
| # inputbox = gr.Textbox("Input your text to build a Q&A Bot here.....") | |
| chatbot = gr.Chatbot() | |
| message = gr.Textbox ("what undergraduate programs does IBA offer?") | |
| message.submit(chat, [chatbot, message], chatbot) | |
| demo.queue().launch(debug = True) | |