Spaces:
Running
Running
import time | |
import gradio as gr | |
import google.generativeai as genai | |
import os | |
# Cargar clave API desde variables de entorno | |
GOOGLE_API_KEY = os.getenv("GOOGLE_API_KEY") | |
if not GOOGLE_API_KEY: | |
raise ValueError("GOOGLE_API_KEY is not set in environment variables.") | |
genai.configure(api_key=GOOGLE_API_KEY) | |
def transform_history(history): | |
new_history = [] | |
for chat in history: | |
new_history.append({"parts": [{"text": chat[0]}], "role": "user"}) | |
new_history.append({"parts": [{"text": chat[1]}], "role": "model"}) | |
return new_history | |
def response(message, history): | |
chat_history = transform_history(history) | |
response = genai.ChatCompletion.create( | |
model="gemini-1.5-flash", # Asegúrate de usar el modelo correcto | |
messages=chat_history + [{"role": "user", "content": message}], | |
max_tokens=150, | |
) | |
reply = response['choices'][0]['message']['content'] | |
# Mostrar la respuesta personaje por personaje | |
for i in range(len(reply)): | |
time.sleep(0.05) | |
yield reply[:i + 1] | |
gr.ChatInterface(response, | |
title='Gemini Chat', | |
textbox=gr.Textbox(placeholder="Pregunta a Gemini")).launch(debug=True) | |