Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| from transformers import GPT2LMHeadModel, GPT2Tokenizer | |
| import torch | |
| # Load model and tokenizer | |
| model = GPT2LMHeadModel.from_pretrained("burman-ai/gpt2-chatbot") | |
| tokenizer = GPT2Tokenizer.from_pretrained("burman-ai/gpt2-chatbot") | |
| tokenizer.pad_token = tokenizer.eos_token | |
| # Chat history list | |
| chat_history = [] | |
| # Generate response | |
| def chatbot(user_input): | |
| global chat_history | |
| chat_history.append(f"User: {user_input}") | |
| prompt = "\n".join(chat_history) + "\nBot:" | |
| inputs = tokenizer.encode(prompt, return_tensors="pt", truncation=True, max_length=512) | |
| outputs = model.generate(inputs, max_length=512, pad_token_id=tokenizer.eos_token_id, do_sample=True, top_k=50, top_p=0.95) | |
| response = tokenizer.decode(outputs[0], skip_special_tokens=True) | |
| response = response.split("Bot:")[-1].strip().split("\n")[0] | |
| chat_history.append(f"Bot: {response}") | |
| return response | |
| def clear_chat(): | |
| global chat_history | |
| chat_history = [] | |
| return "Chat cleared." | |
| # UI | |
| demo = gr.Interface( | |
| fn=chatbot, | |
| inputs=gr.Textbox(lines=2, placeholder="Type your message here..."), | |
| outputs="text", | |
| title="GPT-2 Chatbot", | |
| description="Chat with a fine-tuned GPT-2 model.", | |
| live=True | |
| ).queue() | |
| demo.launch() | |