RedSparkie commited on
Commit
455fbec
·
verified ·
1 Parent(s): 06756c6

Delete app.py

Browse files
Files changed (1) hide show
  1. app.py +0 -96
app.py DELETED
@@ -1,96 +0,0 @@
1
- import gradio as gr
2
- import random
3
- import os
4
- from huggingface_hub import InferenceClient
5
-
6
- # Obtener la clave API desde una variable de entorno
7
- API_KEY = os.getenv("KEY") # Define el secreto en el entorno del Space
8
-
9
- if not API_KEY:
10
- raise ValueError("La clave API no está definida. Por favor, configúrela como un secreto en el Space.")
11
-
12
- # Configuración del cliente de inferencia
13
- client = InferenceClient(api_key=API_KEY)
14
-
15
- # Cargar las imágenes de las cartas
16
- def cargar_imagenes(ruta_carpeta):
17
- imagenes = {}
18
- for archivo in os.listdir(ruta_carpeta):
19
- if archivo.endswith(".png") or archivo.endswith(".jpg"):
20
- nombre_carta = os.path.splitext(archivo)[0]
21
- imagenes[nombre_carta] = os.path.join(ruta_carpeta, archivo)
22
- return imagenes
23
-
24
- # Ruta a la carpeta que contiene las imágenes de las cartas
25
- ruta_carpeta_cartas = "ruta/a/las/imagenes/de/las/cartas" # Reemplace con la ruta real
26
- imagenes_cartas = cargar_imagenes(ruta_carpeta_cartas)
27
-
28
- # Lista de nombres de las cartas para selección aleatoria
29
- nombres_cartas = list(imagenes_cartas.keys())
30
-
31
- # Función para seleccionar cartas aleatoriamente
32
- def seleccionar_cartas(num_cartas=3):
33
- return random.sample(nombres_cartas, num_cartas)
34
-
35
- # Función para generar la interpretación de las cartas
36
- def interpretar_cartas(cartas_seleccionadas):
37
- descripcion = "Las cartas seleccionadas son:\n"
38
- for carta in cartas_seleccionadas:
39
- descripcion += f"- {carta}\n"
40
- descripcion += "Proporcione una interpretación detallada de esta tirada de tarot."
41
-
42
- messages = [
43
- {
44
- "role": "user",
45
- "content": descripcion
46
- }
47
- ]
48
-
49
- completion = client.chat.completions.create(
50
- model="deepseek-ai/DeepSeek-R1",
51
- messages=messages,
52
- max_tokens=500
53
- )
54
-
55
- return completion.choices[0].message["content"]
56
-
57
- # Definir la interfaz de Gradio
58
- def interfaz():
59
- with gr.Blocks() as demo:
60
- gr.Markdown("# Lector de Tarot con Interpretación de LLM")
61
-
62
- with gr.Row():
63
- boton_echar = gr.Button("Echar las cartas")
64
- boton_interpretar = gr.Button("Interpretar las cartas")
65
-
66
- with gr.Row():
67
- imagen1 = gr.Image()
68
- imagen2 = gr.Image()
69
- imagen3 = gr.Image()
70
-
71
- interpretacion = gr.Textbox(label="Interpretación")
72
-
73
- cartas_seleccionadas = []
74
-
75
- def mostrar_cartas():
76
- seleccion = seleccionar_cartas()
77
- cartas_seleccionadas.clear()
78
- cartas_seleccionadas.extend(seleccion)
79
- imagen1.update(value=imagenes_cartas[seleccion[0]])
80
- imagen2.update(value=imagenes_cartas[seleccion[1]])
81
- imagen3.update(value=imagenes_cartas[seleccion[2]])
82
-
83
- def mostrar_interpretacion():
84
- if cartas_seleccionadas:
85
- resultado = interpretar_cartas(cartas_seleccionadas)
86
- interpretacion.update(value=resultado)
87
-
88
- boton_echar.click(mostrar_cartas)
89
- boton_interpretar.click(mostrar_interpretacion)
90
-
91
- return demo
92
-
93
- # Ejecutar la aplicación
94
- if __name__ == "__main__":
95
- app = interfaz()
96
- app.launch()