fruitpicker01 commited on
Commit
5ae6184
·
verified ·
1 Parent(s): debd90d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +39 -9
app.py CHANGED
@@ -13,6 +13,7 @@ gc_key = os.getenv('GC_KEY')
13
  # Авторизация в сервисе GigaChat
14
  chat_pro = GigaChat(credentials=gc_key, model='GigaChat-Pro', verify_ssl_certs=False)
15
  chat_lite = GigaChat(credentials=gc_key, model='GigaChat', verify_ssl_certs=False)
 
16
 
17
  # Загрузка данных из Excel-файла
18
  try:
@@ -71,7 +72,7 @@ def generate_standard_prompt(description, advantages, *selected_values):
71
  )
72
  return prompt
73
 
74
- # Функция для генерации сообщения с помощью chatgpt-4o-latest
75
  def generate_message_gpt4o(prompt):
76
  try:
77
  headers = {
@@ -87,7 +88,7 @@ def generate_message_gpt4o(prompt):
87
  response_data = response.json()
88
  return response_data["choices"][0]["message"]["content"].strip()
89
  except Exception as e:
90
- return f"Ошибка при обращении к chatgpt-4o-latest: {e}"
91
 
92
  # Функция для генерации сообщения с помощью GigaChat-Pro
93
  def generate_message_gigachat_pro(prompt):
@@ -98,7 +99,7 @@ def generate_message_gigachat_pro(prompt):
98
  except Exception as e:
99
  return f"Ошибка при обращении к GigaChat-Pro: {e}"
100
 
101
- # Функция для генерации сообщения с помощью GigaChat
102
  def generate_message_gigachat_lite(prompt):
103
  try:
104
  time.sleep(2) # Задержка 2 секунды перед запросом к GigaChat
@@ -108,13 +109,41 @@ def generate_message_gigachat_lite(prompt):
108
  except Exception as e:
109
  return f"Ошибка при обращении к GigaChat-Lite: {e}"
110
 
111
- # Функция для обработки нажатия кнопки Submit
 
 
 
 
 
 
 
 
 
 
112
  def generate_messages(description, advantages, *selected_values):
113
  standard_prompt = generate_standard_prompt(description, advantages, *selected_values)
114
- message_gpt4o = generate_message_gpt4o(standard_prompt)
115
- message_gigachat_pro = generate_message_gigachat_pro(standard_prompt)
116
- message_gigachat_lite = generate_message_gigachat_lite(standard_prompt)
117
- return standard_prompt, message_gpt4o, message_gigachat_pro, message_gigachat_lite
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
118
 
119
  # Создание интерфейса Gradio
120
  with gr.Blocks() as demo:
@@ -135,11 +164,12 @@ with gr.Blocks() as demo:
135
  output_text_gpt4o = gr.Textbox(label="Создание сообщения GPT-4o", lines=3)
136
  output_text_gigachat_pro = gr.Textbox(label="Создание сообщения GigaChat-Pro", lines=3)
137
  output_text_gigachat_lite = gr.Textbox(label="Создание сообщения GigaChat-Lite", lines=3)
 
138
 
139
  submit_btn.click(
140
  generate_messages,
141
  inputs=[description_input, advantages_input] + selections,
142
- outputs=[prompt_display, output_text_gpt4o, output_text_gigachat_pro, output_text_gigachat_lite]
143
  )
144
 
145
  demo.launch()
 
13
  # Авторизация в сервисе GigaChat
14
  chat_pro = GigaChat(credentials=gc_key, model='GigaChat-Pro', verify_ssl_certs=False)
15
  chat_lite = GigaChat(credentials=gc_key, model='GigaChat', verify_ssl_certs=False)
16
+ chat_plus = GigaChat(credentials=gc_key, model='GigaChat-Plus', verify_ssl_certs=False)
17
 
18
  # Загрузка данных из Excel-файла
19
  try:
 
72
  )
73
  return prompt
74
 
75
+ # Функция для генерации сообщения с помощью ChatGPT-4o-Latest
76
  def generate_message_gpt4o(prompt):
77
  try:
78
  headers = {
 
88
  response_data = response.json()
89
  return response_data["choices"][0]["message"]["content"].strip()
90
  except Exception as e:
91
+ return f"Ошибка при обращении к ChatGPT-4o-Latest: {e}"
92
 
93
  # Функция для генерации сообщения с помощью GigaChat-Pro
94
  def generate_message_gigachat_pro(prompt):
 
99
  except Exception as e:
100
  return f"Ошибка при обращении к GigaChat-Pro: {e}"
101
 
102
+ # Функция для генерации сообщения с помощью GigaChat-Lite
103
  def generate_message_gigachat_lite(prompt):
104
  try:
105
  time.sleep(2) # Задержка 2 секунды перед запросом к GigaChat
 
109
  except Exception as e:
110
  return f"Ошибка при обращении к GigaChat-Lite: {e}"
111
 
112
+ # Функция для генерации сообщения с помощью GigaChat-Lite+
113
+ def generate_message_gigachat_plus(prompt):
114
+ try:
115
+ time.sleep(2) # Задержка 2 секунды перед запросом к GigaChat
116
+ messages = [SystemMessage(content=prompt)]
117
+ res = chat_plus(messages)
118
+ return res.content.strip()
119
+ except Exception as e:
120
+ return f"Ошибка при обращении к GigaChat-Lite+: {e}"
121
+
122
+ # Функция для обработки нажатия кнопки Submit и последовательного отображения результатов
123
  def generate_messages(description, advantages, *selected_values):
124
  standard_prompt = generate_standard_prompt(description, advantages, *selected_values)
125
+
126
+ results = {
127
+ "prompt": standard_prompt,
128
+ "gpt4o": None,
129
+ "gigachat_pro": None,
130
+ "gigachat_lite": None,
131
+ "gigachat_plus": None
132
+ }
133
+
134
+ yield results["prompt"], "", "", "", ""
135
+
136
+ results["gpt4o"] = generate_message_gpt4o(standard_prompt)
137
+ yield results["prompt"], results["gpt4o"], "", "", ""
138
+
139
+ results["gigachat_pro"] = generate_message_gigachat_pro(standard_prompt)
140
+ yield results["prompt"], results["gpt4o"], results["gigachat_pro"], "", ""
141
+
142
+ results["gigachat_lite"] = generate_message_gigachat_lite(standard_prompt)
143
+ yield results["prompt"], results["gpt4o"], results["gigachat_pro"], results["gigachat_lite"], ""
144
+
145
+ results["gigachat_plus"] = generate_message_gigachat_plus(standard_prompt)
146
+ yield results["prompt"], results["gpt4o"], results["gigachat_pro"], results["gigachat_lite"], results["gigachat_plus"]
147
 
148
  # Создание интерфейса Gradio
149
  with gr.Blocks() as demo:
 
164
  output_text_gpt4o = gr.Textbox(label="Создание сообщения GPT-4o", lines=3)
165
  output_text_gigachat_pro = gr.Textbox(label="Создание сообщения GigaChat-Pro", lines=3)
166
  output_text_gigachat_lite = gr.Textbox(label="Создание сообщения GigaChat-Lite", lines=3)
167
+ output_text_gigachat_plus = gr.Textbox(label="Создание сообщения GigaChat-Lite+", lines=3)
168
 
169
  submit_btn.click(
170
  generate_messages,
171
  inputs=[description_input, advantages_input] + selections,
172
+ outputs=[prompt_display, output_text_gpt4o, output_text_gigachat_pro, output_text_gigachat_lite, output_text_gigachat_plus]
173
  )
174
 
175
  demo.launch()