复用prompt, 可以选择继承所有上下文

This commit is contained in:
w_xiaolizu
2023-06-08 12:10:56 +08:00
parent 0a6bb18a2e
commit 11406f5c2a
2 changed files with 12 additions and 8 deletions

View File

@ -113,7 +113,7 @@ class ChatBot(ChatBotFrame):
"\t 重新生成尝试在prompt不变的情况下多次生成结果优中选优\n"
self.pro_edit_txt = gr.Textbox(show_label=False, info='Prompt编辑区', lines=14,
placeholder=Tips).style(container=False)
self.pro_name_txt = gr.Textbox(show_label=False, placeholder='prompt功能名', ).style(
self.pro_name_txt = gr.Textbox(show_label=False, placeholder='是否全复用prompt/prompt功能名', ).style(
container=False)
with gr.Row(elem_id='sm_btn'):
self.pro_reuse_btn = gr.Button("复用Prompt", variant="secondary").style(size='sm').style(full_width=False)
@ -141,8 +141,8 @@ class ChatBot(ChatBotFrame):
self.pro_func_prompt, self.pro_fp_state])
self.pro_reuse_btn.click(
fn=func_box.reuse_chat,
inputs=[self.pro_results, self.chatbot, self.history],
outputs=[self.chatbot, self.history, self.txt, self.tabs_chatbot]
inputs=[self.pro_results, self.chatbot, self.history, self.pro_name_txt],
outputs=[self.chatbot, self.history, self.txt, self.tabs_chatbot, self.pro_name_txt]
)
def draw_function_chat(self):

View File

@ -517,16 +517,20 @@ base_path = os.path.dirname(__file__)
prompt_path = os.path.join(base_path, 'prompt_users')
def reuse_chat(result, chatbot, history):
def reuse_chat(result, chatbot, history, pro_numb):
"""复用对话记录"""
pattern = re.compile(r'^<div class="markdown-body"><p>|<\/p><\/div>$')
if result is None or result == []:
pass
else:
if pro_numb:
chatbot.append(result)
history += [pattern.sub('', i) for i in result]
else:
chatbot.append(result[-1])
history += result[-1]
pattern = re.compile(r'^<div class="markdown-body"><p>|<\/p><\/div>$')
history += [pattern.sub('', i) for i in result[-2:]]
i_say = pattern.sub('', chatbot[-1][0])
return chatbot, history, i_say, gr.Tabs.update(selected='chatbot')
return chatbot, history, i_say, gr.Tabs.update(selected='chatbot'), ''
class YamlHandle: