Spaces:
Runtime error
Runtime error
File size: 4,712 Bytes
b308128 937be2f 7f877a9 b308128 8eb0f9a 7eaa7b0 937be2f 04fc021 bbe45f1 49c7ae8 b286b3f 49c7ae8 35e0ec8 edb0bcd 35e0ec8 b286b3f a450a5f b286b3f c597e04 8eb0f9a b286b3f a04a444 2a20876 b286b3f 2a20876 b286b3f 2a20876 b286b3f a04a444 b286b3f a04a444 4db7fa2 b286b3f a04a444 b286b3f a04a444 7045d9d ac4f141 9a09a8e a450a5f 2a20876 5e8be56 8c245db |
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 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
import gradio as gr
from transformers import AutoTokenizer, AutoModelForCausalLM
import time
# Load the Vicuna 7B v1.3 LMSys model and tokenizer
model_name = "lmsys/vicuna-7b-v1.3"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
template_single = '''Output any <{}> in the following sentence one per line: "{}"'''
linguistic_entities = [
"Noun",
"Determiner",
"Noun phrase",
"Verb phrase",
"Dependent Clause",
"T-units"
]
with gr.Blocks() as demo:
gr.Markdown("# LLM Evaluator With Linguistic Scrutiny")
gr.Markdown(" Description ")
# Dropdown for linguistic entities
entity_dropdown = gr.Dropdown(linguistic_entities, label="Select Linguistic Entity")
prompt_POS = gr.Textbox(show_label=False, placeholder="Write a prompt and press enter")
submit_btn = gr.Button(label="Submit")
gr.Markdown("Strategy 1 QA-Based Prompting")
with gr.Row():
vicuna_S1_chatbot_POS = gr.Chatbot(label="vicuna-7b")
llama_S1_chatbot_POS = gr.Chatbot(label="llama-7b")
gpt_S1_chatbot_POS = gr.Chatbot(label="gpt-3.5")
clear = gr.ClearButton([prompt_POS, vicuna_S1_chatbot_POS])
gr.Markdown("Strategy 2 Instruction-Based Prompting")
with gr.Row():
vicuna_S2_chatbot_POS = gr.Chatbot(label="vicuna-7b")
llama_S2_chatbot_POS = gr.Chatbot(label="llama-7b")
gpt_S2_chatbot_POS = gr.Chatbot(label="gpt-3.5")
clear = gr.ClearButton([prompt_POS, vicuna_S2_chatbot_POS])
gr.Markdown("Strategy 3 Structured Prompting")
with gr.Row():
vicuna_S3_chatbot_POS = gr.Chatbot(label="vicuna-7b")
llama_S3_chatbot_POS = gr.Chatbot(label="llama-7b")
gpt_S3_chatbot_POS = gr.Chatbot(label="gpt-3.5")
clear = gr.ClearButton([prompt_POS, vicuna_S3_chatbot_POS])
# gr.Markdown(" Description ")
# prompt_CHUNK = gr.Textbox(show_label=False, placeholder="Write a prompt and press enter")
# gr.Markdown("Strategy 1 QA")
# with gr.Row():
# vicuna_S1_chatbot_CHUNK = gr.Chatbot(label="vicuna-7b")
# llama_S1_chatbot_CHUNK = gr.Chatbot(label="llama-7b")
# gpt_S1_chatbot_CHUNK = gr.Chatbot(label="gpt-3.5")
# clear = gr.ClearButton([prompt_CHUNK, vicuna_S1_chatbot_CHUNK])
# gr.Markdown("Strategy 2 Instruction")
# with gr.Row():
# vicuna_S2_chatbot_CHUNK = gr.Chatbot(label="vicuna-7b")
# llama_S2_chatbot_CHUNK = gr.Chatbot(label="llama-7b")
# gpt_S2_chatbot_CHUNK = gr.Chatbot(label="gpt-3.5")
# clear = gr.ClearButton([prompt_CHUNK, vicuna_S2_chatbot_CHUNK])
# gr.Markdown("Strategy 3 Structured Prompting")
# with gr.Row():
# vicuna_S3_chatbot_CHUNK = gr.Chatbot(label="vicuna-7b")
# llama_S3_chatbot_CHUNK = gr.Chatbot(label="llama-7b")
# gpt_S3_chatbot_CHUNK = gr.Chatbot(label="gpt-3.5")
# clear = gr.ClearButton([prompt_CHUNK, vicuna_S3_chatbot_CHUNK])
# def respond(message, chat_history):
# input_ids = tokenizer.encode(message, return_tensors="pt")
# output_ids = model.generate(input_ids, max_length=50, num_beams=5, no_repeat_ngram_size=2)
# bot_message = tokenizer.decode(output_ids[0], skip_special_tokens=True)
# chat_history.append((message, bot_message))
# time.sleep(2)
# return "", chat_history
def respond_entities(entity, message, chat_history):
prompt = template_single.format(entity, message)
input_ids = tokenizer.encode(prompt, return_tensors="pt")
output_ids = model.generate(input_ids, max_length=50, num_beams=5, no_repeat_ngram_size=2)
bot_message = tokenizer.decode(output_ids[0], skip_special_tokens=True)
chat_history.append((message, bot_message))
time.sleep(2)
return entity, message, bot_message
submit_btn.click(respond_entities, [entity_dropdown, prompt_POS, vicuna_S1_chatbot_POS], [entity_dropdown, prompt_POS, vicuna_S1_chatbot_POS])
submit_btn.click(respond_entities, [entity_dropdown, prompt_POS, vicuna_S2_chatbot_POS], [entity_dropdown, prompt_POS, vicuna_S2_chatbot_POS])
submit_btn.click(respond_entities, [entity_dropdown, prompt_POS, vicuna_S3_chatbot_POS], [entity_dropdown, prompt_POS, vicuna_S3_chatbot_POS])
# prompt_CHUNK.submit(respond_entities, [prompt_CHUNK, vicuna_S1_chatbot_CHUNK], [prompt_CHUNK, vicuna_S1_chatbot_CHUNK])
# prompt_CHUNK.submit(respond_entities, [prompt_CHUNK, vicuna_S2_chatbot_CHUNK], [prompt_CHUNK, vicuna_S2_chatbot_CHUNK])
# prompt_CHUNK.submit(respond_entities, [prompt_CHUNK, vicuna_S3_chatbot_CHUNK], [prompt_CHUNK, vicuna_S3_chatbot_CHUNK])
demo.launch()
|