Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Compilación de un agente de IA con MongoDB y n8n

Este tutorial demuestra cómo compilar rápidamente un agente de IA utilizando n8n que pueda responder preguntas sobre algunos datos de muestra. El agente aprovecha MongoDB tanto como un almacén vectorial para la recuperación de documentos como un almacén de memoria de chat para la persistencia de conversaciones.

La siguiente captura de pantalla muestra el flujo de trabajo que creará en este tutorial. En este flujo de trabajo, creará un agente de IA que utiliza dos nodos de MongoDB:

  • Nodo de almacenamiento vectorial Atlas de MongoDB para recuperar documentos relevantes de los datos de muestra

  • Nodo de memoria de chat de MongoDB para almacenar el historial de conversaciones

También utiliza OpenAI como proveedor de modelos LLM e incrustación.

Cuando envías un mensaje al agente, se activan las siguientes acciones:

  1. El nodo del agente de IA procesa el mensaje del usuario y determina la siguiente acción.

  2. El agente de IA verifica si necesita realizar alguna llamada de herramienta.

    • Si es así, llama al nodo MongoDB Vector Store para recuperar documentos.

    • De lo contrario, sigue a la siguiente acción.

  3. El agente genera una respuesta utilizando el LLM que configuró para el flujo de trabajo.

  4. Después de cada interacción, el nodo Memoria de chat de MongoDB almacena el historial de la conversación.

Captura de pantalla del flujo de trabajo del agente de IA con n8n y MongoDB
haga clic para ampliar

Nota

Los asteriscos rojos en la configuración del nodo del agente de IA indican parámetros obligatorios.

Antes de comenzar, asegúrate de tener lo siguiente:

  • n8n instalado.

  • Uno de los siguientes tipos de clúster de MongoDB:

    • Un clúster de Atlas ejecutando la versión 6.0.11 de MongoDB, 7.0.2, o posterior. Asegúrate de que tu La dirección IP está incluida en la lista de accesode tu proyecto Atlas.

    • Una implementación local de Atlas creada usando Atlas CLI. Para obtener más información, consulta Crear una Implementación local de Atlas.

    • Un clúster de MongoDB Community o Enterprise con Search y Vector Search instalados.

  • Los datos de muestra cargados en tu implementación de MongoDB.

  • Una clave de API de OpenAI, o una clave de API para cualquier otro proveedor compatible de LLM y modelos de embedding que pretendas utilizar.

Cuando trabajes con n8n y MongoDB, considera lo siguiente:

  • Para los usuarios de MongoDB Atlas, asegúrense de añadir sus direcciones IP n8n a la lista de acceso IP de su proyecto. Para obtener más información, consulte Acceso a la red.

  • Cuando configure el nodo Vector Store de MongoDB, asegúrese de activar el Include Metadata a Off. Si no cambia esta configuración a Off, es posible que el agente de IA no se ejecute, ya que los documentos podrían ser demasiado grandes para cargarlos en la ventana de contexto.

Debes crear un índice de búsqueda vectorial en tu colección antes de poder usar el nodo MongoDB Vector Store.

Para utilizar un método diferente de creación de índices, sigue los pasos en el procedimiento de creación de índices. Usa la siguiente configuración:

{
"fields": [
{
"type": "vector",
"path": "plot_embedding",
"numDimensions": 1536,
"similarity": "dotProduct"
}
]
}

En esta sección, completarás los pasos para configurar las credenciales requeridas en n8n.

1

En la esquina superior derecha de la página de inicio de n8n, haz clic derecho en Create Workflow. Como alternativa, selecciona la pestaña Credentials y haz clic en Add first credential.

2
  1. Desde el menú desplegable, seleccione las credenciales que desea configurar.

    Por ejemplo, selecciona OpenAI y haz clic en Continue.

  2. Para ver qué parámetros debe introducir para su proveedor de modelos, consulte la librería de Credenciales.

    Por ejemplo, para OpenAI, ingrese la clave API, el nombre de la organización y la URL base.

  3. Haga clic en Save. n8n agrega la credencial a su espacio personal.

3

Sigue las mismas instrucciones descritas en el paso anterior para agregar tus credenciales de MongoDB a n8n. Especifique los siguientes valores:

Configuración
Valor

Tipo de configuración

En el menú desplegable, selecciona el método Connection String.

Cadena de conexión

Ingresa tu MongoDB Connection String.

Para aprender a encontrar tu cadena de conexión de MongoDB, consulta Cadenas de conexión.

Database

Introduce sample_mflix.

Complete los siguientes pasos en n8n para crear un flujo de trabajo de agente de IA con MongoDB y n8n. Para obtener más información sobre el flujo de trabajo, consulte Acerca del8flujo de trabajo n n con MongoDB.

1

Abra n8n donde lo esté alojando y luego cree un nuevo flujo de trabajo:

  • Si no tiene flujos de trabajo o está utilizando n8n por primera vez, utilice el flujo de trabajo vacío que se muestra.

  • Si tiene flujos de trabajo existentes, haga clic en Create Workflow.

2

Todos los flujos de trabajo en n8n comienzan con un nodo de activador. Para este workflow, se utiliza un nodo de activador de chat para que el workflow del agente de IA se active con un mensaje del usuario.

  1. Selecciona Add first step o presiona Tab para abrir el menú del nodo.

  2. Buscar Chat Trigger. n8n muestra una lista de nodos que coinciden con la búsqueda.

  3. Seleccione Chat Trigger para agregar el nodo al lienzo.

  4. Haz clic en Back to canvas en la esquina superior izquierda de tu pantalla. Se puede omitir la prueba de este nodo en esta fase. Haz clic en Save.

3

En el nodo Agente de IA, se configura el modelo de chat, la memoria y las herramientas. Estos son componentes requeridos del nodo Agente de IA donde se pueden agregar nodos y subnodos adicionales.

  1. Selecciona el conector + en el nodo del activador.

  2. Busque el nodo AI Agent y añádalo al flujo de trabajo. Se mostrará la vista de edición del agente de IA.

  3. Haz clic en Back to canvas en la esquina superior izquierda de tu pantalla. Se puede omitir la prueba de este nodo en esta fase. Haz clic en Save.

4

Configure el modelo de chat para adjuntar el nodo para procesar los mensajes entrantes:

  1. Haz clic en el conector + junto a la etiqueta Chat Model en el nodo de agente de IA. El panel de búsqueda aparece, filtrado en Language Models.

  2. Seleccione OpenAI Chat Model de la lista, o su proveedor de LLM preferido.

  3. Haga clic en Credential to connect with.

  4. Después de seleccionar tus credenciales, elige un modelo en el menú desplegable (por ejemplo, gpt-4o).

  5. Haz clic en Back to canvas en la esquina superior izquierda de tu pantalla. Se puede omitir la prueba de este nodo en esta fase. Haz clic en Save.

  6. Haga clic en el ícono del Agente de IA en la parte superior del cuadro de diálogo para regresar a la configuración del nodo del Agente de IA.

5

Configura el subnodo de Memoria de Chat de MongoDB para habilitar el contexto de conversación persistente.

  1. Haz clic en el conector + junto a la etiqueta Memory en el nodo AI Agent.

  2. Desde el panel lateral, seleccione MongoDB Chat Memory.

  3. Haz clic en Select credential, luego selecciona tus credenciales de MongoDB.

  4. Use las configuraciones por defecto para el nodo de memoria de chat de MongoDB. Por defecto, n8n crea una colección llamada n8n_chat_histories en la base de datos especificada.

  5. Haz clic en Back to canvas en la esquina superior izquierda de tu pantalla. Se puede omitir la prueba de este nodo en esta fase. Haz clic en Save.

  6. Haz clic en el icono del agente de IA para volver a la configuración de nodos del agente de IA.

6

Configure el nodo MongoDB Atlas Vector Store para habilitar la recuperación de documentos.

  1. Haz clic en el conector + junto a la etiqueta Tool en el nodo AI Agent.

  2. En el panel de búsqueda, selecciona MongoDB Atlas Vector Store.

  3. Seleccione las credenciales de MongoDB que configuró y luego especifique los siguientes valores:

    Configuración
    Valor

    Operation Mode

    Retrieve Documents (As Tool for AI Agent)

    Description

    "Search through documents about movies to find relevant information"

    MongoDB Collection

    embedded_movies

    Embedding

    plot_embedding

    Metadata Field

    plot

    Vector Index Name

    vector_index

    Limit

    4

    Include Metadata

    Cambiar a Off

    IMPORTANTE:

    Si no activas esta configuración en Off, puede que el agente de IA no se ejecute, ya que los documentos podrían ser demasiado grandes para cargarse en la ventana de contexto.

    Rerank Results

    Cambiar a Off

7

Configura el modelo de incrustación para el Vector Almacenar de MongoDB Atlas:

  1. Haz clic en el conector + junto a la etiqueta Embedding en el nodo MongoDB Atlas Vector Store.

  2. Desde el panel lateral, seleccione Embeddings OpenAI.

  3. Selecciona tus credenciales de OpenAI, y luego especifica el modelo text-embedding-ada-002.

  4. Haz clic en Back to canvas en la esquina superior izquierda de la pantalla. Haz clic en Save.

8

Ahora que has configurado el nodo del agente de IA, puedes probar el flujo de trabajo completo. Después de enviar un mensaje, el flujo de trabajo se ejecuta en tiempo real en el canvas.

  1. Haz clic en el botón Open chat cerca de la parte inferior del lienzo.

  2. Pruebe la funcionalidad de la memoria ejecutando algunas indicaciones iniciales. Por ejemplo:

    Hi, my name is Mongo
    Hello Mongo! Nice to meet you. How can I help you today?
    What is my name?
    Your name is Mongo, as you mentioned when you introduced yourself earlier.
  3. Prueba la búsqueda vectorial y la funcionalidad RAG ejecutando el siguiente prompt.

    Recommend me a few movies about time travel
    Here are a few movies about time travel that you might enjoy:
    The Time Traveler's Wife - A romantic drama about a Chicago librarian with a gene that causes him to involuntarily time travel, leading to complications in his marriage.
    Timecop - An officer working for a security agency that regulates time travel must battle for his life against a corrupt politician tied to his past.
    We Are from the Future (My iz budushchego) - Four modern-day treasure seekers are unexpectedly transported into the midst of a World War II battle set in Russia.
    About Time - A young man discovers at the age of 21 that he can travel back in time. He attempts to improve his life, including finding love, but things don't turn out to be as simple as they seem.
    Let me know if you'd like any additional information about these films!
9
  1. Haz clic en el botón Save en la parte superior derecha de la ventana del editor.

  2. Dale a tu flujo de trabajo un nombre descriptivo. Por ejemplo, asígnele el nombre de "Agente de IA con MongoDB".

Puede volver a este flujo de trabajo en cualquier momento.

Volver

n8n

En esta página