Spaces:
Running
Running
from transformers import AutoModelForCausalLM, AutoTokenizer | |
import gradio as gr | |
checkpoint = "HuggingFaceTB/SmolLM2-135M-Instruct" | |
device = "cpu" # "cuda" or "cpu" | |
tokenizer = AutoTokenizer.from_pretrained(checkpoint) | |
model = AutoModelForCausalLM.from_pretrained(checkpoint).to(device) | |
def predict(message, history): | |
history.append({"role": "user", "content": message}) | |
input_text = tokenizer.apply_chat_template(history, tokenize=False) | |
inputs = tokenizer.encode(input_text, return_tensors="pt").to(device) | |
outputs = model.generate(inputs, max_new_tokens=100, temperature=0.2, top_p=0.9, do_sample=True) | |
decoded = tokenizer.decode(outputs[0]) | |
response = decoded.split("<|im_start|>assistant\n")[-1].split("<|im_end|>")[0] | |
return response | |
demo = gr.ChatInterface(predict, type="messages") | |
demo.launch() | |