Se utiliza AWS CloudFormation para configurar la inferencia remota para la búsqueda semántica - OpenSearch Servicio Amazon

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Se utiliza AWS CloudFormation para configurar la inferencia remota para la búsqueda semántica

A partir de OpenSearch la versión 2.9, puede utilizar la inferencia remota con la búsqueda semántica para alojar sus propios modelos de aprendizaje automático (ML). La inferencia remota utiliza el complemento ML Commons para permitirle alojar sus inferencias de modelos de forma remota en servicios de aprendizaje automático, como Amazon SageMaker AI Amazon BedRock, y conectarlas a Amazon OpenSearch Service con conectores de aprendizaje automático.

Para facilitar la configuración de la inferencia remota, Amazon OpenSearch Service proporciona una AWS CloudFormationplantilla en la consola. CloudFormation es una Servicio de AWS que permite modelar, aprovisionar AWS y gestionar recursos de terceros al tratar la infraestructura como código.

La OpenSearch CloudFormation plantilla automatiza el proceso de aprovisionamiento de modelos, de modo que puede crear fácilmente un modelo en su dominio de OpenSearch servicio y, a continuación, utilizar el ID del modelo para ingerir datos y ejecutar consultas de búsqueda neuronal.

Si utiliza codificadores neuronales dispersos con la versión 2.12 y posteriores del OpenSearch Servicio, le recomendamos que utilice el modelo de tokenizador de forma local en lugar de implementarlo de forma remota. Para obtener más información, consulte los modelos de codificación dispersa en la documentación. OpenSearch

Requisitos previos

Para usar una CloudFormation plantilla con OpenSearch Service, complete los siguientes requisitos previos.

Configure un dominio de OpenSearch servicio

Antes de poder usar una CloudFormation plantilla, debes configurar un dominio de Amazon OpenSearch Service con la versión 2.9 o posterior y un control de acceso detallado activado. Crea un rol OpenSearch de backend del servicio para dar permiso al plugin ML Commons para que cree tu conector por ti.

La CloudFormation plantilla crea una función de IAM de Lambda para usted con el nombre predeterminadoLambdaInvokeOpenSearchMLCommonsRole, que puede anular si desea elegir un nombre diferente. Una vez que la plantilla cree este rol de IAM, debe conceder permiso a la función Lambda para llamar a OpenSearch su dominio de servicio. Para ello, asigne la función nombrada ml_full_access a su función de backend del OpenSearch servicio siguiendo los siguientes pasos:

  1. Navega hasta el complemento OpenSearch Dashboards de tu dominio de OpenSearch servicio. Puedes encontrar el punto de conexión de Dashboards en el panel de control de tu dominio, en la consola de OpenSearch servicio.

  2. En el menú principal, seleccione Seguridad, Roles y seleccione el rol ml_full_access.

  3. Seleccione Usuarios asignados, Administrar mapeo.

  4. En Roles de backend, agregue el ARN del rol de Lambda que necesita permiso para llamar a su dominio.

    arn:aws:iam::account-id:role/role-name
  5. Seleccione Asignar y confirme que el usuario o el rol aparecen en Usuarios asignados.

Una vez que haya asignado la función, vaya a la configuración de seguridad de su dominio y añada la función Lambda IAM a OpenSearch su política de acceso al servicio.

Habilite los permisos en su Cuenta de AWS

Cuenta de AWS Debe tener permiso para acceder CloudFormation a Lambda, junto con lo que Servicio de AWS elija para su plantilla, ya sea SageMaker Runtime o Amazon. BedRock

Si utiliza Amazon Bedrock, también debe registrar su modelo. Consulte Acceso al modelo en la Guía del usuario de Amazon Bedrock para registrar su modelo.

Si utiliza su propio bucket de Amazon S3 para proporcionar artefactos modelo, debe añadir la función de CloudFormation IAM a su política de acceso a S3. Para más información, consulta Adición y eliminación de permisos de identidad de IAM en la Guía del usuario de IAM.

Amazon SageMaker AI plantillas

CloudFormation Las plantillas de Amazon SageMaker AI definen varios AWS recursos para configurar el complemento neuronal y la búsqueda semántica por ti.

En primer lugar, usa la SageMaker plantilla Integración con modelos de incrustación de texto a través de Amazon para implementar un modelo de incrustación de texto en SageMaker Runtime como servidor. Si no proporciona un punto de enlace de modelo, CloudFormation crea un rol de IAM que permite a SageMaker Runtime descargar artefactos de modelos de Amazon S3 e implementarlos en el servidor. Si proporciona un punto final, CloudFormation crea un rol de IAM que permite a la función Lambda acceder al dominio OpenSearch del servicio o, si el rol ya existe, actualiza y reutiliza el rol. El punto de conexión sirve al modelo remoto que se utiliza para el conector de ML con el complemento ML Commons.

A continuación, utilice la plantilla Integración con codificadores dispersos a través de Amazon SageMaker para crear una función de Lambda con la que el dominio configure conectores de inferencia remota. Una vez creado el conector en OpenSearch Service, la inferencia remota puede ejecutar una búsqueda semántica mediante el modelo remoto en tiempo de ejecución. SageMaker La plantilla le devuelve el ID del modelo de su dominio para que pueda empezar la búsqueda.

Para usar las CloudFormation plantillas de Amazon SageMaker AI
  1. Abre la consola OpenSearch de Amazon Service en https://console.aws.amazon.com/aos/casa.

  2. En el panel de navegación izquierdo, seleccione Integraciones.

  3. En cada una de las plantillas de Amazon SageMaker AI, selecciona Configurar dominio y Configurar dominio público.

  4. Siga las instrucciones de la CloudFormation consola para aprovisionar la pila y configurar un modelo.

nota

OpenSearch El servicio también proporciona una plantilla independiente para configurar el dominio de VPC. Si usa esta plantilla, debe proporcionar el ID de VPC para la función de Lambda.

Plantillas de Amazon Bedrock

Al igual que las CloudFormation plantillas Amazon SageMaker AI, la CloudFormation plantilla Amazon Bedrock proporciona los AWS recursos necesarios para crear conectores entre OpenSearch Service y Amazon Bedrock.

En primer lugar, la plantilla crea una función de IAM que permite a la futura función de Lambda acceder a OpenSearch su dominio de servicio. A continuación, la plantilla crea la función de Lambda, que hace que el dominio cree un conector mediante el complemento ML Commons. Una vez que OpenSearch Service crea el conector, finaliza la configuración de la inferencia remota y puede ejecutar búsquedas semánticas mediante las operaciones de la API de Amazon Bedrock.

Tenga en cuenta que, dado que Amazon Bedrock aloja sus propios modelos de aprendizaje automático, no necesita implementar un modelo en SageMaker Runtime. En su lugar, la plantilla utiliza un punto de conexión predeterminado para Amazon Bedrock y omite los pasos de aprovisionamiento del punto de conexión.

Para usar la plantilla Amazon Bedrock CloudFormation
  1. Abre la consola OpenSearch de Amazon Service en https://console.aws.amazon.com/aos/casa.

  2. En el panel de navegación izquierdo, seleccione Integraciones.

  3. En Integrar con el modelo de Amazon Titan Text Embeddings a través de Amazon Bedrock, elija Configurar dominio, Configurar dominio público.

  4. Siga las instrucciones para configurar el modelo.

nota

OpenSearch El servicio también proporciona una plantilla independiente para configurar el dominio de VPC. Si usa esta plantilla, debe proporcionar el ID de VPC para la función de Lambda.

Además, OpenSearch Service proporciona las siguientes plantillas de Amazon Bedrock para conectarse al modelo Cohere y al modelo de incrustaciones multimodales Amazon Titan:

  • Integration with Cohere Embed through Amazon Bedrock

  • Integrate with Amazon Bedrock Titan Multi-modal