pip install google-generativeai
import csv
import google.generativeai as genai
Importamos csv para manejar archivos con preguntas/respuestas y google.generativeai para acceder a la API de Gemini.
genai.configure(api_key="TU_API_KEY")
Debes ingresar tu clave personal de la API para acceder al modelo Gemini.
respuestas = {}
with open("preguntas.csv", "r", encoding="utf-8") as archivo:
lector = csv.DictReader(archivo)
for fila in lector:
respuestas[fila["pregunta"].lower()] = fila["respuesta"]
Se leen las preguntas/respuestas previamente conocidas para respuestas rápidas sin necesidad de usar Gemini.
modelo = genai.GenerativeModel('gemini-2.0-flash')
Se crea una instancia del modelo gemini-pro, que permite generar texto a partir de una pregunta.
def agregar_pregunta(mensaje):
with open("salida.csv", "a", newline="", encoding="utf-8") as archivo:
escritor = csv.writer(archivo)
escritor.writerow([mensaje, ""])
Cuando una pregunta no está en el sistema, se guarda para revisión futura.
def obtener_respuesta(mensaje):
mensaje = mensaje.lower()
if mensaje in respuestas:
return respuestas[mensaje]
else:
agregar_pregunta(mensaje)
respuesta_gemini = modelo.generate_content(mensaje)
return respuesta_gemini.text.strip()
Primero se verifica si la pregunta ya tiene respuesta. Si no, se usa Gemini para generarla.
while True:
usuario = input("Tú: ")
if usuario.lower() == "salir":
break
respuesta = obtener_respuesta(usuario)
print("Chatbot:", respuesta)
Este bucle permite mantener una conversación interactiva con el usuario.
Puedes adaptar este chatbot para usar en web o WhatsApp, y guardar respuestas generadas para entrenar una IA más personalizada.