BATUTO-ART commited on
Commit
28ab90e
·
verified ·
1 Parent(s): f4d34bf

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -10
app.py CHANGED
@@ -55,9 +55,16 @@ ethics_list = "\n".join(
55
  [f"• {p}" for p in VOYEUR_SPECIALIST_CONFIG["ethical_principles"]]
56
  )
57
 
58
- professions_str = ", ".join(PROFESSIONS[:20])
59
- thongs_str = ", ".join(LACE_THONG_STYLES[:10])
60
- hosiery_str = ", ".join(HOSIERY_STYLES[:10])
 
 
 
 
 
 
 
61
 
62
  SYSTEM_PROMPT_BASE = f"""Eres {VOYEUR_SPECIALIST_CONFIG['role']}.
63
 
@@ -106,7 +113,7 @@ def infer(user_text: str) -> str:
106
  return output
107
 
108
  # ============================================
109
- # INTERFAZ DE USUARIO CON GRADIO (MEJORADA)
110
  # ============================================
111
 
112
  def get_system_config_ui() -> str:
@@ -137,7 +144,7 @@ def get_system_config_ui() -> str:
137
  </div>
138
  """
139
 
140
- # CSS personalizado para darle un look oscuro y con detalles en naranja/dorado
141
  CUSTOM_CSS = """
142
  body {
143
  font-family: 'Inter', sans-serif;
@@ -174,8 +181,16 @@ button:hover {
174
  }
175
  """
176
 
177
- with gr.Blocks(css=CUSTOM_CSS, title="Voyeur Prompt Generator") as demo:
 
 
 
178
 
 
 
 
 
 
179
  # Fila Principal para el Título
180
  with gr.Row():
181
  # Etiqueta de firma "BATUTO-ART" (pequeña y dorada)
@@ -218,7 +233,7 @@ with gr.Blocks(css=CUSTOM_CSS, title="Voyeur Prompt Generator") as demo:
218
  )
219
 
220
  # COLUMNA DERECHA: Interacción Principal
221
- with gr.Column(scale=2, min_width=400, css_classes=["main-panel"]):
222
 
223
  gr.Markdown("### 💬 Escribe tu visión fotográfica")
224
 
@@ -228,7 +243,7 @@ with gr.Blocks(css=CUSTOM_CSS, title="Voyeur Prompt Generator") as demo:
228
  placeholder="Ej: Quiero una foto de una sommelier muy elegante con medias de red ajustándose el liguero en el sótano de una bodega antigua."
229
  )
230
 
231
- btn = gr.Button("✨ Generar Prompt VOYEUR ✨", size="lg")
232
 
233
  gr.Markdown("### 📜 Prompt de Output (Exclusivamente en Inglés)")
234
 
@@ -243,5 +258,4 @@ with gr.Blocks(css=CUSTOM_CSS, title="Voyeur Prompt Generator") as demo:
243
  btn.click(fn=infer, inputs=inp, outputs=out)
244
 
245
  if __name__ == "__main__":
246
- demo.launch()
247
-
 
55
  [f"• {p}" for p in VOYEUR_SPECIALIST_CONFIG["ethical_principles"]]
56
  )
57
 
58
+ # defensiva en caso de que los módulos data no tengan el contenido esperado
59
+ def safe_join(lst, max_items=10):
60
+ try:
61
+ return ", ".join(lst[:max_items])
62
+ except Exception:
63
+ return ""
64
+
65
+ professions_str = safe_join(PROFESSIONS, 20)
66
+ thongs_str = safe_join(LACE_THONG_STYLES, 10)
67
+ hosiery_str = safe_join(HOSIERY_STYLES, 10)
68
 
69
  SYSTEM_PROMPT_BASE = f"""Eres {VOYEUR_SPECIALIST_CONFIG['role']}.
70
 
 
113
  return output
114
 
115
  # ============================================
116
+ # INTERFAZ DE USUARIO CON GRADIO (CORRECCIÓN)
117
  # ============================================
118
 
119
  def get_system_config_ui() -> str:
 
144
  </div>
145
  """
146
 
147
+ # CSS personalizado (se inyecta en la página con <style>, no via gr.Blocks css=)
148
  CUSTOM_CSS = """
149
  body {
150
  font-family: 'Inter', sans-serif;
 
181
  }
182
  """
183
 
184
+ # ----------------------------------------
185
+ # Construcción de la UI sin usar `css=` en Blocks
186
+ # ----------------------------------------
187
+ with gr.Blocks(title="Voyeur Prompt Generator") as demo:
188
 
189
+ # Inyectar CSS personalizado como HTML <style>
190
+ demo.add_component(
191
+ gr.HTML(f"<style>{CUSTOM_CSS}</style>")
192
+ )
193
+
194
  # Fila Principal para el Título
195
  with gr.Row():
196
  # Etiqueta de firma "BATUTO-ART" (pequeña y dorada)
 
233
  )
234
 
235
  # COLUMNA DERECHA: Interacción Principal
236
+ with gr.Column(scale=2, min_width=400, elem_classes=["main-panel"]):
237
 
238
  gr.Markdown("### 💬 Escribe tu visión fotográfica")
239
 
 
243
  placeholder="Ej: Quiero una foto de una sommelier muy elegante con medias de red ajustándose el liguero en el sótano de una bodega antigua."
244
  )
245
 
246
+ btn = gr.Button("✨ Generar Prompt VOYEUR ✨")
247
 
248
  gr.Markdown("### 📜 Prompt de Output (Exclusivamente en Inglés)")
249
 
 
258
  btn.click(fn=infer, inputs=inp, outputs=out)
259
 
260
  if __name__ == "__main__":
261
+ demo.launch()