Spaces:
Sleeping
Sleeping
import fn | |
import gradio as gr | |
with gr.Blocks() as demo: | |
with gr.Tab('config'): | |
info = gr.Markdown() | |
with gr.Row(): | |
with gr.Column(scale=1): | |
model = gr.Textbox( | |
value=fn.cfg['model_name'], | |
label='model', | |
interactive=True, | |
show_copy_button=True, | |
) | |
qtype = gr.Dropdown( | |
value=fn.cfg['qtype'], | |
choices=['bnb','gptq','gguf', 'awq'], | |
label='qtype', | |
interactive=True, | |
) | |
dtype = gr.Dropdown( | |
value=fn.cfg['dtype'], | |
choices=['4bit','8bit','fp16', 'bf16'], | |
label='dtype', | |
interactive=True, | |
allow_custom_value=True, | |
) | |
with gr.Column(scale=1): | |
max_new_tokens = gr.Textbox( | |
value=fn.cfg['max_new_tokens'], | |
label='max_new_tokens', | |
interactive=True, | |
show_copy_button=True, | |
) | |
temperature = gr.Textbox( | |
value=fn.cfg['temperature'], | |
label='temperature', | |
interactive=True, | |
show_copy_button=True, | |
) | |
top_p = gr.Textbox( | |
value=fn.cfg['top_p'], | |
label='top_p', | |
interactive=True, | |
show_copy_button=True, | |
) | |
top_k = gr.Textbox( | |
value=fn.cfg['top_k'], | |
label='top_k', | |
interactive=True, | |
show_copy_button=True, | |
) | |
repetition_penalty = gr.Textbox( | |
value=fn.cfg['repetition_penalty'], | |
label='repetition_penalty', | |
interactive=True, | |
show_copy_button=True, | |
) | |
with gr.Row(): | |
with gr.Column(scale=1): | |
inst_template = gr.Textbox( | |
value='', | |
lines=10, | |
label='inst_template', | |
interactive=True, | |
show_copy_button=True, | |
) | |
with gr.Column(scale=1): | |
chat_template = gr.Textbox( | |
value='', | |
lines=10, | |
label='chat_template', | |
interactive=True, | |
show_copy_button=True, | |
) | |
set_button = gr.Button(value='Save') | |
with gr.Tab('instruct'): | |
with gr.Row(): | |
with gr.Column(scale=1): | |
instruction = gr.Textbox( | |
lines=20, | |
label='instruction', | |
interactive=True, | |
show_copy_button=True, | |
) | |
input = gr.Textbox( | |
lines=1, | |
label='input', | |
interactive=True, | |
show_copy_button=True, | |
) | |
with gr.Column(scale=1): | |
said = gr.Textbox( | |
label='said', | |
lines=20, | |
show_copy_button=True, | |
) | |
numel = gr.Textbox( | |
lines=1, | |
label='numel', | |
show_copy_button=True, | |
) | |
inst_button = gr.Button(value='inst') | |
numel_button = gr.Button(value='numel') | |
with gr.Tab('chat'): | |
gr.ChatInterface(fn.chat) | |
set_button.click( | |
fn=fn.set_config, | |
inputs=[model, qtype, dtype, instruction, inst_template, chat_template, max_new_tokens, temperature, top_p, top_k, repetition_penalty], | |
outputs=[info], | |
) | |
inst_button.click( | |
fn=fn.chat, | |
inputs=[input, input, instruction], | |
outputs=[said], | |
) | |
numel_button.click( | |
fn=fn.numel, | |
inputs=[input, input, instruction], | |
outputs=[numel], | |
) | |
if __name__ == '__main__': | |
demo.launch() | |