File size: 1,092 Bytes
6dc4c3e
 
86573b5
6dc4c3e
 
86573b5
 
6dc4c3e
 
 
 
 
 
86573b5
 
 
 
 
 
6dc4c3e
86573b5
 
 
 
 
 
 
 
 
 
 
6dc4c3e
86573b5
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
import gradio as gr
from transformers import AutoTokenizer
import spaces

# Function to load and tokenize the message using the selected tokenizer
@spaces.GPU
def tokenize(message, tokenizer_name):
    try:
        tokenizer = AutoTokenizer.from_pretrained(tokenizer_name)
        return str(tokenizer.encode(message))
    except Exception as e:
        return f"Error loading tokenizer: {str(e)}"

# Wrapper function to handle chat interaction
def chat(message, history, tokenizer_name):
    tokenized_message = tokenize(message, tokenizer_name)
    history.append((message, tokenized_message))
    return history, history

# Gradio interface
with gr.Blocks() as demo:
    tokenizer_input = gr.Textbox(placeholder="Enter the tokenizer name (e.g., gpt2, bert-base-uncased)", label="Tokenizer Name")
    chatbot = gr.Chatbot()
    msg = gr.Textbox()
    clear = gr.Button("Clear")

    def clear_history():
        return [], []

    msg.submit(chat, inputs=[msg, chatbot, tokenizer_input], outputs=[chatbot, chatbot])
    clear.click(clear_history, outputs=[chatbot, chatbot])

demo.launch()