Qa con LLM y RAG (generación de recuperación aumentada)
Este proyecto es una aplicación de respuesta a preguntas con modelos de idiomas grandes (LLMS) y Amazon Aurora PostgreSQL usando PGVector. Una aplicación que utiliza el enfoque RAG (Recuperación de generación aumentada) recupera la información más relevante para la solicitud del usuario de la base o contenido de conocimiento empresarial, lo inclina como contexto junto con la solicitud del usuario como un mensaje, y luego la envía a la LLM para obtener una respuesta de Genai.
Los LLM tienen limitaciones en torno al recuento de palabras máximo para el mensaje de entrada, por lo tanto, elegir los pasajes correctos entre miles o millones de documentos en la empresa, tiene un impacto directo en la precisión de la LLM.
En este proyecto, el Amazon Aurora PostgreSQL con PGVector se utiliza para la base de conocimiento.
La arquitectura general es así:
Flujo de trabajo general
- Implemente las pilas CDK (para obtener más información, ver aquí).
- Un estudio de Sagemaker en una VPC privada.
- Un punto final de Sagemaker para la generación de texto.
- Un punto final de Sagemaker para generar embedidas.
- Un clúster de Amazon Aurora PostgreSQL para almacenar incrustaciones.
- Las credenciales de acceso de Aurora PostgreSQL Cluster (nombre de usuario y contraseña) almacenadas en AWS Secrets Mananger como un nombre como
RAGPgVectorStackAuroraPostg-xxxxxxxxxxxx .
- Abra Jupyterlab en Sagemaker Studio y luego abra una nueva terminal.
- Ejecute los siguientes comandos en el terminal para clonar el repositorio de código para este proyecto:
git clone --depth=1 https://github.com/aws-samples/rag-with-amazon-postgresql-using-pgvector.git
- Abra
data_ingestion_to_pgvector.ipynb cuaderno y ejecútelo. (Para más información, ver aquí) - Ejecute la aplicación Streamlit. (Para más información, ver aquí)
Referencias
- Aproveche PGVector y Amazon Aurora PostgreSQL para el procesamiento del lenguaje natural, los chatbots y el análisis de sentimientos (2023-07-13)
- Acelere la indexación y búsqueda de HNSW con PGVector en Amazon Aurora PostgreSQL Compatible Edition y Amazon RDS para PostgreSQL (2023-11-06)
- Optimice las aplicaciones de IA generativas con la indexación de PGVector: una inmersión profunda en las técnicas IVFFLAT y HNSW (2024-03-15)
- Mejore el rendimiento de las cargas de trabajo generativas de IA en Amazon Aurora con lecturas optimizadas y PGVector (2024-02-09)
- Construyendo búsqueda con AI en PostgreSQL usando Amazon Sagemaker y PGVector (2023-05-03)
- Construya aplicaciones a Stiplit en Amazon Sagemaker Studio (2023-04-11)
- Cree rápidamente aplicaciones de IA generativas de alta precisión en datos empresariales utilizando Amazon Kendra, Langchain y modelos de idiomas grandes (2023-05-03)
- (Github) muestras de retriver de Amazon Kendra
- Respuesta de preguntas utilizando la generación de recuperación aumentada con modelos de base en Amazon Sagemaker JumpStart (2023-05-02)
- Use modelos de base patentados de Amazon Sagemaker JumpStart en Amazon Sagemaker Studio (2023-06-27)
- Langchain: un marco para desarrollar aplicaciones alimentadas por modelos de idiomas.
- Streamlit: una forma más rápida de construir y compartir aplicaciones de datos
- Rag-with-amazon-kendra-and-sagemaker-Aplicación de respuesta de preguntas con modelos de idiomas grandes (LLM) y Amazon Kendra
- Rag-with-amazon-opensearch-y-sagemaker-Aplicación de respuesta de preguntas con modelos de idiomas grandes (LLMS) y Amazon OpenSearch Service
- Rag-with-amazon-opensearch-server sinvergente: la aplicación de respuesta de preguntas con modelos de idiomas grandes (LLM) y el servicio sin servidor de Amazon OpenSearch
- PGVector ChangeLog-V0.4.0 (2023-01-11)
Aumento de las dimensiones máximas para el vector de 1024 a 16000
Aumento de las dimensiones máximas para el índice de 1024 a 2000
Seguridad
Ver contribuyendo para más información.
Licencia
Esta biblioteca tiene licencia bajo la licencia MIT-0. Ver el archivo de licencia.