Automatización de un patrón RAG con AutoAI

Utilice AutoAI para automatizar y acelerar la búsqueda de un patrón optimizado de generación de recuperación aumentada (RAG) con calidad de producción, basado en sus datos y su caso de uso.

Formato de los datos
Archivos de colección de documentos de tipo PDF, HTML, DOCX, MD, PPTX, JSON, YAML, XML o texto sin formato
Datos de prueba con preguntas y respuestas en formato JSON
Límites de archivos de datos
Hasta 20 archivos o carpetas para la colección de documentos. Para colecciones de documentos más grandes, AutoAI realiza el experimento con una muestra de 1 GB.
1 archivo JSON para datos de prueba. Un experimento utilizará hasta 25 pares de preguntas y respuestas para evaluar patrones.
Tamaño del entorno
Grande: 8 CPU y 32 GB de RAM

Estimación de los costes de un patrón RAG

AutoAI para los experimentos RAG utilizan Horas Unidad de Capacidad (CUH) para el entrenamiento del experimento y durante el experimento se consumen tokens para incrustar documentos e inferir los modelos de fundamentos.

  • CUH es una medida estándar de 20 CUH por hora para el entorno soportado. La CUH consumida para un experimento depende de la complejidad del mismo y del tiempo necesario para evaluar los patrones.
  • El consumo de fichas depende de varios factores, entre ellos:
    • tamaño de la colección de documentos para incrustar
    • número de preguntas de evaluación y respuestas para incrustar
    • configuración de fragmentación, calculada mediante esta fórmula: ((Chunk overlap + Chunk size) * Chunk count) * Evaluation records
    • el número de patrones que crea el experimento

Este ejemplo muestra cómo se calculan los recursos para un único patrón RAG.

Experimentar entrada:

  • 100 páginas de documento
  • 25 registros de preguntas/respuestas de evaluación
Actividad Señales consumidas
Incrustar documentos 3.000.000
Incrustación de registros de evaluación 25.000
Recuperar contexto para avisos 192 000
Recuperación del contexto para los registros de evaluación 25.000
Generación de respuestas 25.000
Total de señales consumidas 3 267 000

Respuestas precisas con generación mejorada por recuperación

RAG combina la potencia generativa de un gran modelo lingüístico con la precisión de una colección de documentos de base. La interacción con una aplicación RAG sigue este patrón:

  1. Un usuario envía una pregunta a la aplicación.
  2. La búsqueda recupera primero el contexto pertinente a partir de un conjunto de documentos de base.
  3. El gran modelo lingüístico que lo acompaña genera una respuesta que incluye la información pertinente.

Por ejemplo, los cuadernos de muestra que se proporcionan para esta función utilizan la documentación del producto para la biblioteca de clientes watsonx.ai Python como documentos de base para una aplicación de preguntas y respuestas sobre la codificación de soluciones watsonx.ai. Los usuarios de patrones se benefician de la información específica y relevante de la documentación, mientras que el modelo generativo de IA añade contexto y presenta las respuestas en lenguaje natural.

Para obtener una descripción completa y ejemplos de cómo la generación aumentada por recuperación puede mejorar sus aplicaciones de preguntas y respuestas, consulte ' Generación aumentada por recuperación (RAG).

Automatización de la búsqueda de la mejor configuración RAG

RAG incluye muchos parámetros de configuración, como qué modelo lingüístico elegir, cómo trocear los documentos de base y cuántos documentos recuperar. Las opciones de configuración que funcionan bien para otro caso de uso pueden no ser la mejor opción para sus datos. Para crear el mejor patrón RAG posible para su conjunto de datos, podría explorar todas las combinaciones posibles de opciones de configuración RAG para encontrar, evaluar e implantar la mejor solución. Esta parte del proceso puede requerir una importante inversión de tiempo y recursos. Del mismo modo que puede utilizar AutoAI para entrenar y optimizar rápidamente los modelos de aprendizaje automático, puede utilizar las capacidades de AutoAI para automatizar la búsqueda de la solución óptima de GAR en función de sus datos y su caso de uso. Acelerar la experimentación puede reducir drásticamente el plazo de producción.

Entre las principales características del enfoque AutoAI se incluyen:

  • Exploración y evaluación completas de un conjunto limitado de opciones de configuración.
  • Reevaluar y modificar rápidamente la configuración cuando algo cambia. Por ejemplo, puede volver a ejecutar fácilmente el proceso de formación cuando disponga de un nuevo modelo o cuando los resultados de la evaluación indiquen un cambio en la calidad de las respuestas.

El uso de AutoAI automatiza el flujo de extremo a extremo, desde la experimentación hasta el despliegue. El siguiente diagrama ilustra el enfoque de AutoAI para encontrar un patrón RAG optimizado para sus datos y caso de uso en 3 capas:

  • En el nivel básico se encuentran las canalizaciones RAG parametrizadas que se utilizan para rellenar un almacén de vectores (índice) y recuperar datos del almacén de vectores para utilizarlos cuando el modelo de lenguaje amplio genera respuestas.
  • A continuación, las métricas de evaluación RAG y las herramientas de evaluación comparativa evalúan la calidad de la respuesta.
  • Por último, un algoritmo de optimización de hiperparámetros busca la mejor configuración RAG posible para sus datos.

Automatización de un patrón RAG con el SDK AutoAI

AutoAI Proceso de optimización RAG

La ejecución de experimentos mediante el uso de AutoAI RAG evita probar todas las opciones de configuración de RAG (por ejemplo, evita una búsqueda en cuadrícula) mediante el uso de un algoritmo de optimización de hiperparámetros. El siguiente diagrama muestra un subconjunto del espacio de búsqueda de configuraciones RAG con 16 patrones RAG entre los que elegir. Si el experimento las evalúa todas, se clasifican del 1 al 16, y las tres configuraciones mejor clasificadas se etiquetan como las más eficaces. El algoritmo de optimización determina qué subconjunto de patrones RAG evaluar y deja de procesar los demás, que se muestran en gris. Este proceso evita explorar un espacio de búsqueda exponencial sin dejar de seleccionar los patrones RAG con mejor rendimiento en la práctica.

Automatización del proceso de optimización de los patrones GAR

Utilice la vía rápida para automatizar la búsqueda de un patrón RAG

AutoAI ofrece una solución sin código para automatizar la búsqueda de un patrón RAG. Para utilizar la ruta rápida, parta de un proyecto y utilice la interfaz AutoAI para cargar sus documentos de puesta a tierra y de prueba. Acepte la configuración por defecto o actualice la configuración del experimento. Ejecute el experimento para crear los patrones RAG más adecuados para su caso de uso.

Utilizar el SDK AutoAI para codificar un patrón RAG

Utilice los cuadernos de ejemplo para aprender a utilizar el watsonx.ai Python biblioteca cliente (versión 1.1.11 o posterior) para codificar una solución RAG automatizada para su caso de uso.

Ejemplo Descripción
Automatización del patrón RAG con la base de datos Chroma Este cuaderno muestra el enfoque de ruta rápida para crear un patrón RAG.
- Utiliza los archivos de documentación watsonx.ai Python SDK como documentos de base para un patrón RAG.
- Almacena el contenido vectorizado en la base de datos Chroma predeterminada en memoria
Automatización del patrón RAG con la base de datos Milvus - Utiliza los archivos de documentación watsonx.ai Python SDK como documentos de base para un patrón RAG.
- Almacena el contenido vectorizado en una base de datos Milvus externa

Escalar un experimento RAG

AutoAI automatiza la búsqueda de un patrón RAG optimizado basado en sus documentos de base. Si su base de conocimientos de documentación supera los límites de datos permitidos para un experimento, puede utilizar AutoAI para encontrar el patrón RAG y, a continuación, utilizar el cuaderno de indexación generado automáticamente que se crea al guardar un patrón para indexar más documentos. El patrón RAG se aplicará al conjunto más amplio de documentos indexados.

Para más detalles, consulte Guardar un patrón RAG.

Características soportadas

Revise estos detalles para conocer las características que ofrece el proceso RAG ( AutoAI ).

Característica Descripción
Interfaz compatible API, IU
Formatos de archivo para la recogida de documentos en tierra PDF, HTML, DOCX, MD, PPTX, JSON, YAML, XML o texto sin formato
Conexiones de datos para la recopilación de documentos IBM Cloud Object Storage
Amazon S3
Google Cloud Storage
Dropbox
Buzón
archivos o carpetas (hasta 20 documentos)
formato de datos de prueba JSON con esquema fijo (Campos: - question, correct_answer, correct_answer_document_ids)
Conexiones para datos de prueba IBM Cloud Object Storage (archivo JSON único)
Amazon S3 (archivo JSON único)
Google Cloud Storage
Dropbox
Box
archivo JSON único en proyecto o espacio (activo de datos)
archivo JSON único en NFS Volumen de almacenamiento
Fragmentación Múltiples preajustes de 64-2048 caracteres
Documentos de base divididos en trozos con tamaño y solapamiento optimizados.
Modelo de inclusión Modelos de incrustación compatibles disponibles con watsonx.ai
Almacén de vectores Milvus, ChromaDB, y Elasticsearch
Aumento de fragmentos Activado (añadir trozos circundantes del documento)
Tipo de búsqueda Estándar (en un único índice)
Modelos generativos Ver los modelos de la Fundación por tareas
Muestreo Benchmark-driven (primero seleccionar las preguntas, luego los documentos, rellenar con aleatorios hasta el límite)
Métricas Corrección de la respuesta, Corrección de la respuesta ( LLMaaJ ), Fidelidad de la respuesta, Fidelidad de la respuesta ( LLMaaJ ), Corrección del contexto. Para más información, consulte
Métricas de optimización.
Métrica de optimización La métrica que se utiliza como objetivo de optimización. Se admiten respuestas correctas y fieles.
Restricciones de uso personalizables Modelo de incrustación
Modelo generativo
Límite de recuento de configuraciones (patrones de salida máximos: de 4 a 20)
Configuración de recuperación completa
Restricciones de fragmentación completa
Plantillas de chat
virtual Milvus : AutoAI cuadernos para indexación e inferencia mediante el uso de Milvus base de datos vectorial externa
Elasticsearch : AutoAI cuadernos para indexación e inferencia mediante el uso de Elasticsearch base de datos vectorial externa
Activo de servicio de IA desplegable
Chroma: un único AutoAI cuaderno para indexación e inferencia mediante el uso de la base de datos vectorial en memoria Chroma

Modelos de cimientos compatibles

Nota:

Sólo son compatibles los modelos con text_chat .

Puede utilizar estos modelos con AutoAI RAG:

Próximos pasos