Spaces:
Sleeping
Sleeping
File size: 1,174 Bytes
fddd482 b29974e a4b631b 53f52db fddd482 b29974e a4b631b b29974e ab30e5f b29974e a60fda2 b29974e ab30e5f 9e57f80 ab30e5f b29974e ba9ca24 b29974e ab30e5f c185875 ab30e5f b29974e |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
import spaces
from transformers import AutoModelForCausalLM, AutoTokenizer
import gradio as gr
checkpoint = "WillHeld/olmo-raccoon"
device = "cuda"
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForCausalLM.from_pretrained(checkpoint).to(device)
@spaces.GPU(duration=120)
def predict(message, history, temperature, top_p):
history.append({"role": "user", "content": message})
input_text = tokenizer.apply_chat_template(history, tokenize=False, add_generation_prompt=True)
inputs = tokenizer.encode(input_text, return_tensors="pt").to(device)
outputs = model.generate(
inputs,
max_new_tokens=1024,
temperature=float(temperature),
top_p=float(top_p),
do_sample=True
)
decoded = tokenizer.decode(outputs[0])
response = decoded.split("<|assistant|>")[-1]
return response
with gr.Blocks() as demo:
chatbot = gr.ChatInterface(
predict,
additional_inputs=[
gr.Slider(0.1, 2.0, value=0.7, step=0.1, label="Temperature"),
gr.Slider(0.1, 1.0, value=0.9, step=0.05, label="Top-P")
],
type="messages"
)
demo.launch() |