mirror of
https://github.com/oobabooga/text-generation-webui.git
synced 2024-11-25 09:19:23 +01:00
Move new chat button, improve history deletion handling
This commit is contained in:
parent
4f7e1eeafd
commit
615fa11af8
@ -517,6 +517,26 @@ def load_latest_history(state):
|
|||||||
return history
|
return history
|
||||||
|
|
||||||
|
|
||||||
|
def load_history_after_deletion(state, idx):
|
||||||
|
'''
|
||||||
|
Loads the latest history for the given character in chat or chat-instruct
|
||||||
|
mode, or the latest instruct history for instruct mode.
|
||||||
|
'''
|
||||||
|
|
||||||
|
if shared.args.multi_user:
|
||||||
|
return start_new_chat(state)
|
||||||
|
|
||||||
|
histories = find_all_histories(state)
|
||||||
|
|
||||||
|
if len(histories) > 0:
|
||||||
|
history = load_history(histories[int(idx)], state['character_menu'], state['mode'])
|
||||||
|
else:
|
||||||
|
history = start_new_chat(state)
|
||||||
|
histories = find_all_histories(state)
|
||||||
|
|
||||||
|
return history, gr.update(choices=histories, value=histories[int(idx)])
|
||||||
|
|
||||||
|
|
||||||
def load_history(unique_id, character, mode):
|
def load_history(unique_id, character, mode):
|
||||||
p = get_history_file_path(unique_id, character, mode)
|
p = get_history_file_path(unique_id, character, mode)
|
||||||
|
|
||||||
|
@ -56,9 +56,6 @@ def create_ui():
|
|||||||
shared.gradio['Send dummy message'] = gr.Button('Send dummy message')
|
shared.gradio['Send dummy message'] = gr.Button('Send dummy message')
|
||||||
shared.gradio['Send dummy reply'] = gr.Button('Send dummy reply')
|
shared.gradio['Send dummy reply'] = gr.Button('Send dummy reply')
|
||||||
|
|
||||||
with gr.Row():
|
|
||||||
shared.gradio['Start new chat'] = gr.Button('Start new chat')
|
|
||||||
|
|
||||||
with gr.Row():
|
with gr.Row():
|
||||||
shared.gradio['send-chat-to-default'] = gr.Button('Send to default')
|
shared.gradio['send-chat-to-default'] = gr.Button('Send to default')
|
||||||
shared.gradio['send-chat-to-notebook'] = gr.Button('Send to notebook')
|
shared.gradio['send-chat-to-notebook'] = gr.Button('Send to notebook')
|
||||||
@ -73,6 +70,7 @@ def create_ui():
|
|||||||
shared.gradio['delete_chat-confirm'] = gr.Button('Confirm', variant='stop', visible=False, elem_classes='refresh-button')
|
shared.gradio['delete_chat-confirm'] = gr.Button('Confirm', variant='stop', visible=False, elem_classes='refresh-button')
|
||||||
shared.gradio['delete_chat-cancel'] = gr.Button('Cancel', visible=False, elem_classes='refresh-button')
|
shared.gradio['delete_chat-cancel'] = gr.Button('Cancel', visible=False, elem_classes='refresh-button')
|
||||||
shared.gradio['rename_chat'] = gr.Button('Rename', elem_classes='refresh-button', interactive=not mu)
|
shared.gradio['rename_chat'] = gr.Button('Rename', elem_classes='refresh-button', interactive=not mu)
|
||||||
|
shared.gradio['Start new chat'] = gr.Button('New chat', elem_classes='refresh-button')
|
||||||
|
|
||||||
with gr.Row(elem_id='rename-row'):
|
with gr.Row(elem_id='rename-row'):
|
||||||
shared.gradio['rename_to'] = gr.Textbox(label='Rename to:', placeholder='New name', visible=False, elem_classes=['no-background'])
|
shared.gradio['rename_to'] = gr.Textbox(label='Rename to:', placeholder='New name', visible=False, elem_classes=['no-background'])
|
||||||
@ -248,12 +246,13 @@ def create_event_handlers():
|
|||||||
|
|
||||||
shared.gradio['delete_chat'].click(lambda: [gr.update(visible=True), gr.update(visible=False), gr.update(visible=True)], None, gradio(clear_arr))
|
shared.gradio['delete_chat'].click(lambda: [gr.update(visible=True), gr.update(visible=False), gr.update(visible=True)], None, gradio(clear_arr))
|
||||||
shared.gradio['delete_chat-cancel'].click(lambda: [gr.update(visible=False), gr.update(visible=True), gr.update(visible=False)], None, gradio(clear_arr))
|
shared.gradio['delete_chat-cancel'].click(lambda: [gr.update(visible=False), gr.update(visible=True), gr.update(visible=False)], None, gradio(clear_arr))
|
||||||
|
|
||||||
shared.gradio['delete_chat-confirm'].click(
|
shared.gradio['delete_chat-confirm'].click(
|
||||||
ui.gather_interface_values, gradio(shared.input_elements), gradio('interface_state')).then(
|
ui.gather_interface_values, gradio(shared.input_elements), gradio('interface_state')).then(
|
||||||
|
lambda x, y: str(chat.find_all_histories(x).index(y)), gradio('interface_state', 'unique_id'), gradio('temporary_text')).then(
|
||||||
chat.delete_history, gradio('unique_id', 'character_menu', 'mode'), None).then(
|
chat.delete_history, gradio('unique_id', 'character_menu', 'mode'), None).then(
|
||||||
chat.load_latest_history, gradio('interface_state'), gradio('history')).then(
|
chat.load_history_after_deletion, gradio('interface_state', 'temporary_text'), gradio('history', 'unique_id')).then(
|
||||||
chat.redraw_html, gradio(reload_arr), gradio('display')).then(
|
chat.redraw_html, gradio(reload_arr), gradio('display')).then(
|
||||||
lambda x: gr.update(choices=(histories := chat.find_all_histories(x)), value=histories[0]), gradio('interface_state'), gradio('unique_id')).then(
|
|
||||||
lambda: [gr.update(visible=False), gr.update(visible=True), gr.update(visible=False)], None, gradio(clear_arr))
|
lambda: [gr.update(visible=False), gr.update(visible=True), gr.update(visible=False)], None, gradio(clear_arr))
|
||||||
|
|
||||||
shared.gradio['rename_chat'].click(
|
shared.gradio['rename_chat'].click(
|
||||||
|
Loading…
Reference in New Issue
Block a user