Saltar al contenido principal

n8n: Una guía con ejemplos prácticos

Aprende a utilizar n8n para construir agentes de IA que automaticen el procesamiento del correo electrónico y crear un agente de generación aumentada por recuperación (RAG) para responder a preguntas sobre documentos.
Actualizado 6 may 2025  · 12 min de lectura

n8n ha surgido como un marco popular y potente en la IA agéntica. Nos permite crear flujos de trabajo automatizados sin necesidad de codificación compleja.

En este artículo, te explicaré paso a paso cómo aprovechar al máximo esta robusta plataforma para automatizar dos procesos distintos:

  1. En primer lugar, te guiaré en la configuración de un agente de IA para procesar automáticamente el correo electrónico de Gmail, ahorrando un tiempo valioso y reduciendo el esfuerzo manual.
  2. Después, crearemos un agente inteligente que pueda chatear sobre cualquier documento, proporcionando un acceso rápido a la información al alcance de nuestra mano.

Mantenemos a nuestros lectores al día de lo último en IA enviándoles The Median, nuestro boletín gratuito de los viernes que desglosa las noticias clave de la semana. Suscríbete y mantente alerta en sólo unos minutos a la semana:

¿Qué es n8n?

n8n es una herramienta de automatización de código abierto que nos ayuda a conectar varias aplicaciones y servicios para crear flujos de trabajo, como una cadena de montaje digital. Permite a los usuarios diseñar visualmente estos flujos de trabajo con nodos, cada uno de los cuales representa un paso diferente del proceso.

Con n8n, podemos automatizar tareas, gestionar el flujo de datos e incluso integrar API, todo ello sin necesidad de grandes conocimientos de programación. Aquí tienes un ejemplo de automatización que construiremos en este tutorial:

n8n ejemplo de flujo de trabajo

Sin entrar en detalles, aquí tienes una descripción de lo que hace esta automatización:

  1. Accede a nuestra cuenta de Gmail para comprobar si hay nuevos mensajes de correo electrónico.
  2. Los nuevos correos electrónicos se envían a ChatGPT para que los procese la IA.
  3. La IA identifica la información relevante, que luego se guarda en una hoja de cálculo.

¿Cómo utilizar n8n?

Tenemos dos opciones para utilizar n8n:

  1. Utiliza su interfaz web aquí. Requiere una cuenta y una suscripción de pago, pero tiene una prueba gratuita de 14 días que puedes utilizar para seguir este tutorial.
  2. Como es de código abierto, también podemos ejecutarlo localmente o alojarlo nosotros mismos. Es gratuito y da acceso a casi todas sus funciones (algunas funciones son exclusivas de sus planes de pago en la nube o para empresas).

Ambas opciones te permiten seguir este tutorial sin coste alguno. Lo ejecutaremos localmente, pero si prefieres utilizar la interfaz web, los pasos son los mismos.

n8n Configuración local

El repositorio oficial de n8n explica cómo configurar n8n localmente. La forma más sencilla es

  1. Descarga e instala Node.js desde el sitio web oficial.
  2. Abre un terminal y ejecuta el comando npx n8n.

Eso es. Después de ejecutar el comando, deberías ver esto en el terminal:

Ejecutar n8n localmente

Para abrir la interfaz, pulsa "o" en el teclado o abre la URL localhost que aparece en el terminal -en mi caso, http://localhost:5678.

Comprender n8n

Antes de construir nuestra primera automatización, es bueno entender cómo funciona n8n. Un flujo de trabajo n8n consiste en una secuencia de nodos. Comienza con un nodo desencadenante que especifica una condición para que se ejecute el flujo de trabajo.

nodos de activación n8n

Los nodos se conectan para mover y procesar datos. En este ejemplo, el nodo activador de Gmail se conecta a un nodo OpenAI. Esto significa que el correo electrónico se entrega a ChatGPT para su procesamiento. Por último, la salida de ChatGPT se envía a un nodo de Hoja de Google, que se conecta a una Hoja de Google en nuestro Google Drive y escribe una nueva línea en una hoja de cálculo.

Este flujo de trabajo concreto utiliza ChatGPT para identificar las facturas que deben pagarse y asigna una línea en la hoja con el ID de la factura y el precio.

flujo de datos n8n

Los flujos de trabajo de n8n pueden ser mucho más complejos. n8n admite más de 1.047 integraciones, por lo que no podemos abarcarlas todas en un tutorial. En su lugar, me centraré en darte una idea general de cómo funciona y los antecedentes necesarios para que lo explores por tu cuenta. Si hay alguna herramienta que utilices habitualmente, lo más probable es que n8n sea compatible con ella o que puedas integrarla manualmente.

Ejemplo 1: Automatizar el procesamiento de facturas desde el correo electrónico

En esta sección, aprenderemos a construir el flujo de trabajo anterior.

Este es un caso de uso real que utilizo para gestionar mis facturas de alquiler. Tengo una casa con algunas habitaciones que alquilo. Las facturas se dividen a partes iguales entre todos los inquilinos. Cada vez que recibo una factura, tengo que añadir el total a una hoja de cálculo que se comparte con mis inquilinos.

Tengo una dirección de correo electrónico específica a la que se envían las facturas relacionadas con las facturas de la casa. De esta forma, sé que todos los correos de ese buzón corresponden a una factura. Envío el contenido del correo electrónico a ChatGPT para identificar el ID de la factura y el importe total a pagar. A continuación, esta información se añade a una nueva fila de la hoja de cálculo compartida.

Configurar el activador de correo electrónico

Para iniciar un nuevo flujo de trabajo, tenemos que hacer clic en el botón "Añadir primer paso...".

Iniciar un flujo de trabajo n8n

Como es el primer nodo, debe ser un activador, así que se nos presenta un panel para seleccionar un nodo activador. Un nodo desencadenante define las condiciones para que se ejecute el flujo de trabajo.

Nodos desencadenantes en n8n

Hay una amplia gama de posibles nodos desencadenantes. Seleccionemos un nodo activador de Gmail escribiendo "gmail" en el cuadro de búsqueda y haciendo clic en el nodo Gmail.

Seleccionar un nodo desencadenante de Gmail en n8n

A continuación, elegimos el único activador disponible para Gmail: "Mensaje recibido".

En mensaje recibido nodo desencadenante en n8n

Esto abrirá el panel de configuración del nodo, donde tenemos que configurar nuestras credenciales de Gmail para permitir que el flujo de trabajo n8n acceda a nuestra cuenta de Gmail. Para ello, haz clic en "Nueva credencial". Se abrirá la siguiente ventana:

Configurar las credenciales Google OAuth en n8n

En la parte derecha (1), hay una guía de configuración que explica los pasos necesarios para configurar las credenciales en Nube de Google. Las guías proporcionadas por n8n son bastante completas, así que no repetiremos los pasos aquí. Asegúrate de habilitar también la API de Gmail en la Consola en la Nube de Google.

Una vez configurado, tenemos que copiar el ID de cliente (2) y el secreto de cliente (3) de Google Cloud en la configuración de credenciales de n8n.

Para asegurarnos de que todo está correctamente configurado, podemos probar el nodo haciendo clic en "Obtener evento de prueba".

Probar un flujo de trabajo

Después de la prueba, deberíamos ver el último correo electrónico que hemos recibido en nuestra bandeja de entrada en la sección de salida. El contenido del correo electrónico es el campo snippet.

El campo snippet almacena el contenido del correo electrónico. Dice que mi factura de Internet de abril está disponible. Proporciona el ID de la factura y el importe total a pagar. Esta es la información que queremos añadir a la hoja de cálculo. 

Para realizar pruebas, te recomiendo que ancles la salida haciendo clic en el botón de anclaje de la esquina superior derecha:

Fijar el resultado de un nodo en n8n

Esto bloqueará el resultado al desencadenante, lo que significa que siempre que ejecutemos este flujo de trabajo, se utilizará este mismo resultado, lo que facilita la prueba del flujo de trabajo porque los resultados no se verán afectados por los nuevos correos electrónicos que podamos recibir. Lo desanclaremos una vez que el flujo de trabajo esté correctamente configurado.

En esta fase, nuestro flujo de trabajo debería tener un único nodo desencadenante (podemos ver que es un nodo desencadenante por el pequeño marcador de rayo de la izquierda).

Identificar los nodos desencadenantes en n8n

Ten en cuenta que, como es probable que no tengas una factura por correo electrónico en tu buzón, más adelante ChatGPT te dará una respuesta que no tiene sentido. Si quieres probar exactamente este flujo de trabajo, puedes enviarte un correo electrónico de prueba con el siguiente contenido (o algo similar):

Dear customer,

Your internet invoice number FT 2025**/****** for April is now available in the attachment.

Amount

€**.**
This invoice must be paid by 19/05/2025.

Después de enviarlo, debes desanclar el resultado, volver a ejecutar el nodo de Gmail y anclar el nuevo resultado.

Configurar el nodo ChatGPT

El siguiente paso es configurar el nodo OpenAI. Empieza haciendo clic en el botón "+" situado a la derecha del nodo desencadenante de Gmail:

Conexión de nodos en n8n

Escribe "OpenAI" y selecciona la opción correspondiente de la lista.

Encontrar nodos OpenAI en n8n

Después, en "Acciones de texto", selecciona el nodo "Mensaje a un modelo". Este nodo se utiliza para mensajear un LLM.

Crear un nodo "Mensaje a un modelo" en n8n

Como antes, necesitamos crear una credencial para acceder a OpenAI. Ten en cuenta que una vez creada una credencial, puede reutilizarse en cualquier flujo de trabajo. No es necesario ajustarlo cada vez.

Para la credencial OpenAI, todo lo que necesitamos es una clave API. Si no tienes una, puedes crearla aquí. Si tienes problemas para hacerlo, n8n también proporciona una guía para ello.

En cuanto a la configuración, tenemos que seleccionar el modelo de IA que queremos utilizar y el mensaje que enviamos al modelo. Para el modelo, podemos utilizar la GPT 4.1:

Seleccionar el modelo de IA en n8n

En el campo de mensaje, tenemos que proporcionar el aviso. Para este ejemplo, le damos al modelo el contenido del correo electrónico y le pedimos que identifique el ID de la factura y el importe total a pagar. Este es el mensaje que utilicé:

Configurar el indicador del agente en n8n

El contenido del correo electrónico se facilita en {{ $json.snippet }}. En n8n, el aviso puede contener variables que se rellenan a partir de la salida de nodos anteriores, el correo electrónico en nuestro caso. La lista de campos disponibles puede verse a la izquierda. Podemos escribir el campo manualmente o arrastrarlo y soltarlo en el indicador.

Para probarlo, hacemos clic en el botón "Probar paso" situado en la parte superior del panel de configuración. El resultado se muestra a la derecha:

El resultado es una cadena con la respuesta del modelo. Nos gustaría tener los dos campos por separado, para no tener que procesar más el mensaje. Podemos conseguirlo cambiando la salida del LLM a JSON:

Configurar el formato de salida en n8n

Probando de nuevo este paso, obtenemos los dos campos como datos JSON:

Enviar los datos a una Hoja de Google

El paso final de este flujo de trabajo es enviar el ID de la factura y el precio a una nueva fila de una Hoja de Google. En esta fase, tenemos que conectar la salida del nodo OpenAI a Google Sheets. Lo hacemos como antes, pulsando el botón "+" a la izquierda del nodo:

Añadir el nodo final en n8n

Aquí queremos escribir Google Sheets y seleccionar el nodo "Añadir fila en hoja":

Seleccionar un nodo de Google Sheets en n8n

Podemos utilizar las mismas credenciales que utilizamos para acceder a Gmail. Pero necesitamos habilitar las siguientes API en la Consola en la nube de Google:

  • Google Sheets API
  • Google Drive API

Para configurar el nodo Hojas de Google, tenemos que seleccionar la hoja y seleccionar los valores para rellenar los campos. La hoja debe crearse manualmente con dos columnas, una para el ID de la factura y otra para el total de la factura.

Estado inicial de la hoja de cálculo

Esos valores se toman de la salida del nodo OpenAI. Podemos arrastrarlas y soltarlas en las columnas.

Ejecutar el flujo de trabajo

Eso es. Tenemos un flujo de trabajo que procesará automáticamente nuestras facturas en una hoja de Google. Podemos probarlo haciendo clic en "Probar flujo de trabajo" en la parte inferior:

Probar el flujo de trabajo en n8n

Después de ejecutarlo, si vamos a nuestra Hoja de Google, veremos una nueva fila con los datos:

Por defecto, un flujo de trabajo se ejecutará cada minuto. Dependiendo del flujo de trabajo, debemos configurar una frecuencia adecuada para que se ejecute. En este ejemplo concreto, una vez por minuto es demasiado frecuente. Una vez al día es una frecuencia más adecuada. 

Podemos configurarlo haciendo doble clic en el nodo activador y estableciendo un valor diferente en el campo "Tiempos de sondeo":

Cambiar la frecuencia de ejecución en el flujo de trabajo n8n

Ejemplo 2: Construir un Agente RAG

En esta sección, construimos un flujo de trabajo de agente RAG más complejo. RAG son las siglas de retrieval-augmented generation, una técnica que combina la recuperación de información relevante de una base de datos o un documento y el uso de un modelo lingüístico para generar respuestas basadas en la información recuperada.

Esto es muy útil cuando tenemos una base de conocimientos específica, como un documento de texto largo, y queremos construir un agente de IA que sea capaz de responder a preguntas sobre ella. 

Me gusta jugar a juegos de mesa, pero mis amigos y yo a menudo discutimos sobre las reglas y luego pasamos el tiempo buscando las reglas correctas en vez de jugando, lo que puede ser frustrante. Construir un agente RAG basado en las reglas del juego es una buena solución para arreglar este problema, porque la próxima vez que tengamos una pregunta, simplemente se la podemos hacer al agente.

Para construir este agente, haremos dos flujos de trabajo:

  1. Un flujo de trabajo que ejecutaremos una sola vez para cargar los datos en una base de datos Pinecone.
  2. Otro que potencia el agente RAG y utiliza la base de datos Pinecone para responder a nuestras preguntas.

Cargar los datos en Pinecone

La piña es un tipo de base de datos que gestiona datos en forma de vectores. Una base de datos vectorial como Pinecone es estupenda para nuestro agente RAG porque le ayuda a buscar y comprender rápidamente la información relevante, lo que le hace más eficaz a la hora de dar respuestas precisas.

Como sólo tenemos que ejecutar este flujo de trabajo una vez, podemos utilizar un nodo activador manual. Es un nodo desencadenante que se utiliza para ejecutar manualmente un flujo de trabajo. 

Nodo de disparo manual en el n8n

Conecta el nodo de activación manual a un nodo "Google Drive" para descargar los datos de Google Drive. 

Nodo de descarga de Google Drive en n8n

Utiliza la siguiente configuración:

Configurar el nodo de descarga de Google Drive en n8n

Utilicé el archivo disponible públicamente mtgrules.txt con las reglas del juego de cartas coleccionables Magic: La Reunión. Puedes utilizar cualquier archivo sobre el que quieras hacer preguntas; el flujo de trabajo es el mismo.

Para configurar Pinecode, entra en Pineconecopia la clave API y crea un índice haciendo clic en el botón "Crear índice". Llamé a mi índice rules y seleccioné el modelo text-embedding-3-small.

Crear el índice Pinecone

De vuelta al n8n, conecta la salida del nodo Google Drive a un nodo Pinecone Vector Store para la acción "Añadir documentos al almacén vectorial":

Creación del nodo Pinecone en n8n 

Para configurar el nodo, tenemos que crear una credencial pegando la clave API y seleccionando el Índice Pinecone que acabamos de crear. Debajo del nodo Pinecone Vector Store, vemos dos cosas que tenemos que configurar: un modelo de incrustación y un cargador de datos.

Configurar el almacén vectorial Pinecone en n8n

Para la incrustación, crea un nodo OpenAI Embedding con el modelo text-embedding-3-small:

Configuración de la incrustación de la piña

Para el cargador de datos, creamos un nodo Cargador de datos por defecto con un tipo de datos binario:

Configuración del cargador de datos Pinecone en n8n

Por último, el cargador de datos requiere un nodo Divisor de Texto, que especifica cómo deben dividirse los datos del archivo al crear el almacén vectorial. Utilizamos el nodo Divisor de Texto Recursivo de Caracteres, que es el nodo recomendado para la mayoría de las aplicaciones.

Añadir un nodo divisor de texto

Lo configuramos para que utilice un tamaño de trozo de 1.000 y un solapamiento de trozo de 200:

Configuración del divisor de texto en n8n

Al elegir el tamaño y el solapamiento de los trozos, considera la posibilidad de utilizar un tamaño de trozo mayor para los documentos largos, a fin de capturar el contenido adecuado, y un solapamiento menor para mantener el contexto entre los segmentos sin redundancia.

Este es el aspecto del flujo de trabajo final:

Flujo de trabajo final de carga de datos en n8n

Podemos ejecutarlo haciendo clic en "Probar flujo de trabajo", y una vez hecho, podemos verificar en Pinecone que se han cargado los datos.

Crear un agente RAG

Éste es el esquema final del agente RAG:

Flujo de trabajo final del agente RAG en n8n

Como ejercicio, te animo a que intentes comprenderlo y quizá incluso recrearlo tú mismo localmente antes de seguir leyendo.

Empezamos con un nodo activador "En mensaje de chat". Se utiliza para crear un flujo de trabajo de chat.

En el nodo activador de mensajes de chat en n8n

A continuación, conectamos el activador del chat a un nodo "Agente IA" con las opciones predeterminadas.

Nodo Agente AI en n8n

Debajo del Agente IA, vemos que podemos configurar tres cosas:

  • El modelo de IA utilizado por el agente.
  • La memoria define cómo recuerda el agente el contexto de la conversación
  • Las herramientas a las que tiene acceso el agente. En este caso, proporcionaremos la base de datos Pinecone como herramienta para que el agente pueda responder a preguntas sobre nuestro documento.

Para el modelo de IA, seleccionamos un nodo "OpenAI Chat Model" y utilizamos el modelo gpt-4.1:

Configurar el modelo de IA en n8n

Para la memoria, utilizamos un nodo "Memoria simple" con una ventana de contexto de longitud 5. Esto significa que el agente recordará y tendrá en cuenta las cinco interacciones anteriores al responder.

Por último, en la herramienta, añadimos un nodo "Pinecone Vector Store" con la siguiente configuración:

Configuración de la herramienta Pinecone Vector store para el agente de IA en n8n

En el campo de descripción, es importante especificar cuándo deben utilizarse las herramientas. Esto es lo que el agente utilizará para determinar si debe llamar a la herramienta.

Lo último que necesitamos es configurar la incrustación utilizada por el almacén vectorial. Como antes, utilizamos un nodo de incrustación OpenAI con el modelo text-embedding-3-small:

Configuración de incrustación en n8n

El flujo de trabajo está completo, y podemos chatear con el agente. He aquí un ejemplo:

Chatear con el agente de IA en n8n

Podemos ver a la derecha los pasos que dio el agente para responder a nuestra pregunta. En concreto, accedió a la base de datos Pinecone para obtener la información de las normas pertinentes.

Plantillas n8n

n8n ofrece una útil función que puede acelerar significativamente nuestro proceso de creación de flujos de trabajo: la biblioteca de plantillas n8n.

Esta biblioteca es una colección de flujos de trabajo preconstruidos, elaborados por la comunidad y expertos de n8n. Tanto si tratamos de automatizar tareas sencillas como procesos más complejos, lo más probable es que alguien ya haya creado un flujo de trabajo adecuado a nuestras necesidades.

Importar un flujo de trabajo a nuestra configuración n8n significa que no siempre tenemos que empezar de cero. En su lugar, podemos aprovechar las soluciones creativas que han desarrollado otros usuarios. Una vez que hayamos importado un flujo de trabajo, todo lo que tenemos que hacer es configurarlo con nuestras credenciales y ajustarlo para que se adapte a nuestros requisitos exactos.

Para cualquier tarea que queramos automatizar, desde el procesamiento del correo electrónico hasta la gestión de las redes sociales, es muy probable que haya una plantilla disponible en la biblioteca.

Conclusión

n8n ofrece un vasto ecosistema de integraciones, que nos permite conectar más de mil servicios y herramientas para crear agentes de IA. En este tutorial sólo hemos arañado la superficie de lo que el n8n puede hacer. Al explorar cómo utilizar n8n para construir agentes de IA que automaticen las tareas cotidianas, acabamos de empezar a aprovechar su potencial.


François Aubry's photo
Author
François Aubry
LinkedIn
Ingeniero full-stack y fundador de CheapGPT. Enseñar siempre ha sido mi pasión. Desde mis primeros días como estudiante, busqué con entusiasmo oportunidades para dar clases particulares y ayudar a otros estudiantes. Esta pasión me llevó a realizar un doctorado, en el que también trabajé como ayudante de profesor para apoyar mis esfuerzos académicos. Durante esos años, encontré una inmensa satisfacción en el entorno tradicional del aula, fomentando las conexiones y facilitando el aprendizaje. Sin embargo, con la llegada de las plataformas de aprendizaje en línea, reconocí el potencial transformador de la educación digital. De hecho, participé activamente en el desarrollo de una plataforma de este tipo en nuestra universidad. Estoy profundamente comprometida con la integración de los principios de la enseñanza tradicional con metodologías digitales innovadoras. Mi pasión es crear cursos que no sólo sean atractivos e informativos, sino también accesibles para los alumnos en esta era digital.
Temas

Aprende IA con estos cursos

Curso

AI Security and Risk Management

2 hr
4K
Learn the fundamentals of AI security to protect systems from threats, align security with business goals, and mitigate key risks.
Ver detallesRight Arrow
Comienza el curso
Ver másRight Arrow
Relacionado
An AI juggles tasks

blog

Cinco proyectos que puedes crear con modelos de IA generativa (con ejemplos)

Aprende a utilizar modelos de IA generativa para crear un editor de imágenes, un chatbot similar a ChatGPT con pocos recursos y una aplicación clasificadora de aprobación de préstamos y a automatizar interacciones PDF y un asistente de voz con GPT.
Abid Ali Awan's photo

Abid Ali Awan

10 min

blog

10 maneras de utilizar ChatGPT para las finanzas

Descubre cómo los modelos lingüísticos de IA como ChatGPT pueden revolucionar tus operaciones financieras, desde la generación de informes hasta la traducción de jerga financiera.
Matt Crabtree's photo

Matt Crabtree

13 min

Tutorial

RAG Con Llama 3.1 8B, Ollama y Langchain: Tutorial

Aprende a crear una aplicación RAG con Llama 3.1 8B utilizando Ollama y Langchain, configurando el entorno, procesando documentos, creando incrustaciones e integrando un recuperador.
Ryan Ong's photo

Ryan Ong

12 min

Tutorial

Guía para principiantes de la API de OpenAI: Tutorial práctico y prácticas recomendadas

Este tutorial te presenta la API de OpenAI, sus casos de uso, un enfoque práctico para utilizar la API y todas las prácticas recomendadas que debes seguir.
Arunn Thevapalan's photo

Arunn Thevapalan

13 min

Tutorial

Construir agentes LangChain para automatizar tareas en Python

Un tutorial completo sobre la construcción de agentes LangChain multiherramienta para automatizar tareas en Python utilizando LLMs y modelos de chat utilizando OpenAI.
Bex Tuychiev's photo

Bex Tuychiev

14 min

Tutorial

Tutorial de la API de OpenAI Assistants

Una visión completa de la API Assistants con nuestro artículo, que ofrece una mirada en profundidad a sus características, usos en la industria, guía de configuración y las mejores prácticas para maximizar su potencial en diversas aplicaciones empresariales.
Zoumana Keita 's photo

Zoumana Keita

14 min

Ver másVer más