# coding:utf-8 import gradio as gr # import argparse # from utils import * # from presets import * my_api_key = "" # 在这里输入你的 API 密钥 authflag = False # gr.Chatbot.postprocess = postprocess with gr.Blocks() as demo: history = gr.inputs.Hidden() token_count = gr.inputs.Hidden() promptTemplates = gr.inputs.Hidden() TRUECOMSTANT = gr.inputs.Hidden() FALSECONSTANT = gr.inputs.Hidden() topic = gr.inputs.Hidden() gradio_interface = gr.Interface( predict, [ gr.inputs.Textbox( show_label=True, label="API-Key", placeholder=f"在这里输入你的OpenAI API-key...", value=my_api_key, type="password", visible=not HIDE_MY_KEY, ), gr.inputs.Textbox( show_label=True, label="System prompt", value=initial_prompt ), history, gr.inputs.Textbox( show_label=False, placeholder="在这里输入", label="User Input" ), gr.inputs.Hidden(), token_count, gr.inputs.Slider( label="Top-p (nucleus sampling)", min_val=0.0, max_val=1.0, step=0.05 ), gr.inputs.Slider( label="Temperature", min_val=0.0, max_val=5.0, step=0.1 ), gr.inputs.Checkbox(label="实时传输回答", default=True), gr.inputs.Dropdown( label="选择模型", choices=MODELS, default=MODELS[0], allow_multiple=False, ), ], [ gr.outputs.Chat( label="Conversation", label_icon="💬", outputs=["text"], max_length=500, header_show_all=True, header_show_user_name=True, ), gr.outputs.Textbox(label="Status", default="Status: Ready"), gr.outputs.Button(label="🧹 新的对话"), gr.outputs.Button(label="🔄 重新生成"), gr.outputs.Button(label="🗑️ 删除最近一条对话"), gr.outputs.Button(label="♻️ 总结对话"), gr.outputs.Button(label="💾 保存对话"), gr.outputs.Dropdown( label="从列表中加载对话", choices=get_history_names(plain=True), default=get_history_names(plain=True)[0], allow_multiple=False, ), gr.outputs.Slider( label="Top-p (nucleus sampling)", min_val=0.0, max_val=1.0, step=0.05, default=1.0, ), gr.outputs.Slider(label="Temperature", min_val=0.0, max_val=5.0, step=0.1), gr.outputs.Markdown( label="最新生成到的token数量", default="待定", ), gr.outputs.Dropdown( label="选择Prompt模板集合文件", choices=get_template_names(plain=True), default=get_template_names(plain=True)[0], allow_multiple=False, ), gr.outputs.Dropdown( label="从Prompt模板中加载", choices=load_template(get_template_names(plain=True)[0], mode=1), default=0, allow_multiple=False, ), gr.outputs.Textbox(label="System prompt", default=initial_prompt), gr.outputs.Textbox( label="设置保存文件名", default="对话历史记录", allow_copy=True ), ], title="川虎ChatGPT 🚀", example=[ "请输入文本...", "你好啊", "", "", "", "", 1.0, 1.0, True, "gpt3", ], theme="compact", ) if __name__ == "__main__": gradio_interface.launch() # 默认启动本地服务器,并通过默认的IP地址和端口进行访问 # gradio_interface.launch(share=True) # 启动本地服务器,创建公开分享链接 # gradio_interface.launch(server_name="0.0.0.0", server_port=7860) # 自定义IP和端口 # gradio_interface.launch( # server_name="0.0.0.0", # server_port=7860, # auth=("在这里填写用户名", "在这里填写密码"), # ) # 设置用户名和密码,适用于Nginx反向代理