Este tutorial demuestra cómo implementar la generación de recuperación aumentada (RAG) localmente, sin la necesidad de Claves API o créditos. Para obtener más información sobre RAG, consulta generación de recuperación aumentada (RAG) con MongoDB.
En concreto, realizas las siguientes acciones:
Crea una implementación local de Atlas.
Configura el entorno.
Utiliza un modelo de embedding local para generar embebidos vectoriales.
Cree un índice de Búsqueda Vectorial de MongoDB en sus datos.
Utilice un LLM local para responder preguntas sobre sus datos.
En este tutorial, creará una implementación local de Atlas utilizando el Interfaz de línea de comandos de Atlas. La interfaz de línea de comandos de Atlas permite interactuar con Atlas desde la terminal para diversas tareas, como la creación de implementaciones locales. Para obtener más información, consulte la sección «Administrar implementaciones locales y en la nube desde la interfaz de línea de comandos de Atlas».
También puedes utilizar un clúster de Community o empresarial de MongoDB con Búsqueda y búsqueda vectorial instalado.
Nota
Las implementaciones locales de Atlas están destinadas únicamente a pruebas. Para entornos de producción, implemente un clúster.
Requisitos previos
Además de los requisitos previos comunes, este tutorial requiere lo siguiente:
Crear una implementación local
En esta sección, creará una implementación local de Atlas cargada con el conjunto de datos de ejemplo de anuncios de AirBnB para usarlo como base de datos vectorial.
Nota
Si ya tienes una implementación local existente o un clúster de MongoDB Community o Enterprise con Búsqueda y Búsqueda Vectorial instalado, con el sample_airbnb.listingsAndReviews datos de muestra cargados, puede omitir este paso.
Crea una implementación local usando el Atlas CLI.
Ejecute atlas deployments setup y siga las indicaciones para crear una implementación local.
Para obtener instrucciones detalladas, consulte Crear una implementación local de Atlas.
Cargue los datos de muestra en su implementación.
Ejecute el siguiente comando en su terminal para descargar los datos de muestra:
curl https://atlas-education.s3.amazonaws.com/sampledata.archive -o sampledata.archive Ejecute el siguiente comando para cargar los datos en su implementación, reemplazando
<port-number>con el puerto donde está alojando la implementación:mongorestore --archive=sampledata.archive --port=<port-number> Nota
Debe instalar las herramientas de base de datos de línea de comandos de MongoDB para acceder al comando
mongorestore.
Configurar el entorno
Generar incrustaciones con un modelo local
En esta sección, cargará un modelo de incrustación localmente y generará incrustaciones vectoriales utilizando datos de la base de datos sample_airbnb, que contiene una colección listingsAndReviews llamada.
Este código puede tardar varios minutos en ejecutarse. Cuando termine, podrás ver las incrustaciones vectoriales conectándote a la implementación local desde mongosh o a tu aplicación mediante tu cadena de conexión de la implementación. Luego puedes ejecutar operaciones de lectura en la colección sample_airbnb.listingsAndReviews.
Tip
Es posible convertir los embebidos de los datos de muestra en vectores BSON para el almacenamiento eficiente y la ingestión de vectores en Atlas. Para obtener más información, consulta cómo convertir incrustaciones nativas a vectores BSON.
Cree el índice de búsqueda vectorial de MongoDB
Para habilitar la búsqueda vectorial en la colección sample_airbnb.listingsAndReviews, cree un índice de Búsqueda Vectorial en MongoDB.