| import gradio as gr |
| from transformers import AutoModelForCausalLM, AutoTokenizer |
|
|
| tokenizer = AutoTokenizer.from_pretrained("microsoft/DialoGPT-small") |
| model = AutoModelForCausalLM.from_pretrained("microsoft/DialoGPT-small") |
|
|
| def chat(message, history): |
| |
| new_user_input = tokenizer.encode(message + tokenizer.eos_token, return_tensors="pt") |
| |
| |
| bot_output = model.generate( |
| new_user_input, |
| max_length=100, |
| pad_token_id=tokenizer.eos_token_id, |
| do_sample=True, |
| temperature=0.8, |
| top_p=0.9 |
| ) |
| |
| |
| response = tokenizer.decode(bot_output[0], skip_special_tokens=True) |
| |
| |
| if response.startswith(message): |
| response = response[len(message):].strip() |
| |
| |
| if not response: |
| response = "Hello! How can I help you today?" |
| |
| return response |
|
|
| gr.ChatInterface(fn=chat, title="My Chatbot").launch() |