Guiyom commited on
Commit
afe085e
·
1 Parent(s): 1f9ad0e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +73 -73
app.py CHANGED
@@ -8,6 +8,79 @@ openai.api_key = os.environ.get('openai-api')
8
  # Blocks
9
  with gr.Blocks(theme=gr.themes.Glass()) as demo:
10
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11
  # REFERENCES
12
  languageoptions = ["English", "廣東話"]
13
  languagedict = {
@@ -99,79 +172,6 @@ If the question is not related to any of these topics, answer 'This is beyond my
99
 
100
  IMPORTANT: write in {language}, in the style of a native inhabitant from Kowloon
101
  """
102
- def refreshmode1(mode):
103
- mode = "mode1"
104
- return mode
105
-
106
- def refreshmode2(mode):
107
- mode = "mode2"
108
- return mode
109
-
110
- def refreshmode3(mode):
111
- mode = "mode3"
112
- return mode
113
-
114
- def answer(history):
115
- response = openai.ChatCompletion.create(
116
- model='gpt-3.5-turbo',
117
- messages=history,
118
- temperature=0.5,
119
- max_tokens=800,
120
- top_p=1,
121
- n=1,
122
- frequency_penalty=0.9,
123
- presence_penalty=0.9,
124
- stop=None
125
- )
126
- result = response['choices'][0]['message']['content']
127
-
128
- def init_history(messages_history1, messages_history2, messages_history3): #Reinitialize the state file
129
- messages_history1 = [[None,languagedict['English']['whatcanidofirst']]]
130
- messages_history2 = [[None,languagedict['English']['interviewquestionsfirst']]]
131
- messages_history3 = [[None,languagedict['English']['helpfirst']]]
132
- messages_history1 += {"role": "system", "content": themewhatcanido}
133
- messages_history1 += {"role": "assistant", "content": languagedict['English']['whatcanidofirst']}
134
- messages_history2 += {"role": "system", "content": interviewquestionstheme}
135
- messages_history2 += {"role": "assistant", "content": languagedict['English']['interviewquestionsfirst']}
136
- messages_history3 += {"role": "system", "content": helptheme}
137
- messages_history3 += {"role": "assistant", "content": languagedict['English']['helpfirst']}
138
- return messages_history1, messages_history2, messages_history3
139
-
140
- def user(msg, chatbot, state):
141
- msg = msg + f"\nRemember to answer in {language}"
142
- chatbot += [msg, None]
143
- state += {'role':'user','content':'msg'}
144
- return msg, chatbot, state
145
-
146
- def bot(chatbot, state, mode):
147
- #Bot context
148
- if mode == "mode1":
149
- context = themewhatcanido
150
- elif mode == "mode2":
151
- context = interviewquestionstheme
152
- else:
153
- context = helptheme
154
-
155
- #remind mission
156
- if len(state) == 0:
157
- state += {'role':'system','content':f"Take notice of your mission:\n\n{context}"}
158
- elif len(state) > 10:
159
- state += {'role':'system','content':f"Remember your mission as briefed earlier:\n\n{context}"}
160
- response = answer(state)
161
- chatbot += [None, response]
162
- state += {'role':'assistant','content':'response'}
163
- return chatbot, state
164
-
165
- def refresh(language):
166
- titleup = gr.update(value = languagedict[language]['welcome'])
167
- tab1up = gr.update(value = languagedict[language]['whatcanido'])
168
- tab2up = gr.update(value = languagedict[language]['interviewquestions'])
169
- tab3up = gr.update(value = languagedict[language]['help'])
170
- input1up = gr.update(value = languagedict[language]['whatcanidolabel'])
171
- input2up = gr.update(value = languagedict[language]['interviewquestionslabel'])
172
- input3up = gr.update(value = languagedict[language]['helplabel'])
173
- return titleup, tab1up, tab2up, tab3up, input1up, input2up, input3up
174
-
175
  mode = gr.Textbox(value = "mode1", visible = False)
176
 
177
  # Launcher
 
8
  # Blocks
9
  with gr.Blocks(theme=gr.themes.Glass()) as demo:
10
 
11
+ def refreshmode1(mode):
12
+ mode = "mode1"
13
+ return mode
14
+
15
+ def refreshmode2(mode):
16
+ mode = "mode2"
17
+ return mode
18
+
19
+ def refreshmode3(mode):
20
+ mode = "mode3"
21
+ return mode
22
+
23
+ def answer(history):
24
+ response = openai.ChatCompletion.create(
25
+ model='gpt-3.5-turbo',
26
+ messages=history,
27
+ temperature=0.5,
28
+ max_tokens=800,
29
+ top_p=1,
30
+ n=1,
31
+ frequency_penalty=0.9,
32
+ presence_penalty=0.9,
33
+ stop=None
34
+ )
35
+ result = response['choices'][0]['message']['content']
36
+
37
+ def init_history(messages_history1, messages_history2, messages_history3): #Reinitialize the state file
38
+ messages_history1 = [[None,languagedict['English']['whatcanidofirst']]]
39
+ messages_history2 = [[None,languagedict['English']['interviewquestionsfirst']]]
40
+ messages_history3 = [[None,languagedict['English']['helpfirst']]]
41
+ messages_history1 += {"role": "system", "content": themewhatcanido}
42
+ messages_history1 += {"role": "assistant", "content": languagedict['English']['whatcanidofirst']}
43
+ messages_history2 += {"role": "system", "content": interviewquestionstheme}
44
+ messages_history2 += {"role": "assistant", "content": languagedict['English']['interviewquestionsfirst']}
45
+ messages_history3 += {"role": "system", "content": helptheme}
46
+ messages_history3 += {"role": "assistant", "content": languagedict['English']['helpfirst']}
47
+ return messages_history1, messages_history2, messages_history3
48
+
49
+ def user(msg, chatbot, state):
50
+ msg = msg + f"\nRemember to answer in {language}"
51
+ chatbot += [msg, None]
52
+ state += {'role':'user','content':'msg'}
53
+ return msg, chatbot, state
54
+
55
+ def bot(chatbot, state, mode):
56
+ #Bot context
57
+ if mode == "mode1":
58
+ context = themewhatcanido
59
+ elif mode == "mode2":
60
+ context = interviewquestionstheme
61
+ else:
62
+ context = helptheme
63
+
64
+ #remind mission
65
+ if len(state) == 0:
66
+ state += {'role':'system','content':f"Take notice of your mission:\n\n{context}"}
67
+ elif len(state) > 10:
68
+ state += {'role':'system','content':f"Remember your mission as briefed earlier:\n\n{context}"}
69
+ response = answer(state)
70
+ chatbot += [None, response]
71
+ state += {'role':'assistant','content':'response'}
72
+ return chatbot, state
73
+
74
+ def refresh(language):
75
+ titleup = gr.update(value = languagedict[language]['welcome'])
76
+ tab1up = gr.update(value = languagedict[language]['whatcanido'])
77
+ tab2up = gr.update(value = languagedict[language]['interviewquestions'])
78
+ tab3up = gr.update(value = languagedict[language]['help'])
79
+ input1up = gr.update(value = languagedict[language]['whatcanidolabel'])
80
+ input2up = gr.update(value = languagedict[language]['interviewquestionslabel'])
81
+ input3up = gr.update(value = languagedict[language]['helplabel'])
82
+ return titleup, tab1up, tab2up, tab3up, input1up, input2up, input3up
83
+
84
  # REFERENCES
85
  languageoptions = ["English", "廣東話"]
86
  languagedict = {
 
172
 
173
  IMPORTANT: write in {language}, in the style of a native inhabitant from Kowloon
174
  """
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
175
  mode = gr.Textbox(value = "mode1", visible = False)
176
 
177
  # Launcher