Cosio commited on
Commit
d5d43c4
·
verified ·
1 Parent(s): e698e88

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +8 -6
app.py CHANGED
@@ -5,7 +5,7 @@ import PyPDF2
5
  import requests
6
  import io
7
  import json
8
- import os # Para manejar variables de entorno si fuera necesario en un entorno real
9
 
10
  # Variable global para almacenar el texto extraído de la base de conocimientos
11
  # Se vacía cada vez que se carga un nuevo archivo.
@@ -91,6 +91,13 @@ def get_llm_response(prompt_text, context_text, personality_setting):
91
  # Combinar la instrucción del sistema, el contexto y la pregunta del usuario en un solo prompt
92
  full_prompt = f"{system_instruction}\n\nContexto:\n{context_text}\n\nPregunta: {prompt_text}"
93
 
 
 
 
 
 
 
 
94
  # Preparar el historial de chat para la API de Gemini
95
  chat_history = []
96
  chat_history.append({"role": "user", "parts": [{"text": full_prompt}]})
@@ -103,11 +110,6 @@ def get_llm_response(prompt_text, context_text, personality_setting):
103
  }
104
  }
105
 
106
- # La clave de la API se deja vacía según las instrucciones para el entorno Canvas.
107
- # En un despliegue real, esto debería manejarse de forma segura (e.g., variables de entorno).
108
- api_key = "" # Canvas inyectará la clave API en tiempo de ejecución
109
- api_url = f"https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key={api_key}"
110
-
111
  try:
112
  # Realizar la solicitud POST a la API de Gemini
113
  response = requests.post(api_url, headers={'Content-Type': 'application/json'}, data=json.dumps(payload))
 
5
  import requests
6
  import io
7
  import json
8
+ import os # Importar el módulo os para acceder a variables de entorno
9
 
10
  # Variable global para almacenar el texto extraído de la base de conocimientos
11
  # Se vacía cada vez que se carga un nuevo archivo.
 
91
  # Combinar la instrucción del sistema, el contexto y la pregunta del usuario en un solo prompt
92
  full_prompt = f"{system_instruction}\n\nContexto:\n{context_text}\n\nPregunta: {prompt_text}"
93
 
94
+ # *** CAMBIO IMPORTANTE AQUÍ: Leer la clave API de las variables de entorno ***
95
+ api_key = os.getenv("GEMINI_API_KEY")
96
+ if not api_key:
97
+ return "Error: La clave API de Gemini no está configurada. Por favor, añádela como un secreto en Hugging Face Spaces (GEMINI_API_KEY)."
98
+
99
+ api_url = f"https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key={api_key}"
100
+
101
  # Preparar el historial de chat para la API de Gemini
102
  chat_history = []
103
  chat_history.append({"role": "user", "parts": [{"text": full_prompt}]})
 
110
  }
111
  }
112
 
 
 
 
 
 
113
  try:
114
  # Realizar la solicitud POST a la API de Gemini
115
  response = requests.post(api_url, headers={'Content-Type': 'application/json'}, data=json.dumps(payload))