File size: 1,551 Bytes
e60c070 |
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 |
import gradio as gr
import openai
from create_db import create_db
from chat import respond
openai.api_base = "https://api.v36.cm/v1" # global setting is needed
def launch_app():
with gr.Blocks() as demo:
with gr.Row(equal_height=True):
gr.Markdown("## 英语单词学习工具")
with gr.Row():
with gr.Column(scale=4):
chatbot = gr.Chatbot(height=400)
msg = gr.Textbox(label="在此输入指令(以:起始)或对话")
btn = gr.Button("Submit")
gr.ClearButton(components=[msg, chatbot], value="清除对话")
btn.click(respond, inputs=[msg, chatbot], outputs=[msg, chatbot])
msg.submit(respond, inputs=[msg, chatbot], outputs=[msg, chatbot])
with gr.Column(scale=1):
file = gr.File(label='请导入制作词库的文件', file_count='single', file_types=['.md', '.pdf'])
with gr.Row():
init_vocab_by_file = gr.Button("使用文件生成个人词库")
text = gr.Textbox(label="在此粘贴制作词库的文本", lines=8)
with gr.Row():
init_vocab_by_text = gr.Button("使用文本生成个人词库")
init_vocab_by_file.click(create_db, inputs=[file, chatbot], outputs=[chatbot])
init_vocab_by_text.click(create_db, inputs=[text, chatbot], outputs=[chatbot])
gr.close_all()
demo.launch()
if __name__ == "__main__":
launch_app()
|