Whitepaper Companion Podcast - Operationalizing Generative AI on Vertex AI using MLOps
¿Cómo operacionalizar la IA generativa?
Introducción a la IA Generativa y MLOps
- Se plantea la pregunta sobre cómo convertir el potencial de la IA generativa en aplicaciones prácticas y efectivas en el mundo real.
- Se introduce el concepto de MLOps como clave para operacionalizar la IA generativa, enfocándose en Vertex AI como plataforma principal.
- Se menciona un documento técnico titulado "Operationalizing Generative AI on Vertex AI using MLOps", que profundiza en los aspectos técnicos necesarios para implementar estas tecnologías.
Operaciones de Agentes Inteligentes
- Se discute el concepto de operaciones de agentes o "agent hops", que representa una evolución del MLOps al incluir agentes inteligentes capaces de interactuar con su entorno.
- La necesidad de un marco sólido para gestionar todo el ciclo de vida de estos agentes es fundamental para garantizar su fiabilidad y confianza.
Comparación entre DevOps y MLOps
- Se establece una comparación entre DevOps y MLOps, destacando cómo este último aplica principios similares a los desafíos únicos del aprendizaje automático (ML).
- Los retos específicos del ML incluyen asegurar la validez de los datos, evaluar modelos, monitorear cambios (drift), y mantener reproducibilidad.
Ciclo de Vida del Sistema de IA Generativa
- El documento describe cinco fases clave en el ciclo de vida de un sistema de IA generativa: descubrir, desarrollar y experimentar, evaluar, desplegar y gobernar.
- La mejora continua se aborda desde una perspectiva diferente con la IA generativa; no siempre implica entrenar modelos desde cero sino adaptar modelos base existentes.
Fase 1: Descubrimiento
- En esta fase inicial se enfatiza que no existe una solución única para todos; cada caso depende del uso específico, datos disponibles y restricciones.
- Factores clave a considerar incluyen calidad del modelo, latencia (especialmente importante para aplicaciones en tiempo real), costos asociados e implicaciones legales.
Solución al Problema del Sobrecarga de Modelos
- Se presenta "Vert.Ex model garden" como solución a la sobrecarga por múltiples modelos. Este recurso ofrece una colección curada que incluye modelos propios, asociados y open-source.
Fase 2: Desarrollo y Experimentación
- Esta fase se centra en iteraciones constantes donde se refina datos, se experimenta con diferentes configuraciones del modelo y se evalúan resultados.
¿Qué son los modelos fundamentales y cómo se diferencian de los modelos predictivos tradicionales?
Diferencias clave entre modelos fundamentales y modelos predictivos
- Los modelos fundamentales son multiusos, a diferencia de los modelos tradicionales que están entrenados para tareas específicas. Se entrenan en conjuntos de datos masivos y diversos.
- Exhiben propiedades emergentes, lo que significa que pueden realizar tareas no explícitamente enseñadas, similar a un niño que aprende a escribir poesía tras aprender el alfabeto.
- La ingeniería del prompt es crucial ya que estos modelos son muy sensibles a cambios pequeños en la entrada. Esto contrasta con la definición más clara de entradas en el aprendizaje automático tradicional.
Componentes del modelo impulsado por prompts
- En la IA generativa, hay una capa adicional: el prompt. A menudo se utilizan plantillas de prompts estructuradas para proporcionar instrucciones y ejemplos al modelo.
- El componente del modelo impulsado por prompts combina el modelo y el prompt, siendo la unidad más pequeña capaz de ejecutar acciones en aplicaciones de IA generativa.
Ingeniería del prompt como nueva habilidad
- La ingeniería del prompt no es solo escribir preguntas; es un arte que requiere entender cómo los modelos interpretan el lenguaje y responden a diferentes tipos de prompts.
- Este proceso implica prueba y error: ajustar el prompt basado en las salidas obtenidas para mejorar resultados.
Prompt como datos y código
- Algunas partes del prompt funcionan como datos (ejemplos dados, consultas iniciales), mientras que otras actúan como código (instrucciones, plantillas).
- Para gestionar estas dualidades se requieren prácticas centradas tanto en datos (validación, detección de desviaciones) como en código (control de versiones, pruebas).
Fases complejas: encadenamiento y aumento
- Los grandes modelos lingüísticos tienen limitaciones; pueden generar información incorrecta o tener dificultades con información reciente. Aquí entra el encadenamiento.
- El encadenamiento conecta múltiples componentes modelados junto con llamadas a APIs externas para resolver problemas más complejos.
Patrones comunes: generación aumentada por recuperación y agentes
- La generación aumentada por recuperación ayuda a abordar problemas recientes e ilusiones al alimentar al modelo con información relevante durante la consulta.
- Los agentes utilizan LLM como un cerebro interactuando con herramientas externas; permiten tomar decisiones basadas en la información procesada.
Este resumen proporciona una visión general concisa sobre las diferencias entre los nuevos paradigmas de IA generativa frente a enfoques tradicionales, destacando conceptos clave relacionados con la ingeniería del prompt y su aplicación práctica.
¿Cómo se diferencian las cadenas de IA generativa desde la perspectiva de MLOps?
Naturaleza de los inputs en IA generativa
- Las cadenas de IA generativa son diferentes debido a la naturaleza compleja y desordenada del lenguaje, lo que dificulta definir claramente la distribución de los inputs para cada componente.
Enfoque en el desarrollo y evaluación
- Es crucial considerar toda la cadena como una unidad, ya que cada componente afecta a los demás. La evaluación debe ser integral y no solo centrarse en componentes individuales.
Complejidad del versionado
- El versionado se vuelve más complicado; es necesario rastrear toda la cadena como un artefacto, incluyendo entradas y salidas de cada componente.
Herramientas para gestionar cadenas de IA
- Vertex AI se menciona como una plataforma adecuada para construir y gestionar estas cadenas, ofreciendo herramientas como grounding as a service y Langchain para facilitar el proceso.
¿Cómo adaptar modelos subyacentes en IA generativa?
Ajuste fino y entrenamiento
- Para mejorar el rendimiento en tareas específicas, es esencial ajustar los modelos base mediante técnicas como el ajuste fino supervisado o el aprendizaje por refuerzo con retroalimentación humana (RLHF).
Seguimiento de artefactos durante el ajuste
- Desde la perspectiva de MLOps, es fundamental rastrear todos los artefactos involucrados en el proceso de ajuste, incluyendo datos, parámetros utilizados y métricas de rendimiento.
Prácticas sobre datos en IA generativa
Importancia del manejo adecuado de datos
- Aunque los datos fundamentales siguen siendo cruciales para la IA generativa, la forma en que adaptamos estos modelos utilizando diferentes tipos de datos también es vital.
Desafíos con tipos variados de datos
- Los desafíos incluyen manejar una gama más amplia de tipos de datos que van más allá del conjunto tradicional utilizado en ML. Esto incluye prompts condicionantes y ejemplos f-shot.
Ecosistema completo de gestión de datos
- No solo se trata de construir pipelines ETL; hay que gestionar un ecosistema completo donde las prácticas tradicionales deben adaptarse a las necesidades específicas del entorno generativo.
Evaluación efectiva en sistemas generativos
Dificultades al evaluar modelos fundacionales
- Un desafío clave es que no siempre conocemos la distribución del conjunto de entrenamiento. Por ello, debemos crear conjuntos personalizados para evaluar adecuadamente nuestros sistemas.
Evaluación y Despliegue de Sistemas de IA Generativa
Importancia de la Evaluación en IA Generativa
- La evaluación es fundamental en el proceso de desarrollo, desde la evaluación manual hasta procesos completamente automatizados a medida que el proyecto avanza.
- La complejidad y alta dimensionalidad de las salidas hacen difícil cuantificar la calidad, aunque existen métricas como BLU y RUE que no siempre son suficientes.
- Los métodos de evaluación personalizados son cruciales; dependen del caso de uso y pueden incluir criterios como precisión factual, coherencia, creatividad y estilo.
- Se sugiere utilizar otro modelo base para evaluar la calidad del texto generado, lo que introduce un elemento subjetivo en la evaluación.
- La falta de datos verídicos puede ser un desafío; generar datos sintéticos puede ser una solución temporal.
Consideraciones para el Despliegue
- El despliegue de sistemas generativos es complejo e involucra múltiples componentes como modelos, capas adaptadoras y fuentes externas de datos.
- Es importante distinguir entre desplegar el sistema completo para el usuario final y hacer accesible el modelo base.
- Las mejores prácticas del software tradicional siguen siendo relevantes; se debe llevar un control de versiones riguroso sobre plantillas y definiciones utilizadas.
- La integración continua (CI/CD) es esencial, pero presenta desafíos únicos debido a la naturaleza no determinista de los modelos generativos.
- Los modelos base requieren recursos computacionales masivos; técnicas como la compresión pueden ayudar a gestionar su tamaño.
Monitoreo Post-despliegue
- El monitoreo efectivo requiere seguimiento end-to-end debido a los componentes encadenados en los sistemas generativos.
- La detección de sesgos (skew detection) compara distribuciones de datos para asegurar que el sistema siga siendo adecuado en producción.
¿Cómo detectar el cambio en los datos de entrada?
Detección de Drift
- La detección de drift se centra en identificar cambios en los datos de entrada a lo largo del tiempo, buscando entender cómo puede estar evolucionando el comportamiento del usuario.
- Se pueden utilizar diversas técnicas para medir estos cambios, dependiendo del tipo de datos. Para texto, se consideran embeddings, distancias y cambios en el vocabulario.
Evaluación Continua
- El servicio de evaluación generativa de Vertex AI es destacado como una herramienta para crear métricas personalizadas y evaluadores automáticos.
- Es crucial establecer alertas para ser notificado ante cualquier problema antes que los usuarios se quejen.
¿Qué papel juega la gobernanza en sistemas de IA generativa?
Importancia de la Gobernanza
- La gobernanza abarca prácticas y políticas que aseguran control, responsabilidad y transparencia durante todo el ciclo de vida del aprendizaje automático.
- En IA generativa, no solo se trata de gobernar el modelo, sino también todo el sistema: prompts, cadenas y fuentes de datos.
Herramientas para la Gobernanza
- Vertex AI ofrece herramientas como Datallex y Vert.ex ML metadata para ayudar con la gestión adecuada.
¿Qué son los agentes en IA generativa?
Avances con Agentes
- Los agentes representan un avance significativo al permitir sistemas que interactúan con el mundo y toman decisiones autónomamente.
- Esto introduce nuevos desafíos desde la perspectiva MLOps debido a su autonomía y necesidad de confianza.
Desafíos en la Gestión de Agentes
- Los agentes interactúan con múltiples sistemas externos; por lo tanto, es esencial contar con mecanismos robustos para gestionar estas interacciones.
Estrategias para evaluar y optimizar agentes
Proceso de Evaluación
- Se describe un proceso en cinco etapas para evaluar agentes que comienza con pruebas unitarias hasta llegar a métricas operativas.
Importancia de la Observabilidad
- La observabilidad permite entender las acciones del agente, sus decisiones y proporciona contexto mediante memoria a corto y largo plazo.
¿Cómo está evolucionando el desarrollo de aplicaciones de IA generativa?
La importancia de la infraestructura en AI
- Se discute la necesidad de una pipeline CI/CD, registro automatizado de herramientas, monitoreo continuo y un ciclo de mejora iterativa para implementar operaciones con agentes.
- Se contrasta el paisaje tradicional de ML ops con el emergente desarrollo de aplicaciones genAI, destacando la aparición de nuevos roles como ingenieros Brmpt, ingenieros AI y DevOps.
- Vertex AI ofrece una suite integral que abarca desde la preparación de datos hasta APIs preentrenadas, entrenamiento avanzado, despliegue y gobernanza en una única plataforma unificada.
Oportunidades para desarrolladores
- Vertex AI proporciona un entorno amigable para los usuarios y un vasto jardín de modelos, facilitando llevar proyectos desde prototipos a producción.
- Se plantea una reflexión sobre los desafíos y oportunidades futuros en el campo del AI generativo y cómo plataformas como Vertex AI pueden evolucionar para abordarlos.