Últimamente se ha hablado mucho de las maravillas de los modelos de lenguajes grandes (LLM). La mayoría de estos elogios son merecidos. Pídale a ChatGPT que describa la Teoría General de la Relatividad y obtendrá una respuesta muy buena (y precisa). Sin embargo, al final del día, ChatGPT sigue siendo un programa de computadora (como todos los demás LLM) que ejecuta ciegamente su conjunto de instrucciones. No comprende la Teoría General de la Relatividad mejor que su mascota favorita. Desafortunadamente, utilizamos palabras "parecidas a las humanas" para describir las técnicas que utilizan los ingenieros para crearlas; por ejemplo, "aprendizaje automático" y "entrenamiento". Esto es engañoso porque un LLM no tiene una mente humana.
Hay una cierta ironía aquí: ¿cómo puede un chatbot no pensante resumir correctamente los hallazgos del hombre más inteligente que jamás haya existido? Para comprender esta naturaleza contradictoria de los LLM, exploremos más a fondo en términos de fortalezas, debilidades y peligros para ver cómo podemos usar datos y una solución de almacenamiento como MinIO para explotar los primeros y mitigar los otros dos. Estas son técnicas que todo ingeniero debería tener en cuenta mientras capacita, prueba e implementa LLM para su organización.
La ventaja de los LLM es que están capacitados para comprender la distribución de probabilidad de las palabras en el conjunto de entrenamiento utilizado para crearlas. Si el conjunto de entrenamiento es lo suficientemente grande (es decir, un corpus de artículos de Wikipedia o código público en GitHub), entonces los modelos tendrán un vocabulario y una distribución de probabilidad correspondiente que hará que sus resultados parezcan como si tuvieran una comprensión del mundo real. texto que generan. Examinemos otro ejemplo con más detalle, esta vez de Filosofía. Pregúntele a ChatGPT: "¿Qué significa 'cogito, ergo sum' y quién lo escribió?" y obtendrá algo similar al texto a continuación.
"Cogito, ergo sum" es una proposición filosófica latina que se traduce como "pienso, luego existo" en inglés. Esta afirmación está asociada con René Descartes, un filósofo, matemático y científico francés. Descartes expresó esta idea en su obra "Discurso sobre el método", publicada en 1637. La frase refleja el intento de Descartes de establecer una verdad fundamental de la que no se puede dudar: la certeza de la propia existencia como ser pensante.
Los LLM producen resultados como este utilizando distribuciones de probabilidad. Funciona así, comienzan mirando el texto de la pregunta y determinan que la palabra “Cogito” tiene la mayor probabilidad de ser la primera palabra de la respuesta. A partir de ahí, observan la pregunta y la primera palabra de la respuesta para determinar cuál tiene la mayor probabilidad de ser la siguiente. Esto continúa y continúa hasta que se determina que un carácter especial de "fin de respuesta" tiene la mayor probabilidad.
Esta capacidad de generar una respuesta en lenguaje natural basada en miles de millones de probabilidades no es algo que deba temer; más bien, es algo que debe explotarse para generar valor comercial. Los resultados son aún mejores cuando se utilizan técnicas modernas. Por ejemplo, utilizando técnicas como recuperación de generación aumentada (RAG) y ajuste fino, puede enseñar a un LLM sobre su negocio específico. Lograr estos resultados humanos requerirá datos y su infraestructura necesitará una solución sólida de almacenamiento de datos.
Estas capacidades de predicción del siguiente token no solo se pueden utilizar para generar texto excelente para su chatbot o texto de marketing, sino que también se pueden utilizar para permitir la toma de decisiones automatizada dentro de su aplicación. Si se le dan indicaciones inteligentemente construidas que contienen un enunciado del problema e información sobre las API (“funciones”) que se pueden llamar, la comprensión del lenguaje de un LLM le permitirá generar una respuesta que explique qué “función” se debe llamar. Por ejemplo, en una aplicación meteorológica conversacional, un usuario podría preguntar: "¿Necesito una chaqueta impermeable si voy a ir a Fenway Park esta noche?". Con algunas indicaciones inteligentes, un LLM podría extraer los datos de ubicación de la consulta (Boston, MA) y determinar cómo se podría formular una solicitud a la API de precipitación de Weather.com.
Durante mucho tiempo, la parte más difícil de crear software fue la interfaz entre el lenguaje natural y los sistemas sintácticos, como las llamadas API. Ahora, irónicamente, esa podría ser una de las partes más simples. De manera similar a la generación de texto, la calidad y confiabilidad del comportamiento de llamada de funciones de LLM se pueden mejorar con el uso de ajuste fino y aprendizaje reforzado con retroalimentación humana (RLHF).
Ahora que entendemos en qué son buenos los LLM y por qué, investiguemos qué no pueden hacer los LLM.
Los LLM no pueden pensar, comprender ni razonar. Ésta es la limitación fundamental de los LLM. Los modelos de lenguaje carecen de la capacidad de razonar sobre la pregunta de un usuario. Son máquinas de probabilidad que producen una respuesta realmente buena a la pregunta de un usuario. No importa qué tan buena sea la suposición, sigue siendo una suposición y cualquier cosa que cree estas conjeturas eventualmente producirá algo que no es cierto. En la IA generativa, esto se conoce como "alucinación".
Cuando se entrena correctamente, las alucinaciones se pueden reducir al mínimo. El ajuste fino y el RAG también reducen en gran medida las alucinaciones. La conclusión: para entrenar un modelo correctamente, ajustarlo y darle un contexto relevante (RAG), se requieren datos y la infraestructura para almacenarlo a escala y servirlo de manera eficiente.
Veamos un aspecto más de los LLM, que clasificaré como un peligro porque afecta nuestra capacidad para probarlos.
El uso más popular de los LLM es la IA generativa. La IA generativa no produce una respuesta específica que pueda compararse con un resultado conocido. Esto contrasta con otros casos de uso de IA, que hacen una predicción específica que se puede probar fácilmente. Es sencillo probar modelos para detección, categorización y regresión de imágenes. Pero, ¿cómo se prueban los LLM utilizados para la IA generativa de una manera que sea imparcial, fiel a los hechos y escalable? ¿Cómo puede estar seguro de que las respuestas complejas que generan los LLM son correctas si usted no es un experto? Incluso si usted es un experto, los revisores humanos no pueden ser parte de las pruebas automatizadas que ocurren en una canalización de CI/CD.
Hay algunos puntos de referencia en la industria que pueden ayudar. GLUE (Evaluación de comprensión del lenguaje general) se utiliza para evaluar y medir el desempeño de los LLM. Consiste en un conjunto de tareas que evalúan la capacidad de los modelos para procesar el lenguaje humano. SuperGLUE es una extensión del punto de referencia GLUE que introduce tareas lingüísticas más desafiantes. Estas tareas implican resolución de correferencias, respuesta a preguntas y fenómenos lingüísticos más complejos.
Si bien los puntos de referencia anteriores son útiles, una gran parte de la solución debería ser su propia recopilación de datos. Considere registrar todas las preguntas y respuestas y crear sus propias pruebas basadas en hallazgos personalizados. Esto también requerirá una infraestructura de datos construida para escalar y funcionar.
Ahí tienes. Las fortalezas, debilidades y peligros de los LLM. Si desea aprovechar el primero y mitigar los otros dos, necesitará datos y una solución de almacenamiento que pueda manejar una gran cantidad de ellos.