Spaces:
Runtime error
Runtime error
File size: 1,462 Bytes
90136fc 6ba5e8d ac75843 6ba5e8d cdacab2 6ba5e8d 32439b0 6ba5e8d |
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 43 44 45 46 |
import openai
import os
import argparse
import gradio as gr
from chat_completion import ChatCompletion
api_key = os.environ.get("OPENAI_API_KEY")
openai.api_base="https://apai.zyai.online/v1"
parser = argparse.ArgumentParser()
parser.add_argument('--share', action='store_true', default=False)
parser.add_argument('--welcome', type=str, default='对GPT说点啥...')
parser.add_argument('--title', type=str, default='ChatGPT')
parser.add_argument('--setting', type=str, default=None)
args = parser.parse_args()
bot = ChatCompletion(api_key=api_key)
with gr.Blocks(title=args.title) as demo:
chatbot = gr.Chatbot(show_label=False)
msg = gr.TextArea(show_label=False, placeholder=args.welcome)
send_btn = gr.Button('发送')
retry_btn = gr.Button('重试')
reset_btn = gr.Button('清空')
def send(user_message, history):
if not user_message:
return '', history
response = bot(user_message, setting=args.setting) if user_message != 'retry' else bot.retry()
return '', history + [[user_message, response]]
def reset():
bot.reset()
return None, [[None, None]]
def retry(history):
return send('retry', history)
send_btn.click(send, inputs=[msg, chatbot], outputs=[msg, chatbot], show_progress=True)
reset_btn.click(reset, inputs=None, outputs=[msg, chatbot])
retry_btn.click(retry, inputs=chatbot, outputs=[msg, chatbot])
demo.launch(share=args.share)
|