IA generativa Y los grandes modelos de idiomas (LLM) están revolucionando a las organizaciones en diversos sectores para mejorar la experiencia del cliente, lo que tradicionalmente llevaría abriles progresar. Cada estructura tiene datos almacenados en tiendas de datos, ya sea en premisas o en proveedores de nubes.
Puede adoptar la IA generativa y mejorar la experiencia del cliente al convertir sus datos existentes en un índice sobre el cual la IA generativa puede agenciárselas. Cuando hace una pregunta a un LLM de código hendido, obtiene información pública apto como respuesta. Aunque esto es útil, la IA generativa puede ayudarlo a comprender sus datos cercano con el contexto adicional de LLMS. Esto se logra a través de la procreación de recuperación aumentada (RAG).
Rag recupera datos de una almohadilla de conocimiento preexistente (sus datos), lo combina con el conocimiento de la LLM y genera respuestas con un habla más humano. Sin secuestro, para que la IA generativa comprenda sus datos, se requiere cierta cantidad de preparación de datos, lo que implica una gran curva de formación.
Amazon Aurora es una almohadilla de datos relacional compatible con MySQL y PostgreSQL construida para la cúmulo. Aurora combina el rendimiento y la disponibilidad de las bases de datos empresariales tradicionales con la simplicidad y la rentabilidad de las bases de datos de código hendido.
En esta publicación, lo guiamos a través de cómo convertir sus datos de aurora existentes en un índice sin condición de preparación de datos para Amazon Kendra Para realizar la búsqueda de datos e implementar el trapo que combine sus datos cercano con el conocimiento de LLM para producir respuestas precisas.
Descripción caudillo de la decisión
En esta decisión, use sus datos existentes como fuente de datos (Aurora), cree un servicio de búsqueda inteligente conectando y sincronizando su fuente de datos a Amazon Kendra Search y realice una búsqueda generativa de datos de IA, que utiliza RAG para producir respuestas precisas combinando su datos cercano con el conocimiento de la LLM. Para esta publicación, usamos el Claude de Anthrope en Roca causa de Amazon como nuestro LLM.
Los siguientes son los pasos de detención nivel para la decisión:
El futuro diagrama ilustra la edificio de la decisión.
Requisitos previos
Para seguir esta publicación, se requieren los siguientes requisitos previos:
Crea un clúster de Aurora PostgreSQL
Ejecute los siguientes comandos AWS CLI para crear un clúster V2 sin servidor Aurora PostgreSQL:
La futuro captura de pantalla muestra la instancia creada.
Ingerir datos a Aurora PostgreSQL-Compatible
Conéctese a la instancia de Aurora usando la aparejo PGADmin. Referirse a Conectarse a una instancia de DB que ejecuta el motor de la almohadilla de datos PostgreSQL Para más información. Para ingerir sus datos, complete los siguientes pasos:
- Ejecute las siguientes declaraciones de PostgreSQL en PGADmin para crear la almohadilla de datos, el esquema y la tabla:
- En su conexión PostgreRora de Pgadmin Aurora, navegue a Bases de datos, genai, Esquema, empleados, Mesas.
- Elija (haga clic con el pimpollo derecho) Mesas y nominar Utensilio PSQL Para rajar una conexión de cliente PSQL.
- Coloque el archivo CSV en su ubicación PGADmin y ejecute el futuro comando:
- Ejecute la futuro consulta de PSQL para confirmar el número de registros copiados:
Crear un índice de Amazon Kendra
El Índice de Amazon Kendra mantiene el contenido de sus documentos y está estructurado de una forma de hacer que los documentos sean buscando. Tiene tres tipos de índice:
- Índice generativo de impresión empresarial de IA – Ofrece la decano precisión para la operación de API de recuperación y para los casos de uso de trapo (recomendado)
- Índice de impresión empresarial -Proporciona capacidades de búsqueda semántica y ofrece un servicio de adhesión disponibilidad que es adecuado para cargas de trabajo de producción
- Índice de impresión de desarrollador – Proporciona capacidades de búsqueda semántica para que pueda probar sus casos de uso
Para crear un índice de Amazon Kendra, complete los siguientes pasos:
- En la consola de Amazon Kendra, elija Índices En el panel de navegación.
- Designar Crear un índice.
- En el Especificar detalles del índice Página, proporcione la futuro información:
- Para Nombre del índiceingrese un nombre (por ejemplo,
genai-kendra-index
). - Para Papel de iamnominar Crear un nuevo rol (recomendado).
- Para Nombre de rolingrese un nombre de rol de IAM (por ejemplo,
genai-kendra
). Su nombre de rol tendrá prefijoAmazonKendra-
(Por ejemplo,- AmazonKendra-us-east-2-genai-kendra
).
- Para Nombre del índiceingrese un nombre (por ejemplo,
- Designar Próximo.
- En el Adicionar capacidad adicional Página, seleccione Estampado de desarrollador (para esta demostración) y elija Próximo.
- En el Configurar el control de paso al sucesor Página, proporcione la futuro información:
- Bajo Configuración de control de pasoaspirar No.
- Bajo Expansión del camarilla de usuariosaspirar Ningún.
- Designar Próximo.
- En el Revisar y crear página, confirmar los detalles y nominar Crear.
Puede tomar algún tiempo para que el índice cree. Verifique la letanía de índices para ver el progreso de la creación de su índice. Cuando el estado del índice es ACTIVOsu índice está diligente para usar.
Configurar el conector PostgreSQL de Amazon Kendra Aurora
Complete los siguientes pasos para configurar su conector de fuente de datos:
- En la consola de Amazon Kendra, elija Fuentes de datos En el panel de navegación.
- Designar Adicionar fuente de datos.
- Designar Conector de postgresql aurora Como tipo de fuente de datos.
- En el Especificar detalles de la fuente de datos Página, proporcione la futuro información:
- En el Detallar paso y seguridad página, debajo Fuenteproporcione la futuro información:
- Bajo Autenticaciónsi ya tiene credenciales almacenadas en AWS Secrets Managerelige en el menú desplegable de lo contrario, elija Crear y añadir un nuevo secreto.
- En el Crear un secreto de AWS Secrets Manager ventana emergente, proporcione la futuro información:
- Para Nombre secretoingrese un nombre (por ejemplo,
AmazonKendra-Aurora-PostgreSQL-genai-kendra-secret
). - Para Nombre de sucesor almohadilla de datosingrese el nombre del sucesor de su almohadilla de datos.
- Para Contraseña¸ Ingrese la contraseña del sucesor.
- Para Nombre secretoingrese un nombre (por ejemplo,
- Designar Adicionar secreto.
- Bajo Configurar VPC y camarilla de seguridadproporcione la futuro información:
- Para Montón privada supuestoelija su cúmulo privada supuesto (VPC).
- Para Subredelija su subred.
- Para Grupos de seguridad de VPCelija el camarilla de seguridad VPC para permitir el paso a su fuente de datos.
- Bajo Papel de iam¸ Si tiene un rol existente, elija en el menú desplegable. De lo contrario, elija Crear un nuevo rol.
- En el Configurar configuraciones de sincronización página, debajo Inteligencia de sincronizaciónproporcione la futuro información:
- Para Consulta SQLingrese la consulta SQL y los títulos de la columna de la futuro forma:
select * from employees.amazon_review
. - Para Secreto principalingrese la columna de esencia principal (
pk
). - Para Títuloingrese la columna de título que proporciona el nombre del título del documento en el interior de la tabla de su almohadilla de datos (
reviews_title
). - Para Cuerpoingrese a la columna del cuerpo en la que ocurrirá su búsqueda de Amazon Kendra (
reviews_text
).
- Para Consulta SQLingrese la consulta SQL y los títulos de la columna de la futuro forma:
- Bajo Nodo de sincronizaciónaspirar Sincronización completa Para convertir los datos completos de la tabla en un índice de búsqueda.
A posteriori de que la sincronización se complete con éxito, su índice de Amazon Kendra contendrá los datos de la tabla Aurora PostgreSQL especificada. Luego puede usar este índice para aplicaciones inteligentes de búsqueda y trapo.
- Bajo Horario de ejecución de sincronizaciónnominar Ejecutar.
- Designar Próximo.
- En el Establecer mapeos de campo página, deje la configuración predeterminada y elija Próximo.
- Revise su configuración y elija Adicionar fuente de datos.
Su fuente de datos aparecerá en el Fuentes de datos página posteriormente de que la fuente de datos se haya creado con éxito.
Invocar la aplicación RAG
La sincronización del índice de Amazon Kendra puede tolerar minutos a horas dependiendo del bulto de sus datos. Cuando la sincronización se completa sin error, está diligente para desarrollar su decisión RAG en su IDE preferido. Complete los siguientes pasos:
- Configure sus credenciales de AWS para permitir que Boto3 interactúe con los servicios de AWS. Puedes hacer esto configurando el
AWS_ACCESS_KEY_ID
yAWS_SECRET_ACCESS_KEY
Variables de entorno o utilizando el~/.aws/credentials
archivo: - Importar langchain y los componentes necesarios:
- Cree una instancia del LLM (Claude de Anthrope):
- Cree su plantilla de aviso, que proporciona instrucciones para el LLM:
- Inicializar el
KendraRetriever
con su ID de índice de Amazon Kendra reemplazando elKendra_index_id
que creaste anteriormente y el cliente de Amazon Kendra: - Combine Claude de Anthrope y el Amazon Kendra Retriever en una condena de recuperación:
- Invoca la condena con su propia consulta:
Aniquilar
Para evitar incurrir en cargos futuros, elimine los fortuna que creó como parte de esta publicación:
Conclusión
En esta publicación, discutimos cómo convertir sus datos de Aurora existentes en un índice de Amazon Kendra e implementar una decisión basada en RAG para la búsqueda de datos. Esta decisión reduce drásticamente la condición de preparación de datos para la búsqueda de Amazon Kendra. Todavía aumenta la velocidad del incremento generativo de aplicaciones de IA al compendiar la curva de formación detrás de la preparación de datos.
Pruebe la decisión, y si tiene algún comentario o pregunta, déjelos en la sección de comentarios.
Sobre los autores
Aravind hariharaputran es asesor de datos del equipo de servicios profesionales en Amazon Web Services. Le apasiona datos y AIML en caudillo con una amplia experiencia en la mandato de tecnologías de bases de datos. Ayuda a los clientes a modificar la almohadilla de datos y las aplicaciones heredadas en plataformas de datos modernas y aplicaciones generativas de IA. Le gusta acaecer tiempo con la tribu y brincar al cricket.
Ivan Cui Es un líder de ciencia de datos con AWS Professional Services, donde ayuda a los clientes a construir e implementar soluciones utilizando ML y IA generativa en AWS. Ha trabajado con clientes en diversas industrias, incluidos software, finanzas, farmacéutica, atención médica, IoT y entretenimiento y medios de comunicación. En su tiempo emancipado, le gusta repasar, acaecer tiempo con su tribu y recorrer.