BATUTO-ART commited on
Commit
b288aed
·
verified ·
1 Parent(s): 4e7a7c3

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +27 -20
app.py CHANGED
@@ -1,31 +1,35 @@
1
  import gradio as gr
2
- import google.generativeai as genai
3
- import os
4
  from PIL import Image
 
5
 
6
- # Configuración del mero mero
7
- # Recuerda meter tu llave en "Settings > Secrets" de Hugging Face
8
  GOOGLE_API_KEY = os.getenv("GOOGLE_API_KEY")
9
- genai.configure(api_key=GOOGLE_API_KEY)
10
 
11
  def describir_imagen(input_img):
12
  if input_img is None:
13
- return "¡No te me pases de lanza, BATUTO! Sube una imagen primero."
14
 
15
  try:
16
- # Usamos gemini-1.5-flash que es rápido y efectivo
17
- model = genai.GenerativeModel('gemini-1.5-flash')
18
-
19
- # Generamos el contenido
20
- prompt = "Describe esta imagen de forma detallada y profesional."
21
- response = model.generate_content([prompt, input_img])
22
-
 
 
23
  return response.text
24
  except Exception as e:
25
- return f"Chales, algo salió mal: {str(e)}"
26
 
27
- # Diseño de la interfaz con Gradio
28
- with gr.Blocks(theme=gr.themes.Soft(primary_hue="amber")) as demo:
 
29
  gr.Markdown("# 🎨 BATUTO-ART Vision")
30
  gr.Markdown("### El rincón donde las imágenes hablan. ¡Súbele algo, mi rey!")
31
 
@@ -38,17 +42,20 @@ with gr.Blocks(theme=gr.themes.Soft(primary_hue="amber")) as demo:
38
  output_text = gr.Textbox(
39
  label="Descripción de BATUTO-ART",
40
  placeholder="Aquí aparecerá el chisme de la foto...",
41
- lines=10
 
42
  )
43
 
 
 
 
44
  enviar_btn.click(
45
  fn=describir_imagen,
46
  inputs=input_image,
47
  outputs=output_text
48
  )
49
-
50
- gr.Footer("Desarrollado con flow para BATUTO-ART")
51
 
52
  if __name__ == "__main__":
53
- demo.launch()
 
54
 
 
1
  import gradio as gr
2
+ from google import genai
3
+ from google.genai import types
4
  from PIL import Image
5
+ import os
6
 
7
+ # Configuración con la NUEVA librería (google-genai)
8
+ # Asegúrate de tener tu GOOGLE_API_KEY en los Secrets de Hugging Face
9
  GOOGLE_API_KEY = os.getenv("GOOGLE_API_KEY")
10
+ client = genai.Client(api_key=GOOGLE_API_KEY)
11
 
12
  def describir_imagen(input_img):
13
  if input_img is None:
14
+ return "¡No te hagas rosca, BATUTO! Sube una imagen primero para que la magia suceda."
15
 
16
  try:
17
+ # Usamos el modelo flash, que es rápido como motoneta en bajada
18
+ # Ojo: La sintaxis cambió un poco en la nueva librería
19
+ response = client.models.generate_content(
20
+ model="gemini-1.5-flash",
21
+ contents=[
22
+ input_img,
23
+ "Describe esta imagen de forma detallada, con estilo profesional y buena vibra."
24
+ ]
25
+ )
26
  return response.text
27
  except Exception as e:
28
+ return f"¡Chale! Hubo bronca técnica: {str(e)}"
29
 
30
+ # Interfaz de Gradio (Versión corregida para Gradio 5.x/6.x)
31
+ # Quitamos el theme de aquí para ponerlo en el launch
32
+ with gr.Blocks() as demo:
33
  gr.Markdown("# 🎨 BATUTO-ART Vision")
34
  gr.Markdown("### El rincón donde las imágenes hablan. ¡Súbele algo, mi rey!")
35
 
 
42
  output_text = gr.Textbox(
43
  label="Descripción de BATUTO-ART",
44
  placeholder="Aquí aparecerá el chisme de la foto...",
45
+ lines=10,
46
+ interactive=False
47
  )
48
 
49
+ # El pie de página lo hacemos con Markdown porque gr.Footer ya fue
50
+ gr.Markdown("--- \n**Desarrollado con flow para BATUTO-ART**")
51
+
52
  enviar_btn.click(
53
  fn=describir_imagen,
54
  inputs=input_image,
55
  outputs=output_text
56
  )
 
 
57
 
58
  if __name__ == "__main__":
59
+ # Aquí es donde movemos el tema para que no te salga el Warning
60
+ demo.launch(theme=gr.themes.Soft(primary_hue="amber"))
61