import gradio as gr from transformers import AutoTokenizer, AutoModelForCausalLM from peft import PeftModel import torch # Base model and adapter paths base_model_name = "unsloth/mistral-7b-instruct-v0.3-bnb-4bit" adapter_model_name = "jimy26/Chatbot" # Load tokenizer and base model tokenizer = AutoTokenizer.from_pretrained(base_model_name) base_model = AutoModelForCausalLM.from_pretrained( base_model_name, device_map="auto", torch_dtype=torch.float16 ) # Load LoRA adapter on top model = PeftModel.from_pretrained(base_model, adapter_model_name) # Chat function def chat(prompt): inputs = tokenizer(prompt, return_tensors="pt").to(model.device) outputs = model.generate(**inputs, max_new_tokens=100) return tokenizer.decode(outputs[0], skip_special_tokens=True) # Gradio interface gr.Interface(fn=chat, inputs="text", outputs="text").launch()