Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -115,37 +115,29 @@ def generate_message_gigachat_plus(prompt):
|
|
115 |
except Exception as e:
|
116 |
return f"Ошибка при обращении к GigaChat-Lite+: {e}"
|
117 |
|
118 |
-
# Функция для обработки нажатия кнопки Submit и
|
119 |
def generate_messages(description, advantages, *selected_values):
|
120 |
standard_prompt = generate_standard_prompt(description, advantages, *selected_values)
|
121 |
|
122 |
results = {
|
123 |
"prompt": standard_prompt,
|
124 |
-
"gpt4o":
|
125 |
-
"gigachat_pro":
|
126 |
-
"gigachat_lite":
|
127 |
-
"gigachat_plus":
|
128 |
}
|
129 |
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
results["gigachat_lite"] = generate_message_gigachat_lite(standard_prompt)
|
139 |
-
yield results["prompt"], results["gpt4o"], results["gigachat_pro"], results["gigachat_lite"], "", "Сообщение GigaChat-Lite сгенерировано"
|
140 |
-
|
141 |
-
results["gigachat_plus"] = generate_message_gigachat_plus(standard_prompt)
|
142 |
-
yield results["prompt"], results["gpt4o"], results["gigachat_pro"], results["gigachat_lite"], results["gigachat_plus"], "Все сообщения сгенерированы"
|
143 |
-
|
144 |
-
# Возвращаем результаты для дальнейшей персонализации
|
145 |
-
return results
|
146 |
|
147 |
# Функция для выполнения персонализации
|
148 |
-
def personalize_messages(*selected_values):
|
149 |
personalized_texts = []
|
150 |
|
151 |
for i, feature in enumerate(features.keys()):
|
@@ -201,10 +193,12 @@ with gr.Blocks() as demo:
|
|
201 |
output_text_gigachat_plus = gr.Textbox(label="Создание сообщения GigaChat-Lite+", lines=3)
|
202 |
status_display = gr.Textbox(label="Статус выполнения", lines=4, interactive=False) # Новый блок для отображения статуса
|
203 |
|
|
|
|
|
204 |
submit_btn.click(
|
205 |
generate_messages,
|
206 |
inputs=[description_input, advantages_input] + selections,
|
207 |
-
outputs=[prompt_display, output_text_gpt4o, output_text_gigachat_pro, output_text_gigachat_lite, output_text_gigachat_plus,
|
208 |
)
|
209 |
|
210 |
with gr.Row():
|
@@ -213,7 +207,7 @@ with gr.Blocks() as demo:
|
|
213 |
with gr.Row():
|
214 |
personalize_btn.click(
|
215 |
personalize_messages,
|
216 |
-
inputs=selections,
|
217 |
outputs=[gr.Textbox(label=f"Персонализированный текст для {feature}", lines=3) for feature in features.keys()]
|
218 |
)
|
219 |
|
|
|
115 |
except Exception as e:
|
116 |
return f"Ошибка при обращении к GigaChat-Lite+: {e}"
|
117 |
|
118 |
+
# Функция для обработки нажатия кнопки Submit и сохранения данных в State
|
119 |
def generate_messages(description, advantages, *selected_values):
|
120 |
standard_prompt = generate_standard_prompt(description, advantages, *selected_values)
|
121 |
|
122 |
results = {
|
123 |
"prompt": standard_prompt,
|
124 |
+
"gpt4o": generate_message_gpt4o(standard_prompt),
|
125 |
+
"gigachat_pro": generate_message_gigachat_pro(standard_prompt),
|
126 |
+
"gigachat_lite": generate_message_gigachat_lite(standard_prompt),
|
127 |
+
"gigachat_plus": generate_message_gigachat_plus(standard_prompt)
|
128 |
}
|
129 |
|
130 |
+
return (
|
131 |
+
results["prompt"],
|
132 |
+
results["gpt4o"],
|
133 |
+
results["gigachat_pro"],
|
134 |
+
results["gigachat_lite"],
|
135 |
+
results["gigachat_plus"],
|
136 |
+
results # Возвращаем данные для сохранения в state
|
137 |
+
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
138 |
|
139 |
# Функция для выполнения персонализации
|
140 |
+
def personalize_messages(results, *selected_values):
|
141 |
personalized_texts = []
|
142 |
|
143 |
for i, feature in enumerate(features.keys()):
|
|
|
193 |
output_text_gigachat_plus = gr.Textbox(label="Создание сообщения GigaChat-Lite+", lines=3)
|
194 |
status_display = gr.Textbox(label="Статус выполнения", lines=4, interactive=False) # Новый блок для отображения статуса
|
195 |
|
196 |
+
state = gr.State() # Переменная состояния для сохранения данных между функциями
|
197 |
+
|
198 |
submit_btn.click(
|
199 |
generate_messages,
|
200 |
inputs=[description_input, advantages_input] + selections,
|
201 |
+
outputs=[prompt_display, output_text_gpt4o, output_text_gigachat_pro, output_text_gigachat_lite, output_text_gigachat_plus, state]
|
202 |
)
|
203 |
|
204 |
with gr.Row():
|
|
|
207 |
with gr.Row():
|
208 |
personalize_btn.click(
|
209 |
personalize_messages,
|
210 |
+
inputs=selections + [state],
|
211 |
outputs=[gr.Textbox(label=f"Персонализированный текст для {feature}", lines=3) for feature in features.keys()]
|
212 |
)
|
213 |
|