From e7cc03297b958d7b21d64cc561b1b2222bfc8956 Mon Sep 17 00:00:00 2001 From: carry <2641257231@qq.com> Date: Thu, 10 Apr 2025 17:38:02 +0800 Subject: [PATCH] =?UTF-8?q?feat(frontend):=20=E6=B7=BB=E5=8A=A0=E4=BA=86?= =?UTF-8?q?=E7=AE=80=E5=8D=95=E8=81=8A=E5=A4=A9=E6=9C=BA=E5=99=A8=E4=BA=BA?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/chat_page.py | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/frontend/chat_page.py b/frontend/chat_page.py index b0fbf39..dfe3e17 100644 --- a/frontend/chat_page.py +++ b/frontend/chat_page.py @@ -1,9 +1,28 @@ import gradio as gr +from global_var import model,tokenizer def chat_page(): with gr.Blocks() as demo: + import random + import time gr.Markdown("## 聊天") - with gr.Row(): - with gr.Column(): - pass + chatbot = gr.Chatbot(type="messages") + msg = gr.Textbox() + clear = gr.Button("Clear") + + def user(user_message, history: list): + return "", history + [{"role": "user", "content": user_message}] + + def bot(history: list): + bot_message = random.choice(["How are you?", "I love you", "I'm very hungry"]) + history.append({"role": "assistant", "content": ""}) + for character in bot_message: + history[-1]['content'] += character + time.sleep(0.1) + yield history + + msg.submit(user, [msg, chatbot], [msg, chatbot], queue=False).then( + bot, chatbot, chatbot + ) + clear.click(lambda: None, None, chatbot, queue=False) return demo \ No newline at end of file