Docs Menu
Docs Home
/ /

Comience con la integración de la base de conocimientos de Amazon Bedrock

Nota

Atlas está actualmente disponible como base de conocimientos en Regiones deAWS ubicadas únicamente en Estados Unidos.

Puede utilizar MongoDB Atlas como base de conocimientospara que Amazon Bedrock cree aplicaciones de IA generativas, implemente generación aumentada por recuperación (RAG) y cree agentes.

La integración de Amazon Bedrock Knowledge Base con Atlas permite los siguientes casos de uso:

  • Utilice modelos básicos con MongoDB Vector Search para crear aplicaciones de IA e implementar RAG. Para comenzar,consulte "Comenzar".

  • Habilite la búsqueda híbrida con MongoDB Vector Search y MongoDB Search para su base de conocimientos. Para obtener más información, consulte Búsqueda híbrida con Amazon Bedrock y Atlas.

Este tutorial muestra cómo empezar a usar MongoDB Vector Search con Amazon Bedrock. En concreto, se realizan las siguientes acciones:

  1. Carga datos personalizados en un bucket de Amazon S3.

  2. Opcionalmente, configure un servicio de punto final mediante AWS PrivateLink.

  3. Cree un índice de búsqueda vectorial MongoDB en sus datos.

  4. Crear una base de conocimientos para almacenar datos en Atlas.

  5. Cree un agente que utilice MongoDB Vector Search para implementar RAG.

Amazon Bedrock es un servicio totalmente gestionado para crear aplicaciones de IA generativa. Permite aprovechar los modelos de base (FM) de diversas empresas de IA como una única API.

Puede usar MongoDB Vector Search como base de conocimiento para Amazon Bedrock, con el fin de almacenar datos personalizados en Atlas y crear un agente para implementar RAG y responder preguntas sobre sus datos. Para obtener más información sobre RAG, consulte Recuperación-Generación Aumentada (RAG) con MongoDB.

Para completar este tutorial, debes tener lo siguiente:

Si aún no tiene un bucket de Amazon S3 que contenga datos de texto, cree un nuevo bucket y cargue el siguiente PDF de acceso público sobre las mejores prácticas de MongoDB:

1
  1. Vaya a la Guía de mejores prácticas para MongoDB.

  2. Haga clic en cualquiera de los dos Read Whitepaper o Email me the PDF para acceder al PDF.

  3. Descargue y guarde el PDF localmente.

2
  1. Sigue los pasos para crear un3 bucket S. Asegúrate de usar un descriptivo.Bucket Name

  2. Sigue los pasos para subir un archivo a tu Bucket. Selecciona el archivo que contiene el PDF que acabas de descargar.

De forma predeterminada, Amazon Bedrock se conecta a su base de conocimientos a través de la red pública de internet. Para mayor seguridad, MongoDB Vector Search permite conectarse a su base de conocimientos a través de una red virtual mediante un servicio de punto de enlace de AWS PrivateLink.

De manera opcional, complete los siguientes pasos para habilitar un servicio de punto final que se conecte a un punto final privado de AWS PrivateLink para su clúster Atlas:

1

Siga los pasos para configurar un punto de conexión privado de AWS PrivateLink para su clúster Atlas. Asegúrese de usar un descriptivo VPC ID para identificar su punto de conexión privado.

Para obtener más información, consulte Más información sobre los puntos finales privados en Atlas.

2

MongoDB y sus socios proporcionan un kit de desarrollo en la nube (CDK) que puede utilizar para configurar un servicio de punto final respaldado por un balanceador de carga de red que reenvía tráfico a su punto final privado.

Siga los pasos especificados en el repositorio GitHub del CDK para preparar y ejecutar el script del CDK.

En esta sección, configurará Atlas como una base de datos vectorial, también llamada almacén vectorial, creando un índice de búsqueda vectorial MongoDB en su colección.

Para crear un índice de búsqueda vectorial de MongoDB, debe tener Project Data Access Admin o acceso superior al proyecto Atlas.

1
  1. Si aún no aparece, se debe seleccionar la organización que contiene el proyecto en el menú Organizations de la barra de navegación.

  2. Si aún no se muestra, seleccione su proyecto en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Data Explorer en la sección Database.

    El Data Explorer se muestra.

2
  1. Haga clic en el botón + Create Database.

  2. Para el Database name, introduce bedrock_db.

  3. Para el Collection name, introduce test.

  4. Haz clic en Create para crear la base de datos y su primera colección.

3

Puedes ir a la página de búsqueda de MongoDB desde la opción Search & Vector Search o desde el Data Explorer.

4
5

Realiza las siguientes selecciones en la página y luego haz clic en Next.

Search Type

Seleccione el tipo de índice Vector Search.

Index Name and Data Source

Especifique la siguiente información:

  • Index Name: vector_index

  • Database and Collection:

    • bedrock_db database

    • test Colección

Configuration Method

For a guided experience, select Visual Editor.

To edit the raw index definition, select JSON Editor.

IMPORTANTE:

El índice de MongoDB Search se llama default por defecto. Si se mantiene este nombre, el índice será el índice de búsqueda por defecto para cualquier query de MongoDB Search que no especifique una opción de index diferente en sus operadores. Si se crean varios índices, recomendamos mantener una convención de nomenclatura coherente y descriptiva en todos los índices.

6

Esta definición de índice de tipo vectorSearch indexa los siguientes campos:

  • embedding campo como tipo de vector. El embedding campo contiene las incrustaciones vectoriales creadas con el modelo de incrustación especificado al configurar la base de conocimiento. La definición del índice especifica las 1024 dimensiones del vector y mide la similitud cosine mediante.

  • bedrock_metadataLos campos bedrock_text_chunky se utilizan x-amz-bedrock-kb-document-page-number como tipo de filtro para prefiltrar los datos. También deberá especificar estos campos en Amazon Bedrock al configurar la base de conocimientos.

Nota

Si creó previamente un índice con el campo de filtro page_number, debe actualizar su definición para usar el nuevo nombre de campo de filtro x-amz-bedrock-kb-document-page-number. Amazon Bedrock ha actualizado el nombre del campo y los índices que usan el nombre antiguo ya no funcionan correctamente con las bases de conocimiento de Amazon Bedrock.

Especifique embedding como campo a indexar y especifique 1024 dimensiones.

Para configurar el índice, haga lo siguiente:

  1. Selecciona Cosine del menú desplegable Similarity Method.

  2. En la sección Filter Field, especifique los campos bedrock_metadata, bedrock_text_chunk y x-amz-bedrock-kb-document-page-number para filtrar los datos.

Pegue la siguiente definición de índice en el editor JSON:

1{
2 "fields": [
3 {
4 "numDimensions": 1024,
5 "path": "embedding",
6 "similarity": "cosine",
7 "type": "vector"
8 },
9 {
10 "path": "bedrock_metadata",
11 "type": "filter"
12 },
13 {
14 "path": "bedrock_text_chunk",
15 "type": "filter"
16 },
17 {
18 "path": "x-amz-bedrock-kb-document-page-number",
19 "type": "filter"
20 }
21 ]
22}
7
8

Atlas muestra una ventana modal para informar que se está creando el índice.

9
10

El índice recién creado aparece en la pestaña Atlas Search. Mientras se construye el índice, el campo Status muestra Build in Progress. Cuando se termina de construir el índice, el campo Status muestra Active.

Nota

Las colecciones más grandes tardan más en indexarse. Se recibirá una notificación por correo electrónico cuando el índice haya terminado de construirse.

En esta sección, creará una base de conocimientos para cargar datos personalizados en su tienda de vectores.

1
  1. Inicie sesión en la consola de AWS.

  2. En la esquina superior izquierda, haga clic en el menú desplegable Services.

  3. Haga clic en Machine Learning y luego seleccione Amazon Bedrock.

2

Amazon Bedrock no otorga acceso a FMs automáticamente. Si aún no lo has hecho, sigue los pasos para agregar acceso al modelo para Titan Embeddings G1 - Texto y Anthropic Claude V2.1 modelos.

3
  1. En la navegación izquierda de la consola de Amazon Bedrock, haga clic en Knowledge Bases.

  2. Haga clic en Create y luego seleccione Knowledge base with vector store.

  3. Especifique mongodb-atlas-knowledge-base como Knowledge Base name.

  4. Haga clic en Next.

De forma predeterminada, Amazon Bedrock crea una nueva función de IAM para acceder a la base de conocimientos.

4
  1. Especifique un nombre para la fuente de datos utilizada por la base de conocimiento.

  2. Ingrese el URI del contenedor S3 que contiene su fuente de datos. O bien, haga clic Browse S3 en y busque el contenedor S3 que contiene su fuente de datos en la lista.

  3. Haga clic en Next.

    Amazon Bedrock muestra modelos de integración disponibles que puedes usar para convertir los datos de texto de tu fuente de datos en integraciones vectoriales.

  4. Seleccione el modelo Titan Embeddings G1 - Text.

5
  1. En la sección Vector database, seleccione Use an existing vector store.

  2. Seleccione MongoDB Atlas y configure las siguientes opciones:

    Captura de pantalla de la sección de configuración de la tienda vectorial de Amazon Bedrock.
    haga clic para ampliar
    • HostnamePara, introduzca la URL de su clúster Atlas, ubicada en su cadena de conexión. El nombre de host tiene el siguiente formato:

      <clusterName>.mongodb.net
    • Para el Database name, introduce bedrock_db.

    • Para el Collection name, introduce test.

    • Credentials secret ARNPara, ingrese el ARN del secreto que contiene las credenciales de su clúster Atlas. Para obtener más información, consulte los conceptos de AWS Secrets Manager.

  3. En la sección Metadata field mapping, configura las siguientes opciones para determinar el MongoDB búsqueda vectorial índice y los nombres de campo que Atlas utiliza para incorporar y almacenar tu fuente de datos:

    Captura de pantalla de la sección de configuración de mapeo de campos del almacén de vectores.
    haga clic para ampliar
    • Para el Vector search index name, introduce vector_index.

    • Para el Vector embedding field path, introduce embedding.

    • Para el Text field path, introduce bedrock_text_chunk.

    • Para el Metadata field path, introduce bedrock_metadata.

    Nota

    Opcionalmente, puede especificar el Text search index name campo para configurar la búsqueda híbrida. Para obtener más información, consulte Búsqueda híbrida con Amazon Bedrock y Atlas.

  4. Si configuró un servicio de punto final, ingrese PrivateLink Service Name su.

  5. Haga clic en Next.

6

Después de revisar los detalles de su base de conocimientos, haga clic en Create knowledge base para finalizar su creación.

7

Después de que Amazon Bedrock cree la base de conocimientos, le solicitará que sincronice sus datos. En la sección, seleccione su origen de datos Data source y haga clic en Sync para sincronizar los datos del bucket S3 y cargarlos en Atlas.

Cuando se complete la sincronización, si está usando Atlas, puede verificar sus incrustaciones vectoriales navegando al espacio de nombres en bedrock_db.test la interfaz de usuario de Atlas.

En esta sección,implementará un agente que utiliza MongoDB Vector Search para implementar RAG y responder preguntas sobre sus datos. Al solicitarle ayuda a este agente, este realiza lo siguiente:

  1. Se conecta a su base de conocimientos para acceder a los datos personalizados almacenados en Atlas.

  2. Utiliza MongoDB Vector Search para recuperar documentos relevantes de su almacén de vectores según las indicaciones.

  3. Aprovecha un modelo de chat de IA para generar una respuesta basada en el contexto basada en estos documentos.

Complete los siguientes pasos para crear y probar el agente RAG:

1
  1. En la navegación izquierda de Amazon Bedrock, haga clic en Agents.

  2. Haga clic en Create Agent.

  3. Especifique mongodb-rag-agent como Name y haga clic en Create.

2

De forma predeterminada, Amazon Bedrock crea un nuevo rol de IAM para acceder al agente. En la Agent details sección, especifique lo siguiente:

  1. En los menús desplegables, selecciona Anthropic y Claude V2.1 como proveedor y modelo de IA utilizado para responder preguntas sobre tus datos.

    Nota

    Amazon Bedrock no otorga acceso a los FM automáticamente. Si aún no lo ha hecho, siga los pasos para agregar acceso al2 1 modelo Anthropic Claude V..

  2. Proporcionar instrucciones al agente para que sepa cómo completar la tarea.

    Por ejemplo, si está utilizando los datos de muestra, pegue las siguientes instrucciones:

    You are a friendly AI chatbot that answers questions about working with MongoDB.
  3. Haga clic en Save.

3

Para conectar el agente a la base de conocimiento que usted creó:

  1. En la sección Knowledge Bases, haga clic en Add.

  2. Selecciona mongodb-atlas-knowledge-base del menú desplegable.

  3. Describe la base de conocimientos para determinar cómo debe interactuar el agente con la fuente de datos.

    Si está utilizando los datos de muestra, pegue las siguientes instrucciones:

    This knowledge base describes best practices when working with MongoDB.
  4. Haga clic en Add y, a continuación, haga clic en Save.

4
  1. Haga clic en el botón Prepare.

  2. Haga clic en Test. Amazon Bedrock mostrará una ventana de prueba a la derecha de los detalles de su agente, si aún no está visible.

  3. En la ventana de pruebas, introduzca una solicitud. El agente solicita al modelo, utiliza MongoDB Vector Search para recuperar los documentos relevantes y genera una respuesta basada en ellos.

    Si utilizó los datos de muestra, introduzca la siguiente solicitud. La respuesta generada puede variar.

    What's the best practice to reduce network utilization with MongoDB?
    The best practice to reduce network utilization with MongoDB is
    to issue updates only on fields that have changed rather than
    retrieving the entire documents in your application, updating
    fields, and then saving the document back to the database. [1]

    Tip

    Haga clic en la anotación en la respuesta del agente para ver el fragmento de texto que recuperó MongoDB Vector Search.

5

Para solucionar problemas, consulte Solución de problemas de integración de la base de conocimientos de Amazon Bedrock.

Volver

Mastra

En esta página