File size: 1,620 Bytes
2feaa11
04f6d24
8adc11a
 
e49266b
 
cd86d2f
 
04f6d24
96d86ab
892108b
04f6d24
 
 
722ea07
04f6d24
 
 
 
 
 
 
 
 
 
0d7b4ef
da03d3d
 
 
 
 
3bdf508
3ca2e10
5a9e68f
3ca2e10
ac9b105
 
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
import os
import openai
import gradio as gr


OPENAI_API_KEY=os.getenv('OPENAI_API_KEY')
USER=os.getenv('USER')
PASS=os.getenv('PASS')

prompt = "您是回答所有用户查询的得力助手,任何问题请用中文回答"

def predict(message, history):
    history_openai_format = []
    for human, assistant in history:
        history_openai_format.append({"role": "system", "content": prompt })
        history_openai_format.append({"role": "user", "content": human })
        history_openai_format.append({"role": "assistant", "content":assistant})
    history_openai_format.append({"role": "user", "content": message})

    response = openai.ChatCompletion.create(
        model='gpt-3.5-turbo',
        messages= history_openai_format,         
        temperature=1.0,
        stream=True
    )

    partial_message = ""
    for chunk in response:
        if len(chunk['choices'][0]['delta']) != 0:
            partial_message = partial_message + chunk['choices'][0]['delta']['content']
            yield partial_message    
   
gr.ChatInterface(predict,
    textbox=gr.Textbox(placeholder="请输入您的问题", container=False, scale=7),
    title="欢迎使用AI机器人",
    examples=["你是谁?", "请用python写一个希尔排序", "请用关于春天写一首100字的诗","数学题:小红有3元钱,小红买了2斤香蕉,香蕉的价格是每斤1元。问小红一共花了多少钱?","请用表格做一份学生课程表"],
                description="🦊请避免输入有违公序良俗的问题,模型可能无法回答不合适的问题🐇",).queue().launch(auth=(USER, PASS))