Skip to content

Commit d30a140

Browse files
committed
Further reorganize the UI
1 parent ffc6cb3 commit d30a140

File tree

4 files changed

+45
-39
lines changed

4 files changed

+45
-39
lines changed

css/chat.css

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,25 @@
11
.h-\[40vh\], .wrap.svelte-byatnx.svelte-byatnx.svelte-byatnx {
22
height: 66.67vh
33
}
4+
45
.gradio-container {
5-
max-width: 800px !important;
66
margin-left: auto !important;
77
margin-right: auto !important;
88
}
9+
910
.w-screen {
1011
width: unset
1112
}
13+
1214
div.svelte-362y77>*, div.svelte-362y77>.form>* {
1315
flex-wrap: nowrap
1416
}
17+
1518
/* fixes the API documentation in chat mode */
1619
.api-docs.svelte-1iguv9h.svelte-1iguv9h.svelte-1iguv9h {
1720
display: grid;
1821
}
22+
1923
.pending.svelte-1ed2p3z {
2024
opacity: 1;
2125
}
22-

css/main.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
document.getElementById("main").parentNode.childNodes[0].style = "border: none; background-color: #8080802b; margin-bottom: 40px"
2-
document.getElementById("main").parentNode.style = "padding: 0; margin: 0"
3-
document.getElementById("main").parentNode.parentNode.parentNode.style = "padding: 0"
1+
document.getElementById("main").parentNode.childNodes[0].style = "border: none; background-color: #8080802b; margin-bottom: 40px";
2+
document.getElementById("main").parentNode.style = "padding: 0; margin: 0";
3+
document.getElementById("main").parentNode.parentNode.parentNode.style = "padding: 0";

modules/ui.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@
99
with open(Path(__file__).resolve().parent / '../css/chat.css', 'r') as f:
1010
chat_css = f.read()
1111
with open(Path(__file__).resolve().parent / '../css/main.js', 'r') as f:
12-
page_js = f.read()
12+
main_js = f.read()
13+
with open(Path(__file__).resolve().parent / '../css/chat.js', 'r') as f:
14+
chat_js = f.read()
1315

1416
class ToolButton(gr.Button, gr.components.FormComponent):
1517
"""Small button with single emoji as text, fits inside gradio forms"""

server.py

+34-33
Original file line numberDiff line numberDiff line change
@@ -115,36 +115,37 @@ def create_model_and_preset_menus():
115115
def create_settings_menus(default_preset):
116116
generate_params = load_preset_values(default_preset if not shared.args.flexgen else 'Naive', return_dict=True)
117117

118-
with gr.Box():
119-
gr.Markdown('Custom generation parameters')
120-
with gr.Row():
121-
with gr.Column():
122-
shared.gradio['temperature'] = gr.Slider(0.01, 1.99, value=generate_params['temperature'], step=0.01, label='temperature')
123-
shared.gradio['top_p'] = gr.Slider(0.0,1.0,value=generate_params['top_p'],step=0.01,label='top_p')
124-
shared.gradio['top_k'] = gr.Slider(0,200,value=generate_params['top_k'],step=1,label='top_k')
125-
shared.gradio['typical_p'] = gr.Slider(0.0,1.0,value=generate_params['typical_p'],step=0.01,label='typical_p')
126-
with gr.Column():
127-
shared.gradio['repetition_penalty'] = gr.Slider(1.0, 1.5, value=generate_params['repetition_penalty'],step=0.01,label='repetition_penalty')
128-
shared.gradio['encoder_repetition_penalty'] = gr.Slider(0.8, 1.5, value=generate_params['encoder_repetition_penalty'],step=0.01,label='encoder_repetition_penalty')
129-
shared.gradio['no_repeat_ngram_size'] = gr.Slider(0, 20, step=1, value=generate_params['no_repeat_ngram_size'], label='no_repeat_ngram_size')
130-
shared.gradio['min_length'] = gr.Slider(0, 2000, step=1, value=generate_params['min_length'] if shared.args.no_stream else 0, label='min_length', interactive=shared.args.no_stream)
131-
shared.gradio['do_sample'] = gr.Checkbox(value=generate_params['do_sample'], label='do_sample')
132-
133-
with gr.Box():
134-
gr.Markdown('Contrastive search:')
135-
shared.gradio['penalty_alpha'] = gr.Slider(0, 5, value=generate_params['penalty_alpha'], label='penalty_alpha')
136-
137-
with gr.Box():
138-
gr.Markdown('Beam search (uses a lot of VRAM):')
139-
with gr.Row():
140-
with gr.Column():
141-
shared.gradio['num_beams'] = gr.Slider(1, 20, step=1, value=generate_params['num_beams'], label='num_beams')
142-
with gr.Column():
143-
shared.gradio['length_penalty'] = gr.Slider(-5, 5, value=generate_params['length_penalty'], label='length_penalty')
144-
shared.gradio['early_stopping'] = gr.Checkbox(value=generate_params['early_stopping'], label='early_stopping')
145-
146-
with gr.Box():
147-
gr.Markdown('Soft prompt')
118+
with gr.Row():
119+
with gr.Column():
120+
with gr.Box():
121+
gr.Markdown('Custom generation parameters')
122+
with gr.Row():
123+
with gr.Column():
124+
shared.gradio['temperature'] = gr.Slider(0.01, 1.99, value=generate_params['temperature'], step=0.01, label='temperature')
125+
shared.gradio['top_p'] = gr.Slider(0.0,1.0,value=generate_params['top_p'],step=0.01,label='top_p')
126+
shared.gradio['top_k'] = gr.Slider(0,200,value=generate_params['top_k'],step=1,label='top_k')
127+
shared.gradio['typical_p'] = gr.Slider(0.0,1.0,value=generate_params['typical_p'],step=0.01,label='typical_p')
128+
with gr.Column():
129+
shared.gradio['repetition_penalty'] = gr.Slider(1.0, 1.5, value=generate_params['repetition_penalty'],step=0.01,label='repetition_penalty')
130+
shared.gradio['encoder_repetition_penalty'] = gr.Slider(0.8, 1.5, value=generate_params['encoder_repetition_penalty'],step=0.01,label='encoder_repetition_penalty')
131+
shared.gradio['no_repeat_ngram_size'] = gr.Slider(0, 20, step=1, value=generate_params['no_repeat_ngram_size'], label='no_repeat_ngram_size')
132+
shared.gradio['min_length'] = gr.Slider(0, 2000, step=1, value=generate_params['min_length'] if shared.args.no_stream else 0, label='min_length', interactive=shared.args.no_stream)
133+
shared.gradio['do_sample'] = gr.Checkbox(value=generate_params['do_sample'], label='do_sample')
134+
with gr.Column():
135+
with gr.Box():
136+
gr.Markdown('Contrastive search')
137+
shared.gradio['penalty_alpha'] = gr.Slider(0, 5, value=generate_params['penalty_alpha'], label='penalty_alpha')
138+
139+
with gr.Box():
140+
gr.Markdown('Beam search (uses a lot of VRAM)')
141+
with gr.Row():
142+
with gr.Column():
143+
shared.gradio['num_beams'] = gr.Slider(1, 20, step=1, value=generate_params['num_beams'], label='num_beams')
144+
with gr.Column():
145+
shared.gradio['length_penalty'] = gr.Slider(-5, 5, value=generate_params['length_penalty'], label='length_penalty')
146+
shared.gradio['early_stopping'] = gr.Checkbox(value=generate_params['early_stopping'], label='early_stopping')
147+
148+
with gr.Accordion('Soft prompt', open=False):
148149
with gr.Row():
149150
shared.gradio['softprompts_menu'] = gr.Dropdown(choices=available_softprompts, value='None', label='Soft prompt')
150151
ui.create_refresh_button(shared.gradio['softprompts_menu'], lambda : None, lambda : {'choices': get_available_softprompts()}, 'refresh-button')
@@ -320,7 +321,7 @@ def create_settings_menus(default_preset):
320321
shared.gradio['upload_img_me'].upload(reload_func, reload_inputs, [shared.gradio['display']])
321322
shared.gradio['Stop'].click(reload_func, reload_inputs, [shared.gradio['display']])
322323

323-
shared.gradio['interface'].load(None, None, None, _js=f"() => {{{ui.page_js}}}")
324+
shared.gradio['interface'].load(None, None, None, _js=f"() => {{{ui.main_js+ui.chat_js}}}")
324325
shared.gradio['interface'].load(lambda : chat.load_default_history(shared.settings[f'name1{suffix}'], shared.settings[f'name2{suffix}']), None, None)
325326
shared.gradio['interface'].load(reload_func, reload_inputs, [shared.gradio['display']], show_progress=True)
326327

@@ -351,7 +352,7 @@ def create_settings_menus(default_preset):
351352
gen_events.append(shared.gradio['Generate'].click(generate_reply, shared.input_params, output_params, show_progress=shared.args.no_stream, api_name='textgen'))
352353
gen_events.append(shared.gradio['textbox'].submit(generate_reply, shared.input_params, output_params, show_progress=shared.args.no_stream))
353354
shared.gradio['Stop'].click(None, None, None, cancels=gen_events)
354-
shared.gradio['interface'].load(None, None, None, _js=f"() => {{{ui.page_js}}}")
355+
shared.gradio['interface'].load(None, None, None, _js=f"() => {{{ui.main_js}}}")
355356

356357
else:
357358
with gr.Blocks(css=ui.css, analytics_enabled=False, title=title) as shared.gradio['interface']:
@@ -387,7 +388,7 @@ def create_settings_menus(default_preset):
387388
gen_events.append(shared.gradio['textbox'].submit(generate_reply, shared.input_params, output_params, show_progress=shared.args.no_stream))
388389
gen_events.append(shared.gradio['Continue'].click(generate_reply, [shared.gradio['output_textbox']] + shared.input_params[1:], output_params, show_progress=shared.args.no_stream))
389390
shared.gradio['Stop'].click(None, None, None, cancels=gen_events)
390-
shared.gradio['interface'].load(None, None, None, _js=f"() => {{{ui.page_js}}}")
391+
shared.gradio['interface'].load(None, None, None, _js=f"() => {{{ui.main_js}}}")
391392

392393
shared.gradio['interface'].queue()
393394
if shared.args.listen:

0 commit comments

Comments
 (0)