Chatbot con Gemini API

🧑‍🎓 Aprendiz⏱️ 10 minutos

📋 Prerequisitos sugeridos

  • Cuenta de Google (Gmail)

Lo que vas a construir

Vas a crear tu primer chatbot con inteligencia artificial usando la API de Gemini de Google, que es completamente gratis. Lo interesante: la IA va a escribir el codigo por ti. Tu solo copias, pegas y ejecutas. Al terminar tendras un chatbot funcionando en tu terminal que responde a cualquier pregunta. Es el primer paso para entender como funcionan las APIs de IA y crear tus propias aplicaciones inteligentes.


Paso 1: Abre Google AI Studio

Ve a aistudio.google.com e inicia sesión con tu cuenta de Google.

Esto es un chat con Gemini, la IA de Google. Gratis.


Paso 2: Pídele que escriba el código

Copia y pega este prompt:

Necesito un chatbot simple en Node.js que:
- Use la API de Gemini
- Funcione en la terminal
- Mantenga el historial de la conversación
- La API key la leo de la variable de entorno GEMINI_API_KEY

Dame el código completo y los comandos para instalarlo.

Dale Enter y espera.

Gemini va a escribir todo el código por ti. También te dirá qué comandos ejecutar.


Paso 3: Obtén tu API Key

  1. Abre aistudio.google.com/apikey
  2. Click en "Create API Key"
  3. Copia la key

Paso 4: Configura la key en tu sistema

SistemaComando
macOS/Linuxexport GEMINI_API_KEY="tu-key-aqui"
Windows PowerShell$env:GEMINI_API_KEY="tu-key-aqui"

Ejecuta esto en la misma terminal donde vas a correr el chatbot.


Paso 5: Sigue las instrucciones de Gemini

Gemini te dio:

  1. Comandos para crear el proyecto (mkdir, npm install, etc.)
  2. Código para pegar en un archivo
  3. El nombre del archivo (algo como chatbot.js o index.mjs)
  4. El comando para ejecutarlo (algo como node chatbot.js)

Sigue sus instrucciones paso a paso.

💡 ¿Cómo creo un archivo? Abre tu editor de código (VS Code, Cursor, etc.), crea un nuevo archivo, pega el código, y guárdalo con el nombre que Gemini indicó.


¿Funcionó?

Si ves algo como esto, lo lograste:

Tú: Hola
Gemini: ¡Hola! ¿En qué puedo ayudarte?

Si algo falló

ErrorCausaSolución
API key not validKey mal copiada o expiradaVerifica en aistudio.google.com/apikey
Cannot find moduleFalta la dependenciaEjecuta npm install @google/genai
node: command not foundNode.js no instaladoInstala desde nodejs.org
npm: command not foundnpm no está en PATHReinstala Node.js o reinicia la terminal
GEMINI_API_KEY undefinedVariable no configuradaEjecuta el export en la misma terminal
SyntaxErrorCódigo mal copiadoCopia todo el código de nuevo, sin cortar
429 Too Many RequestsLímite de API alcanzadoEspera 1 minuto o usa otro proyecto
Gemini da código en PythonNo especificaste Node.jsPide de nuevo: "en Node.js, no Python"

💡 Tip importante: Si cerraste la terminal, debes ejecutar el export de nuevo. La variable solo existe en esa sesión.


¿Qué acaba de pasar?

  1. Le pediste a una IA que escriba código
  2. La IA lo escribió
  3. Tú lo ejecutaste
  4. Funciona

Podrías haberle pedido lo mismo a ChatGPT, Claude, o cualquier otro chat de IA. El resultado sería similar.


Experimenta

Vuelve a Google AI Studio y prueba variaciones:

  • "...que responda como pirata"
  • "...que me ayude a practicar inglés"
  • "...que sea un tutor de matemáticas"

El código cambia. El proceso es el mismo.


💼 Caso Real: Chatbot para Fintech

Si quieres adaptar este chatbot para servicios financieros, hay consideraciones importantes de seguridad y compliance.

System Prompt Seguro

Agrega restricciones claras al comportamiento del bot:

const systemPrompt = `Eres un asistente financiero. Reglas estrictas:
- NUNCA des consejos de inversión específicos ("compra X acción")
- NUNCA solicites datos sensibles (números de tarjeta, contraseñas, CVV)
- Siempre recomienda consultar con un asesor financiero certificado
- Si detectas intención de fraude o phishing, responde: "No puedo ayudar con eso"
- Incluye disclaimer: "Esto es información general, no asesoría financiera"`;

// Usar en la llamada a la API
const response = await ai.generateContent({
  systemInstruction: systemPrompt,
  contents: [{ role: "user", parts: [{ text: userMessage }] }]
});

Consideraciones de Compliance

RequisitoPor quéCómo implementarlo
LoggingAuditoría regulatoriaGuarda todas las conversaciones con timestamp
Rate limitingPrevenir abusoMáx 10 mensajes/minuto por usuario
Disclaimer visibleProtección legalFooter: "No es asesoría financiera"
No guardar datos sensiblesPCI DSS / GDPRFiltrar antes de guardar en logs

Ejemplo de Logging para Auditoría

const logConversation = async (userId, message, response) => {
  await db.insert('chat_logs', {
    user_id: userId,
    timestamp: new Date().toISOString(),
    user_message: sanitize(message), // Remover datos sensibles
    bot_response: response,
    session_id: sessionId
  });
};

📖 Aprende más sobre seguridad en Autenticación y APIs Seguras


Próximo paso

Chatbot con Claude — Mismo proceso, diferente IA


¿Quieres entender más?

Si te interesa saber qué es una API, qué es un LLM, o cómo funciona esto por dentro:

¿Qué es un LLM?Terminal básico