Spaces:
Sleeping
Sleeping
File size: 2,341 Bytes
d3e5d4a ec6430d d3e5d4a ec6430d f5b98ac c76cba0 f5b98ac 2826012 ec6430d b92c5c3 ec6430d 2826012 f5b98ac 2826012 ec6430d f5b98ac ec6430d f5b98ac ec6430d 2826012 c76cba0 3d0a56e f5b98ac 86805a8 f5b98ac 5cd3b22 ec6430d b92c5c3 ec6430d 5cd3b22 4af0fee |
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 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
import gradio as gr
from transformers import AutoTokenizer, AutoModelForCausalLM
import time
# Load model and tokenizer
tokenizer = AutoTokenizer.from_pretrained("TinyLlama/TinyLlama-1.1B-intermediate-step-1431k-3T")
model = AutoModelForCausalLM.from_pretrained("TinyLlama/TinyLlama-1.1B-intermediate-step-1431k-3T")
def generate_text(prompt, max_length=100, min_length=20, temperature=1.0):
# Tokenize the prompt
input_ids = tokenizer.encode(prompt, return_tensors="pt")
# Generate text
output = model.generate(
input_ids,
max_length=max_length,
min_length=min_length,
num_return_sequences=1,
temperature=temperature
)
# Decode the generated output
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
return generated_text
def print_like_dislike(x: gr.LikeData):
print(x.index, x.value, x.liked)
def add_text(history, text):
history = history + [(text, None)]
return history, gr.Textbox(value="", interactive=False)
def bot(history, max_length=100, min_length=20, temperature=1.0):
prompt = history[-1][0]
response = generate_text(prompt, max_length=max_length, min_length=min_length, temperature=temperature)
history[-1][1] = ""
for character in response:
history[-1][1] += character
time.sleep(0.05)
yield history
with gr.Blocks() as demo:
chatbot = gr.Chatbot(
[],
elem_id="chatbot",
bubble_full_width=False,
avatar_images=(None, None), # Set avatar image path or URL
)
with gr.Row():
txt = gr.Textbox(
scale=4,
show_label=False,
placeholder="Enter text and press enter, or upload an image",
container=False,
)
max_len_slider = gr.Slider(0, 2048, 100, label="Max Length")
min_len_slider = gr.Slider(0, 2048, 20, label="Min Length")
temp_slider = gr.Slider(0.1, 2.0, 1.0, label="Temperature")
txt_msg = txt.submit(add_text, [chatbot, txt], [chatbot, txt], queue=False).then(
bot, chatbot, chatbot, max_len_slider, min_len_slider, temp_slider
)
txt_msg.then(lambda: gr.Textbox(interactive=True), None, [txt], queue=False)
chatbot.like(print_like_dislike, None, None)
demo.queue()
if __name__ == "__main__":
demo.launch()
|