yfkm commited on
Commit
e4141b2
·
1 Parent(s): 041d91c

Update App.py

Browse files
Files changed (1) hide show
  1. App.py +16 -8
App.py CHANGED
@@ -22,26 +22,34 @@ def chatgpt(content, initial, temperature=0.8, max_tokens=1000):
22
  )
23
  except Exception as e:
24
  string = str(e)
 
25
  messages = [{}]
26
- return string
27
  messages.append(json.loads(str(response.choices[0].message)))
28
  print(f'answer:{response.choices[0].message.content}')
29
- return response.choices[0].message.content
30
 
31
 
32
  if __name__ == "__main__":
33
  import gradio as gr
34
 
 
 
 
 
 
35
 
36
  def send_chatgpt(text, initial, temperature, max_tokens):
37
- output = chatgpt(text, initial, temperature, max_tokens)
38
- return output
 
39
 
40
 
41
- input_initial_text = gr.inputs.Textbox(label="Начальная установка:", placeholder="Например: 'Ты опытный reactJS разработчик.'")
42
  input_text = gr.inputs.Textbox(label="Запрос:", placeholder="Например: Нужен ReactJS компонент в виде круглой кнопки, которая по клику меняет цвет на случайный.")
 
 
43
  output_text = gr.outputs.Textbox(label="Ответ:")
44
- input_temp = gr.Slider(label="Температура", minimum=0, maximum=1.5, step=.01, value=1)
45
- input_maxTokens = gr.Slider(label="Максимум токенов", minimum=50, maximum=2000, step=50, value=1000)
46
- interface = gr.Interface(fn=send_chatgpt, inputs=[input_text, input_initial_text, input_temp, input_maxTokens], outputs=output_text, title="ChatGPT")
47
  interface.launch()
 
22
  )
23
  except Exception as e:
24
  string = str(e)
25
+ oldMessages = messages
26
  messages = [{}]
27
+ return (string, oldMessages)
28
  messages.append(json.loads(str(response.choices[0].message)))
29
  print(f'answer:{response.choices[0].message.content}')
30
+ return (response.choices[0].message.content, messages)
31
 
32
 
33
  if __name__ == "__main__":
34
  import gradio as gr
35
 
36
+ def format_messages(messages):
37
+ result = ""
38
+ for msg in messages:
39
+ result += msg["role"] + ": " + msg["content"] + "\n"
40
+ return result
41
 
42
  def send_chatgpt(text, initial, temperature, max_tokens):
43
+ (output, messages) = chatgpt(text, initial, temperature, max_tokens)
44
+ messages = format_messages(messages)
45
+ return (output, messages)
46
 
47
 
48
+ input_initial_text = gr.inputs.Textbox(label="Начальная установка (Подсказка, как должен вести себя чат-бот):", placeholder="Например: 'Ты ассистент разработчика. Ты должен по запросу реализовать требуемый код на указанном языке.'")
49
  input_text = gr.inputs.Textbox(label="Запрос:", placeholder="Например: Нужен ReactJS компонент в виде круглой кнопки, которая по клику меняет цвет на случайный.")
50
+ input_temp = gr.Slider(label="Температура (Меньшие значение -> более предсказуемые результаты; Большие значение -> более случайные результаты)", minimum=0, maximum=1.5, step=.01, value=1)
51
+ input_maxTokens = gr.Slider(label="Максимум токенов в ответе (токен - единица языковой модели: слово, знак пунктуации, и т.п)", minimum=50, maximum=2000, step=50, value=1000)
52
  output_text = gr.outputs.Textbox(label="Ответ:")
53
+ output_history = gr.outputs.Textbox(label="История:")
54
+ interface = gr.Interface(fn=send_chatgpt, inputs=[input_initial_text, input_text, input_temp, input_maxTokens], outputs=[output_text, output_history], title="ChatGPT")
 
55
  interface.launch()