fruitpicker01's picture
Update app.py
cf1a113 verified
raw
history blame
5.12 kB
import gradio as gr
# HTML для прогресс-бара
progress_bar_html = """
<div style="width: 100%; background-color: #e0e0e0; border-radius: 10px; overflow: hidden;">
<div style="width: 0%; background-color: #4caf50; height: 20px; text-align: center; color: white;">
0%
</div>
</div>
"""
with gr.Blocks(theme="default") as demo:
# Надпись над прогресс-баром
gr.Markdown("**Процент созданных SMS по выбранному продукту**")
# Прогресс-бар
gr.HTML(progress_bar_html)
with gr.Row():
# Левая часть: Продукт
with gr.Column(scale=1):
gr.Markdown("**Продукт**")
product_dropdown = gr.Dropdown(
label="Продукт",
choices=["Продукт А", "Продукт Б"],
value=None
)
description = gr.Textbox(label="Описание предложения", lines=9, value="")
product_name = gr.Textbox(label="Наименование продукта", lines=1, value="")
advantages = gr.Textbox(label="Преимущества", lines=5, value="")
key_message = gr.Textbox(label="Ключевое сообщение", lines=2, value="")
# Правая часть: Клиент
with gr.Column(scale=1):
gr.Markdown("**Клиент**")
gender = gr.Dropdown(label="Пол", choices=["Мужской", "Женский", "Не определено"], value=None)
generation = gr.Dropdown(label="Поколение", choices=["X", "Y", "Z"], value=None)
psychotype = gr.Dropdown(label="Психотип", choices=["Аналитик", "Эмоциональный", "Практик"], value=None)
business_stage = gr.Dropdown(label="Стадия бизнеса", choices=["Стартап", "Рост", "Зрелость"], value=None)
industry = gr.Dropdown(label="Отрасль", choices=["Ритейл", "IT", "Производство"], value=None)
opf = gr.Dropdown(label="ОПФ", choices=["ООО", "ИП", "АО"], value=None)
# Выбранный подход - просто текстовое поле, пустое
chosen_approach = gr.Textbox(label="Выбранный подход", lines=1, value="")
# Наличие в БД
presence_in_db = gr.Textbox(label="Наличие в БД", lines=1, value="В базе есть SMS под данные параметры персонализации.", interactive=False)
# Кнопки: Вернуть параметры, Создать персонализированное SMS
with gr.Row():
return_params_btn = gr.Button("Вернуть параметры предыдущего запроса")
create_personal_sms_btn = gr.Button("Создать персонализированное SMS")
# Блок для Модель 1, Промпт 1, SMS 1
with gr.Row():
with gr.Column():
model_1_name = gr.Textbox(label="Модель 1", value="Скрыто для слепого тестирования", interactive=False)
prompt_1 = gr.Textbox(label="Промпт 1", value="Скрыто для слепого тестирования", interactive=False)
sms_1 = gr.Textbox(label="SMS 1", lines=3, value="")
# Блок для Модель 2, Промпт 2, SMS 2
with gr.Column():
model_2_name = gr.Textbox(label="Модель 2", value="Скрыто для слепого тестирования", interactive=False)
prompt_2 = gr.Textbox(label="Промпт 2", value="Скрыто для слепого тестирования", interactive=False)
sms_2 = gr.Textbox(label="SMS 2", lines=3, value="")
# Кнопки выбора SMS
with gr.Row():
prefer_sms_1_btn = gr.Button("Я предпочитаю это SMS")
prefer_sms_2_btn = gr.Button("Я предпочитаю это SMS")
# Кнопка "Перегенерировать SMS"
regen_btn = gr.Button("Перегенерировать SMS (не нравится ни одно из SMS)")
# Комментарии к SMS 1 и 2
with gr.Row():
comment_sms_1 = gr.Textbox(label="Комментарий к SMS 1", lines=2, value="")
comment_sms_2 = gr.Textbox(label="Комментарий к SMS 2", lines=2, value="")
# Откорректированные SMS
with gr.Row():
corrected_sms_1 = gr.Textbox(label="Откорректированное SMS 1", lines=3, value="")
corrected_sms_2 = gr.Textbox(label="Откорректированное SMS 2", lines=3, value="")
# Кнопки сохранения
with gr.Row():
save_sms_1_btn = gr.Button("Сохранить в БД")
save_sms_2_btn = gr.Button("Сохранить в БД")
demo.launch()