Compartir a través de


GenAIOps para profesionales de MLOps

En este artículo se proporcionan instrucciones para los equipos de carga de trabajo que tienen inversiones existentes en operaciones de aprendizaje automático (MLOps) y quieren ampliar esas inversiones para incluir inteligencia artificial generativa en su carga de trabajo. Para poner en marcha una carga de trabajo de IA generativa, debe ampliar las inversiones de MLOps con operaciones de IA generativa (GenAIOps, a veces conocidas como LLMOps). En este artículo se describen los patrones técnicos que son comunes entre las cargas de trabajo tradicionales de aprendizaje automático y la inteligencia artificial generativa, y patrones específicos para la inteligencia artificial generativa. El artículo le ayuda a comprender dónde puede aplicar las inversiones existentes en operacionalización y dónde necesita ampliar esas inversiones.

La planeación e implementación de mlOps y GenAIOps forman parte de un área de diseño principal en las cargas de trabajo de inteligencia artificial en Azure. Para obtener información general sobre por qué estas cargas de trabajo necesitan operaciones especializadas, consulte MLOps y GenAIOps para cargas de trabajo de IA en Azure en Azure Well-Architected Framework.

Patrones técnicos de IA generativa

Las cargas de trabajo de IA generativa difieren de las cargas de trabajo de aprendizaje automático tradicionales de varias maneras:

  • Céntrese en modelos generativos. Las cargas de trabajo de aprendizaje automático tradicionales se centran en entrenar nuevos modelos entrenados para realizar tareas específicas. Las cargas de trabajo de IA generativa consumen modelos generativos que se pueden usar para abordar una variedad más amplia de casos de uso y, en algunos casos, son multimodal.

  • Céntrese en ampliar los modelos. El recurso clave en el aprendizaje automático tradicional es el modelo implementado. El acceso al modelo se proporciona al código de cliente en una o varias cargas de trabajo, pero la carga de trabajo no forma parte del proceso de MLOps. Con las soluciones de IA generativa, una faceta clave de la solución es el mensaje que se proporciona al modelo generativo. La solicitud debe estar compuesta y puede contener datos de uno o varios almacenes de datos. El sistema que organiza la lógica llama a los distintos servidores back-end, genera la solicitud y las llamadas al modelo generativo forman parte del sistema de IA generativa que debe controlar con GenAIOps.

Aunque algunas soluciones de inteligencia artificial generativa usan prácticas tradicionales de aprendizaje automático, como el entrenamiento del modelo y el ajuste, todas presentan nuevos patrones que debe estandarizar. En esta sección se proporciona información general sobre las tres categorías generales de patrones técnicos para soluciones de IA generativa:

  • Entrenamiento previo y ajuste
  • Ingeniería de solicitudes
  • Generación aumentada de recuperación (RAG)

Entrenamiento y ajuste de modelos de lenguaje

Actualmente, muchas soluciones de inteligencia artificial generativa usan modelos de lenguaje base existentes que no requieren un ajuste antes de su uso. Sin embargo, algunos casos de uso pueden beneficiarse de ajustar un modelo de base o entrenar un nuevo modelo de IA generativa, como un modelo de lenguaje pequeño (SLM).

Entrenar un nuevo SLM y ajustar un modelo base generativo son lógicamente los mismos procesos que el entrenamiento de modelos de aprendizaje automático tradicionales. Estos procesos deben usar las inversiones existentes en MLOps.

Ingeniería de solicitudes

La ingeniería de solicitudes incluye todos los procesos implicados en la generación de un mensaje que se envía como entrada a un modelo generativo. Por lo general, hay un orquestador que controla un flujo de trabajo que genera el mensaje. El orquestador puede llamar a cualquier número de almacenes de datos para recopilar información, como datos de base, y aplicar la lógica necesaria para generar la solicitud más eficaz. A continuación, el orquestador se implementa como un punto de conexión de API al que accede el código de cliente en una aplicación inteligente.

El siguiente diagrama muestra una arquitectura para la ingeniería de solicitudes.

Diagrama que muestra una arquitectura para la ingeniería de solicitudes.

Esta categoría de patrones técnicos puede abordar muchos casos de uso, entre los que se incluyen:

  • Clasificación.
  • Traducción.
  • Resumen.
  • Generación aumentada de recuperación que se describe en la sección siguiente.

Generación aumentada por recuperación

La generación aumentada de recuperación (RAG) es un patrón de arquitectura que usa la ingeniería de solicitudes para incorporar datos específicos del dominio como datos básicos para un modelo de lenguaje. El modelo de lenguaje se entrena con un conjunto específico de datos. La carga de trabajo puede requerir razonar sobre los datos específicos de su empresa, clientes o dominio. En las soluciones de RAG, los datos se consultan y los resultados se proporcionan al modelo de lenguaje como parte de la solicitud, normalmente a través de una capa de orquestación.

Una implementación de RAG común consiste en dividir los documentos en fragmentos y almacenarlos en un almacén vectorial junto con los metadatos. Los almacenes de vectores, como Búsqueda de Azure AI, permiten realizar búsquedas de similitud textual y vectorial para devolver resultados contextualmente relevantes. Las soluciones de RAG también pueden usar otros almacenes de datos para devolver datos de base.

En el siguiente diagrama se muestra una arquitectura de RAG:

Diagrama que muestra una arquitectura de RAG.

Extensión de MLOps para patrones técnicos de IA generativa

En esta sección se describen los siguientes aspectos clave de las fases de los bucles interno y externo para los patrones técnicos de IA generativa y ayuda a comprender dónde puede aplicar las inversiones que ya tiene en MLOps y dónde necesita expandirlas.

DataOps

Tanto MLOps como GenAIOps aplican los fundamentos de DataOps para crear flujos de trabajo extensibles y reproducibles que garanticen que los datos se limpian, transforman y formatean correctamente para la experimentación y la evaluación. La reproducibilidad del flujo de trabajo y el control de versiones de datos son características importantes de DataOps para todos los patrones técnicos. Los orígenes, los tipos y la intención de los datos dependen del patrón.

Entrenamiento previo y ajuste

Este patrón técnico debe aprovechar completamente las inversiones existentes en DataOps que ha realizado como parte de la implementación de MLOps. La reproducibilidad y el control de versiones de datos le permiten experimentar con diferentes datos de ingeniería de características, comparar el rendimiento de los diferentes modelos y reproducir los resultados.

RAG e ingeniería de solicitudes

La intención de los datos de las soluciones de RAG es proporcionar datos de base que se presentan al modelo de lenguaje como parte de una solicitud. Las soluciones de RAG suelen requerir el procesamiento de documentos grandes en una colección de fragmentos de tamaño correcto, semánticamente relevantes y conservar esos fragmentos en un almacén de vectores. Consulte Diseño y desarrollo de una solución de RAG para obtener más información. La reproducibilidad y el control de versiones de datos para las soluciones de RAG le permiten experimentar con diferentes estrategias de fragmentación e inserción, comparar el rendimiento y revertir a versiones anteriores.

Las canalizaciones de datos para la fragmentación de documentos no forman parte de DataOps en los MLOps tradicionales, por lo que tiene que ampliar su arquitectura y operaciones. Las canalizaciones de datos pueden leer datos de varios orígenes dispares, que incluyen datos estructurados y no estructurados. También pueden escribir los datos transformados en distintos destinos. Debe ampliar la arquitectura para incluir los almacenes de datos que use para loa datos de base. Los almacenes de datos comunes para estos patrones son almacenes de vectores como Búsqueda de AI.

Al igual que con el entrenamiento y el ajuste, puede aprovechar las canalizaciones de Azure Machine Learning u otras herramientas de canalización de datos para orquestar las fases de fragmentación. Puede aprovechar los flujo de avisos de las canalizaciones de Azure Machine Learning para procesar y enriquecer los datos de forma coherente y reproducible. También debe ampliar las operaciones para mantener la actualización y validez de los índices de búsqueda en los almacenes de datos.

Experimentación

La experimentación, una parte del bucle interno, es el proceso iterativo de crear, evaluar y refinar su solución. En las secciones siguientes se describe la experimentación para los patrones técnicos comunes de IA generativa.

Entrenamiento previo y ajuste

Al ajustar un modelo de lenguaje existente o entrenar un modelo de lenguaje pequeño, puede aprovechar las inversiones actuales de MLOps. Por ejemplo, las canalizaciones de Azure Machine Learning proporcionan un kit de herramientas para realizar experimentos de manera eficiente y eficaz. Estas canalizaciones permiten administrar todo el proceso de ajuste, desde el preprocesamiento de datos hasta el entrenamiento y la evaluación del modelo.

RAG e ingeniería de solicitudes

La experimentación con cargas de trabajo de ingeniería de solicitudes y RAG requiere ampliar las inversiones en MLOps. Para estos patrones técnicos, la carga de trabajo no termina con el modelo. La carga de trabajo requiere un orquestador que es un sistema que puede ejecutar lógica, llamar a almacenes de datos para obtener información necesaria, como los datos de base, generar solicitudes, llamar a modelos de lenguaje, etc. Los almacenes de datos y los índices de los almacenes también forman parte de la carga de trabajo. Debe ampliar sus operaciones para controlar estos aspectos de la carga de trabajo.

Hay varias dimensiones sobre las que experimentar para encontrar soluciones de ingeniería de solicitudes, incluyendo diferentes instrucciones, personas, ejemplos, restricciones y técnicas avanzadas como el encadenamiento de solicitudes. Cuando se experimenta con soluciones RAG, se puede experimentar con áreas adicionales:

  • Estrategia de fragmentación
  • Qué y cómo enriquecer los fragmentos
  • El modelo de inserción
  • Configuración del índice de búsqueda
  • Qué búsquedas se realizan (vector, texto completo, híbrido, etc.)

Como se describe en DataOps, la reproducibilidad y el control de versiones de datos son clave para la experimentación. Un buen marco de experimentación permite almacenar entradas, como cambios en hiperparámetros o solicitudes, junto con salidas que se usarán al evaluar el experimento.

Al igual que con el entorno de MLOps existente, puede aprovechar los marcos, como las canalizaciones de Azure Machine Learning. Las canalizaciones de Azure Machine Learning tienen características que admiten la indexación mediante la integración con almacenes de vectores, como Búsqueda de AI. El entorno de GenAIOps puede aprovechar estas características de canalizaciones y combinarlas con características de flujo de avisos que administran la ingeniería de solicitudes y la lógica de preprocesamiento personalizada.

Evaluación y experimentación

La evaluación es clave en el proceso de experimentación iterativa de creación, evaluación y ajuste de la solución. La evaluación de los cambios le proporciona los comentarios necesarios para realizar sus ajustes o validar que la iteración actual cumple sus requisitos. En las secciones siguientes se describe la evaluación en la fase de experimentación para los patrones técnicos comunes de IA generativa.

Entrenamiento previo y ajuste

Para la evaluación de modelos generativos de IA optimizados o entrenados, deberías aprovechar tus inversiones existentes en MLOps. Por ejemplo, si usa canalizaciones de Azure Machine Learning para orquestar el entrenamiento del modelo de Machine Learning, puede usar las mismas características de evaluación para ajustar los modelos de lenguaje básicos o entrenar nuevos modelos de lenguaje pequeño. Estas características incluyen el componente de evaluar modelo, que calcula métricas de evaluación estándar del sector para tipos de modelo específicos y compara resultados entre modelos.

RAG e ingeniería de solicitudes

Tiene que ampliar las inversiones existentes en MLOps para evaluar las soluciones de IA generativa. Puede usar herramientas como Prompt Flow, que ofrece un marco para la evaluación. Los flujos de avisos permiten a los equipos definir lógica de evaluación personalizada, especificando criterios y métricas para evaluar el rendimiento de varias variantes de solicitud y modelos de lenguaje (LLM) grandes. Este enfoque estructurado permite la comparación en paralelo de diferentes configuraciones, como variaciones de hiperparámetros o de arquitectura, para identificar la configuración óptima para tareas específicas.

Los trabajos en el flujo de avisos capturan automáticamente los datos de entrada y salida en todo el proceso de experimentación, creando un registro de prueba completo. El análisis de estos datos le permitirá obtener información e identificar configuraciones prometedoras para futuras iteraciones. Puede acelerar el desarrollo de sus soluciones de IA generativa usando flujos de avisos para llevar a cabo una experimentación eficiente y sistemática.

El proceso de experimentación es el mismo independientemente del caso de uso de la solución de inteligencia artificial generativa. Estos casos de uso incluyen clasificación, resumen, traducción e incluso RAG. La diferencia importante radica en las métricas que se usan para evaluar los distintos casos de uso. A continuación se muestran algunas métricas, en función del caso de uso, que se deben tener en cuenta.

  • Traducción: BLEU
  • Resumen: ROUGE. BLEU, BERTScore, METEOR
  • Clasificación: Precisión, Recuperación, Precisión, Entropía cruzada
  • RAG: Solidez, Relevancia

Nota:

Consulte Evaluación de un extremo a otro de LLM para obtener más información sobre cómo evaluar modelos de lenguaje y soluciones de RAG.

En general, las soluciones de inteligencia artificial generativa amplían las responsabilidades del equipo de aprendizaje automático de los modelos de entrenamiento a la ingeniería de solicitudes y administración de datos de base. Dado que la ingeniería de solicitudes y la experimentación y evaluación de RAG no requieren necesariamente científicos de datos, resulta tentador realizar estas funciones con otros roles, como ingenieros de software e ingenieros de datos. Experimentará desafíos si omite a los científicos de datos del proceso de experimentación con soluciones de ingeniería de solicitudes y GAR. Otros roles no suelen capacitarse para evaluar científicamente los resultados, como lo hacen muchos científicos de datos. Lea la serie de artículos de siete partes Diseño y desarrollo de una solución de RAG para comprender la complejidad del diseño de soluciones de IA generativa.

Invertir en soluciones de IA generativa le permite aliviar parte de la presión sobre sus recursos de ciencia de datos. El papel de los ingenieros de software crece en estas soluciones. Por ejemplo, los ingenieros de software son excelentes recursos para administrar la responsabilidad de orquestación en las soluciones de inteligencia artificial generativa y son expertos en la configuración de las métricas de evaluación en herramientas como el flujo de avisos. Es importante que los científicos de datos revisen este trabajo. Tienen el entrenamiento y la experiencia para comprender cómo evaluar correctamente los experimentos.

Implementación

Algunas soluciones de IA generativa implican implementar modelos entrenados personalizados o ajustar los modelos existentes, mientras que otras no. Para las soluciones de inteligencia artificial generativa, es necesario incluir las tareas adicionales de despliegue de los orquestadores y los almacenes de datos. En las secciones siguientes se describe la implementación de los patrones técnicos comunes de IA generativa.

Entrenamiento previo y ajuste

Debería usar sus inversiones existentes en MLOps, con algunos ajustes posibles, para implementar modelos de IA generativos y ajustar finamente los modelos fundamentales. Por ejemplo, para ajustar un modelo de lenguaje grande en Azure OpenAI, debe asegurarse de que los conjuntos de datos de entrenamiento y validación están en formato JSONL y debe cargar los datos a través de una API REST. También debe crear un trabajo de ajuste. La implementación de un modelo de lenguaje pequeño entrenado puede aprovechar las inversiones existentes en MLOps.

RAG e ingeniería de solicitudes

En el caso de RAG y la ingeniería de mensajes, hay problemas adicionales, como la lógica de orquestación, los cambios en almacenes de datos, como índices y esquemas, y los cambios en la lógica de canalización de datos. La lógica de orquestación normalmente se encapsula en marcos como el flujo de avisos, el kernel semántico o LangChain. Puede implementar el orquestador en distintos recursos de proceso, incluidos esos recursos en los que actualmente puede implementar modelos personalizados. Consulte Arquitectura de referencia de chat de un extremo a otro de Azure OpenAI de línea base para ver ejemplos de implementación del flujo de avisos en puntos de conexión en línea administrados de Azure Machine Learning o Azure App Services. Para implementar en App Service, la arquitectura de chat de Azure OpenAI empaqueta el flujo y sus dependencias como contenedor, una práctica que aumenta la portabilidad y la coherencia en distintos entornos.

Las implementaciones de cambios en los recursos de base de datos, como los cambios en los modelos de datos o los índices, son nuevas tareas que deben controlarse en GenAIOps. Una práctica habitual al trabajar con modelos de lenguaje grande es usar una puerta de enlace delante de LLM.

Muchas arquitecturas de IA generativa que consumen modelos de lenguaje hospedados en la plataforma, como los que se sirven desde Azure OpenAI, incluyen una puerta de enlace como Azure API Management. Los casos de uso de la puerta de enlace incluyen equilibrio de carga, autenticación y supervisión. La puerta de enlace puede desempeñar un papel en la implementación de modelos recién entrenados o ajustados, lo que le permite implementar progresivamente nuevos modelos. El uso de una puerta de enlace, junto con el control de versiones del modelo, le permite minimizar el riesgo al implementar cambios y revertir a versiones anteriores cuando se producen problemas.

Las implementaciones de cuestiones específicas de la IA generativa, como el orquestador, deben seguir procedimientos operativos adecuados, como:

  • Pruebas rigurosas, incluidas las pruebas unitarias.
  • Pruebas de integración.
  • Pruebas A/B.
  • Pruebas de extremo a extremo.
  • Implementación de estrategias como implementaciones controladas o azules o verdes.

Dado que las responsabilidades de implementación de las aplicaciones de IA generativa se extienden más allá de la implementación del modelo, es posible que necesite roles de trabajo adicionales para administrar la implementación y la supervisión de elementos como la interfaz de usuario, el orquestador y los almacenes de datos. Estos roles a menudo se alinean con los conjuntos de aptitudes de ingeniero de DevOps.

Inferencia y supervisión

La inferencia es el proceso de pasar la entrada a un modelo entrenado e implementado, que luego genera una respuesta. Debe supervisar tanto las soluciones de aprendizaje automático tradicional como las de inteligencia artificial generativa desde tres perspectivas: supervisión operativa, aprendizaje de producción y administración de recursos.

Supervisión operativa

La supervisión operativa es el proceso de observar las operaciones en curso del sistema, incluidas las operaciones de datos (DataOps) y el entrenamiento del modelo. Este tipo de supervisión busca desviaciones, incluidos los errores, los cambios en las tasas de error y los cambios en los tiempos de procesamiento.

En el entrenamiento del modelo y su ajuste, normalmente se observan las operaciones de procesamiento de datos de características, así como el entrenamiento del modelo y su ajuste. La supervisión de estos procesos de bucle interno debe aprovechar las ventajas de las inversiones existentes en MLOps y DataOps.

Para la ingeniería de solicitudes en soluciones de inteligencia artificial generativa, existen cuestiones de supervisión adicionales. Debe supervisar los flujos de datos que procesan los datos de base u otros datos que se utilizan para generar indicaciones. Este procesamiento puede incluir operaciones de almacén de datos, como compilar o volver a generar índices.

Aprendizaje de producción

Un aspecto crítico para el monitoreo durante la fase de inferencia es extraer aprendizajes de la producción. La supervisión de modelos de aprendizaje automático tradicional realiza un seguimiento de métricas, como la exactitud, la precisión y la recuperación. Un objetivo clave es evitar el desfase de predicción. Las soluciones que utilizan modelos generativos para hacer predicciones, como el uso de un modelo GPT para la clasificación, deberían aprovechar sus inversiones existentes en el monitoreo de MLOps.

Las soluciones que usan modelos generativos para razonar sobre datos de referencia utilizan métricas como la fundamentación, la completitud, la utilización y la relevancia. El objetivo es asegurarse de que el modelo responde completamente a la consulta y basa la respuesta en su contexto. Aquí, debe intentar evitar problemas como el desfase de datos. Quiere asegurarse de que los datos de base y la solicitud que proporcione el modelo son lo más relevantes posible para la consulta del usuario.

Las soluciones que usan modelos generativos para tareas no predictivas, como las soluciones de RAG, a menudo se benefician de los comentarios de personas para evaluar opiniones de utilidad de los usuarios finales. Las interfaces de usuario pueden capturar comentarios, como pulgares hacia arriba y abajo, y estos datos se pueden usar para evaluar periódicamente las respuestas.

Un patrón común para las soluciones de inteligencia artificial generativa es implementar una puerta de enlace delante de los modelos generativos. Uno de los casos de uso de la puerta de enlace es supervisar los modelos básicos. La puerta de enlace se puede usar para registrar mensajes de entrada y salida.

Otro área clave para supervisar las soluciones generativas es la seguridad del contenido. El objetivo es moderar las respuestas y detectar contenido dañino o no deseado. Seguridad del contenido de Azure AI Studio es un ejemplo de una herramienta que puede usar para moderar el contenido.

Administración de recursos

Las soluciones generativas que usan modelos expuestos como servicio, como Azure OpenAI, tienen cuestiones de administración de recursos diferentes a las de los modelos que implementa usted mismo. En el caso de los modelos que se exponen como servicio, no te preocupas por la infraestructura. En cambio, lo que le preocupa es el rendimiento, la cuota y el estrangulamiento de su servicio. Azure OpenAI usa tokens para facturación, limitación y cuotas. Debe supervisar el uso de cuotas para la administración de los costes y la eficiencia del rendimiento. Azure OpenAI permite registrar el uso de tokens.

Herramientas

Muchos profesionales de MLOps han adoptado un conjunto de herramientas para estructurar diversas actividades de automatización, seguimiento, implementación, experimentación, etc., y así abstraer las preocupaciones comunes y detalles de implementación de esos procesos. Una plataforma unificada común es MLflow. Antes de buscar nuevas herramientas para admitir patrones de GenAIOps, revise las herramientas de MLOps existentes para evaluar su compatibilidad con la inteligencia artificial generativa. Por ejemplo, MLflow admite una amplia gama de características para los modelos de lenguaje.

Modelos de madurez de MLOps y GenAIOps

Es posible que haya usado el modelo de madurez de MLOps para evaluar la madurez de su entorno y operaciones de aprendizaje automático. A medida que amplía las inversiones en MLOps para cargas de trabajo de IA generativa, debe usar el modelo de madurez de GenAIOps para evaluar esas operaciones. Es posible que tenga la tentación de combinar los dos modelos de madurez, pero se recomienda medir cada uno de forma independiente. MLOps y GenAIOps evolucionarán independientemente entre sí. Por ejemplo, podría estar en el nivel cuatro del modelo de madurez de MLOps, pero en el nivel uno para la inteligencia artificial generativa.

Resumen

A medida que empiece a ampliar las inversiones en MLOps para incluir inteligencia artificial generativa, es importante comprender que no es necesario empezar de nuevo. Puede usar las inversiones existentes en MLOps para algunos de los patrones técnicos de ia generativa. El ajuste de modelos generativos es un buen ejemplo. Hay áreas de soluciones de inteligencia artificial generativa, como la ingeniería de solicitudes y RAG, que son procesos nuevos, por lo que tendrá que ampliar sus inversiones en operaciones existentes y adquirir nuevas aptitudes.

Colaboradores

Microsoft mantiene este artículo. Originalmente lo escribieron los siguientes colaboradores.

Para ver los perfiles no públicos de LinkedIn, inicie sesión en LinkedIn.

Pasos siguientes