Spaces:
Configuration error
Configuration error
| import gradio as gr | |
| from transformers import AutoModelForCausalLM, AutoTokenizer | |
| # Load the satvikag/chatbot model and tokenizer from Hugging Face | |
| model_name = "satvikag/chatbot" | |
| model = AutoModelForCausalLM.from_pretrained(model_name) | |
| tokenizer = AutoTokenizer.from_pretrained(model_name) | |
| # Initialize a cache to store previous responses | |
| cache = {} | |
| # Function to handle user input and generate chatbot response | |
| def chatbot_response(user_input): | |
| if user_input in cache: | |
| return cache[user_input] # Return the cached response if available | |
| # Encode user input | |
| new_user_input_ids = tokenizer.encode(user_input + tokenizer.eos_token, return_tensors='pt') | |
| # Get the response from the model | |
| bot_output = model.generate(new_user_input_ids, max_length=1000, pad_token_id=tokenizer.eos_token_id, no_repeat_ngram_size=2) | |
| # Decode the response and return | |
| bot_output_text = tokenizer.decode(bot_output[:, new_user_input_ids.shape[-1]:][0], skip_special_tokens=True) | |
| # Cache the response | |
| cache[user_input] = bot_output_text | |
| return bot_output_text | |
| # Create a simple interface using Gradio | |
| iface = gr.Interface(fn=chatbot_response, inputs="text", outputs="text", live=True) | |
| # Launch the chatbot | |
| iface.launch() | |