Spaces:
No application file
No application file
File size: 1,324 Bytes
a20ccd6 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | import gradio as gr
from utils.api.GPT import generate_answers_openai, Session
import numpy as np
import os
import time
with gr.Blocks() as demo:
chatbot = gr.Chatbot()
df = gr.DataFrame(headers=["Item", "translation (Chinese)", "Price"],
datatype=["str", "str", "number"],)
msg = gr.Textbox(lines=1, label="input",placeholder="Enter your message")
def respond(history, customer_input):
session = Session("")
session.from_conversation_pair(history)
print("(Q:) ", customer_input)
response = generate_answers_openai(customer_input, session)
print("(A:) ", response)
return session.to_conversation_pair(),None
msg.submit(respond, [chatbot,msg], [chatbot,df])
with gr.Column():
clear = gr.Button("Clear")
btn = gr.Button("导出", type="button", label="导出")
outputs = gr.JSON()
def export():
stats_history = {}
for i,item in enumerate(chatbot.value):
user,assistant = item
stats_history[str(i)] = {
"user": user,
"assistant": assistant
}
chatbot.value = []
return [], stats_history
btn.click(export, None, [ chatbot, outputs, df, msg])
if __name__ == '__main__':
demo.launch(show_error=True)
|