En esta página:
Las aplicaciones con IA y una base de datos son más dinámicas.
Nos permite ir más allá de lo habitual y no solo crear aplicaciones con IA que den respuestas a las consultas.
En este tutorial te enseñaré a Como Integrar Gemini AI, MySQL y Python, vamos con ello.
Primero debemos instalar MySQL Connector.
Instalación de MySQL Connector
Para instalarlo ejecutamos el siguiente comando:
1 2 3 4 |
# Comando para instalar MySQL Connector pip install mysql-connector-python |
Creación de Proyecto con Gemini AI y Python
Ve a este enlace de Google AI Studio y obtén una API KEY.
Instala el paquete google-generativeai con el siguiente comando:
1 2 3 4 |
# Comando para instalar el paquete 'google-generativeai' pip install google-generativeai |
También necesitaremos de IPython, lo instalamos con el siguiente comando:
1 2 3 4 |
# Comando para instalar 'IPython' pip install ipython |
Paso seguido creamos un archivo de Python.
Yo le colocaré el nombre app.py a mi archivo, tu le puedes poner el nombre que desees.
En el archivo app.py empezamos configurando Gemini AI (He colocado comentarios para explicar que hace cada línea de código):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# Importamos Gemini Pro import google.generativeai as genai # importamos textwrap import textwrap # Importamos Markdown de IPython from IPython.display import Markdown # Soporte Para Caracteres Especiales en la Terminal de Python import sys sys.stdout.reconfigure(encoding='utf-8') # Usamos el modelo generativo de la IA modelo = genai.GenerativeModel('gemini-pro') # Configuramos la API KEY GOOGLE_API_KEY = 'ACA-PON-TU-API-KEY' genai.configure(api_key=GOOGLE_API_KEY) # Rebajamos el tamaño de la respuesta de la IA def rebajar(text): text = text.replace('•', ' *') return Markdown(textwrap.indent(text, '> ', predicate=lambda _: True)) # Obtenemos la respuesta respuesta = modelo.generate_content("Dame la receta de una sopa de pollo") respuesta = respuesta.text # Imprimimos la respuesta print(respuesta + "\n") |
Creación de Base de Datos
Para guardar los datos, necesitamos crear una base de datos.
Yo estoy usando XAMPP, un servidor local que viene con MySQL y una herramienta llamada phpMyAdmin.
La herramienta phpMyAdmin me permite crear manualmente una base de datos con sus tablas en MySQL.
Si no sabes como crear una base de datos manualmente en MySQL con phpMyAdmin, en este video te enseño a como hacerlo.
Para este proyecto he creado una base de datos llamada ai_data.
Y dentro de ella he creado una tabla llamada respuestas con los campos: id, nombre, detalles y created_at.
A continuación te comparto la estructura de la tabla creada:
Integración de Gemini AI, MySQL y Python
Ahora vamos a realizar la conexión de Python y Gemini AI con la base de datos MySQL (He colocado comentarios para explicar que hace cada línea de código):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# Importamos el conector MySQL import mysql.connector # Hacemos la conexión a la base de datos mibd = mysql.connector.connect( host = "localhost", user = "root", password = "", database = "ai_data" ) # Guardamos la conexión en la variable 'cursor' cursor = mibd.cursor() # Insertamos la respuesta de Gemini AI en la base de datos sql = "INSERT INTO respuestas (nombre, detalles) VALUES (%s, %s)" valores = ("Respuesta de Gemini AI", respuesta) cursor.execute(sql, valores) # Confirmamos la operación mibd.commit() # Imprimimos un mensaje para confirmar que se realizo correctamente print(cursor.rowcount, "Consulta guardada en la base de datos.") |
Con ello tenemos todo listo para usar Gemini AI, MySQL y Python.
Probando la Aplicación
Lo que hará este proyecto es guardar cada consulta que le hagamos a la Inteligencia Artificial, es decir a Gemini AI.
Las consultas se almacenan en la tabla respuestas de la base de datos ai_data.
En el siguiente video te muestro el resultado de la aplicación y como se guardan las respuestas de Gemini AI en MySQL:
Código Completo del Proyecto
Te dejo a continuación el código completo del archivo app.py:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# Importamos Gemini Pro import google.generativeai as genai # importamos textwrap import textwrap # Importamos Markdown de IPython from IPython.display import Markdown # Soporte Para Caracteres Especiales en la Terminal de Python import sys sys.stdout.reconfigure(encoding='utf-8') # Usamos el modelo generativo de la IA modelo = genai.GenerativeModel('gemini-pro') # Configuramos la API KEY GOOGLE_API_KEY = 'ACA-PON-TU-API-KEY' genai.configure(api_key=GOOGLE_API_KEY) # Rebajamos el tamaño de la respuesta de la IA def rebajar(text): text = text.replace('•', ' *') return Markdown(textwrap.indent(text, '> ', predicate=lambda _: True)) # Obtenemos la respuesta respuesta = modelo.generate_content("Dame la receta de una sopa de pollo") respuesta = respuesta.text # Imprimimos la respuesta print(respuesta + "\n") # Importamos el conector MySQL import mysql.connector # Hacemos la conexión a la base de datos mibd = mysql.connector.connect( host = "localhost", user = "root", password = "", database = "ai_data" ) # Guardamos la conexión en la variable 'cursor' cursor = mibd.cursor() # Insertamos la respuesta de Gemini AI en la base de datos sql = "INSERT INTO respuestas (nombre, detalles) VALUES (%s, %s)" valores = ("Respuesta de Gemini AI", respuesta) cursor.execute(sql, valores) # Confirmamos la operación mibd.commit() # Imprimimos un mensaje para confirmar que se realizo correctamente print(cursor.rowcount, "Consulta guardada en la base de datos.") |
Así es como puedes integrar Gemini AI, MySQL y Python.
Conclusión
En este tutorial has aprendido a Como Integrar Gemini AI, MySQL y Python.
Te servirá de guía para tus proyectos con Gemini AI, MySQL y Python.
Recuerda siempre que solo con la práctica serás un mejor programador.
Nota(s)
- No olvides que debemos usar la Tecnología para hacer cosas Buenas por el Mundo.
Síguenos en nuestras Redes Sociales para que no te pierdas nuestros próximos contenidos.