Puedes integrar MongoDB con Langflow para añadir la recuperación de datos basada en MongoDB a tus agentes de IA desde una interfaz visual. Este tutorial crea un flujo que configura un agente para usar MongoDB. En este tutorial, realizarás las siguientes tareas:
Configure MongoDB como un almacén vectorial e ingiere una entrada de blog de MongoDB en él.
Crea un agente que utilice tu colección de MongoDB como herramienta de recuperación.
Sigue el flujo y formula una pregunta sobre el contenido de la entrada del blog.
Segundo plano
Langflow es un marco visual de código abierto para crear flujos de trabajo y agentes de IA. En lugar de escribir código, se crea un flujo arrastrando y conectando componentes en un lienzo. Cada componente realiza una tarea específica, como dividir texto o consultar un modelo de lenguaje.
Langflow proporciona un componente MongoDB Atlas que utiliza MongoDB Vector Search como almacén de vectores. Puedes conectar este componente a otros componentes de tu flujo para ingerir datos, realizar búsquedas de similitud o proporcionar a un agente una herramienta para consultar tu colección. El componente crea un índice de MongoDB Vector Search en tu colección la primera vez que realizas una búsqueda, si no existe un índice coincidente.
Acerca del flujo
En este tutorial, construirás el siguiente flujo:
URL → Split Text → ┐ ├── MongoDB Atlas → ┐ Embeddings → ┘ ├── Agent → Chat Output Chat Input → ┘
El flujo realiza las siguientes tareas:
El componente URL obtiene el contenido de una entrada de blog de MongoDB, que describe la versión 9.0 de MongoDB.
El componente Split Text divide ese contenido en fragmentos.
El componente MongoDB Atlas incrusta cada fragmento y lo escribe en su colección.
Cuando envías un mensaje relacionado con la entrada del blog de MongoDB 9.0, el componente Agent llama al componente MongoDB Atlas como una herramienta para buscar en tu colección fragmentos relevantes.
El agente utiliza los fragmentos recuperados para generar una respuesta, que devuelve el componente Chat Output.
Requisitos previos
Para completar este tutorial, debes tener los siguientes recursos:
Langflow está instalado en tu equipo. Para obtener más información, consulta la sección "Instalar Langflow" en la documentación de Langflow.
Uno de los siguientes tipos de clúster de MongoDB:
Un clúster de Atlas que ejecute la versión 6.0.11 de MongoDB, 7.0.2, o posterior. Asegúrese de que su dirección IP esté incluida en la lista de acceso de su proyecto Atlas.
Una implementación local de Atlas creada con Python y Docker. Instala
atlas-local-lib-py(pip install atlas-local-lib-py) para crear y gestionar implementaciones locales mediante programación. Para obtener más información, consulta el repositorio atlas-local-lib-py.Un clúster de MongoDB Community con Search y búsqueda vectorial instalados.
Clave API para un modelo de incrustación y un proveedor de modelo de lenguaje compatibles con Langflow, como OpenAI. Para obtener más información sobre los modelos compatibles, consulte Modelo de incrustación y Modelo de lenguaje en la documentación de Langflow.
Considerations
Al trabajar con Langflow y MongoDB, tenga en cuenta lo siguiente:
Para los usuarios de MongoDB Atlas, asegúrense de agregar la dirección IP de su host de Langflow a la lista de acceso IP de su proyecto. Para obtener más información, consulten Configurar entradas de la lista de acceso IP.
El componente Embedding es obligatorio y debe conectarse a la entrada Embedding del componente MongoDB Atlas. Si no conecta los componentes, el flujo fallará al intentar insertar sus documentos o consultas. Para obtener más información, consulte Integrar MongoDB con Langflow.
El componente MongoDB Atlas requiere un valor en el campo Quantization antes de poder crear un nuevo índice de búsqueda vectorial de MongoDB. Para obtener más información, consulte Índices de búsqueda.
Almacenar datos en MongoDB
En esta sección, creará un flujo que agrega datos de publicaciones de blog a una colección de MongoDB e indexa esos datos para la búsqueda vectorial.
Instale el componente MongoDB Atlas.
Tip
Si utilizas Langflow Desktop, puedes omitir este paso.
En la versión de Python, el componente MongoDB Atlas no está disponible por defecto. Para instalar este componente, ejecute el siguiente comando:
uv pip install "lfx-bundles[mongodb]"
Si utiliza Docker para ejecutar Langflow, use la imagen langflowai/langflow-all en lugar de langflowai/langflow. Para obtener más información, consulte Integrar MongoDB con Langflow.
Agregue un componente URL.
Agregue el componente URL a su lienzo desde la categoría Data Source. Establezca el parámetro URLs en la siguiente URL, que enlaza a una publicación de blog sobre MongoDB 9.0:
https://www.mongodb.com/company/blog/product-release-announcements/mongodb-9-0-this-is-what-a-database-should-be
Deje el parámetro Depth configurado en 1.00, su valor predeterminado.
Agregue un componente de texto dividido.
Para dividir los datos de la entrada del blog en fragmentos, siga los siguientes pasos:
Agrega el componente Split Text a tu lienzo desde la categoría Processing.
Conecte la salida Extracted Pages del componente URL a la salida Input del componente Split Text.
Deje los parámetros Chunk Overlap, Chunk Size y Separator con sus valores predeterminados.
Agregue un componente MongoDB Atlas.
Agregue el componente MongoDB Atlas a su lienzo desde la categoría MongoDB y conecte la salida Chunks del componente Split Text a la entrada Ingest Data del componente MongoDB Atlas.
Configure los siguientes parámetros en el componente MongoDB Atlas:
Parameter | Valor |
|---|---|
MongoDB Atlas Cluster URI | Su cadena de conexión de MongoDB. Para obtener información sobre cómo recuperar su cadena de conexión, consulte la sección Cadenas de conexión. |
Database Name | El nombre de su base de datos, como por ejemplo: |
Collection Name | El nombre de tu colección, como por ejemplo: |
Index Name | Su nombre de índice, como por ejemplo: |
Quantization | El tipo de datos que utiliza el índice para almacenar valores vectoriales, que puede ser |
Tip
Para configurar el parámetro Cuantización, haga clic en el botón Parámetros situado encima del componente MongoDB Atlas. A continuación, seleccione el botón Agregar junto al elemento Cuantización de la lista.
Agregue un componente de incrustaciones.
Para configurar las incrustaciones de texto de OpenAI, siga los siguientes pasos:
Agregue el componente OpenAI Embeddings de la categoría OpenAI.
Seleccione su modelo preferido en el menú desplegable Model.
Especifique su clave API en el parámetro API Key del componente.
Conecte el componente a la entrada Embedding del componente MongoDB Atlas.
Si utiliza un proveedor de incrustación diferente, añada el componente correspondiente a su flujo.
Construye la ruta de ingesta.
Seleccione el componente MongoDB Atlas y, a continuación, haga clic en el icono de reproducción para crear la ruta URL → Split Text → MongoDB Atlas. Esto inserta el contenido de la página, lo guarda en su colección y crea el índice de MongoDB Vector Search si aún no existe.
El índice debería tardar aproximadamente un minuto en compilarse. Mientras se compila, el índice está en un estado de sincronización inicial. Cuando termine de crearse, se pueden empezar a realizar las queries en los datos de la colección.
Compilar el agente
En esta sección, se agrega un agente que utiliza la colección de MongoDB como herramienta para responder preguntas sobre la página que se ha procesado.
Configura el modelo del agente.
Para configurar el modelo de lenguaje de su agente, siga los siguientes pasos:
En el componente Agent, seleccione Manage Model Providers del menú desplegable Language Model.
Si utilizas OpenAI, selecciona OpenAI de la lista Model providers e introduce tu clave API de OpenAI. A continuación, selecciona tu modelo de lenguaje de OpenAI de la lista Language Model.
Vuelva al componente Agent y seleccione el modelo de lenguaje que acaba de configurar en el menú desplegable Language Model.
Conectar MongoDB Atlas como herramienta.
Seleccione el componente MongoDB Atlas y, a continuación, habilite Tool Mode en su menú de encabezado.
Conecte la salida Toolset del componente MongoDB Atlas a la entrada Tools del componente Agent.
Su flujo ahora tiene la estructura descrita en el diagrama Acerca del flujo y se asemeja a la siguiente imagen:

Haz funcionar el flujo.
Haz clic en Playground en la esquina superior derecha del lienzo. Luego, haz una pregunta sobre la entrada del blog, como "Which new queryable encryption features does MongoDB 9.0 introduce?". El agente decide si llamar a la herramienta MongoDB Atlas para buscar en tu colección y luego usa los fragmentos recuperados para generar su respuesta.
Importante
Evite volver a ingerir datos.
Después de conectar el componente MongoDB Atlas al componente Agente, Langflow vuelve a ejecutar toda la ruta de ingesta cada vez que envías un mensaje.
En un flujo de producción, congele el componente MongoDB Atlas después de crear la ruta de ingesta para evitar que se vuelva a ejecutar. Para obtener más información, consulte la sección «Congelar un componente» en la documentación de Langflow.
Próximos pasos
Para obtener más información sobre los parámetros del componente MongoDB Atlas y el índice de búsqueda vectorial de MongoDB que crea, consulte Integrar MongoDB con Langflow.