ChatGPT: Cómo va a impactar los modelos de lenguaje en nuestro día a día

En este artículo, queremos intentar aclararte todas las dudas que puedas tener en relación con los modelos de lenguaje como ChatGPT que, como bien sabes, son parte ya de nuestro día a día.

¿Tienes claro que son los modelos de lenguaje, las diferencias entre ChatGPT y GPT-3 o qué usos tienen en la actualidad y de cara a un futuro no tan lejano?

Modelos de lenguaje

Vamos a empezar por el principio: ¿qué son los modelos de lenguaje? Los modelos de lenguaje son un componente fundamental del procesamiento del lenguaje natural y han acaparado gran atención en los últimos años debido a su notable rendimiento en diversas tareas, como el reconocimiento de voz, la traducción automática y el resumen de textos. En esencia, los modelos de lenguaje están diseñados para predecir la distribución de probabilidad de la siguiente palabra en una secuencia de palabras, dadas las palabras precedentes. Para ello se utilizan arquitecturas complejas, como las redes neuronales recurrentes o los modelos transformers, capaces de procesar grandes cantidades de datos textuales y extraer patrones significativos.

Un modelo Transformer es una red neuronal que utiliza un mecanismo de auto-atención para averiguar las relaciones importantes entre los datos de entrada[1]. Con una inmensa cantidad de datos y conectando diferentes unidades de Transformers, los modelos de lenguaje son capaces de encontrar relaciones lingüísticas a diferentes niveles de comunicación. Por ejemplo, las dependencias entre las diferentes partes de una oración[2]: artículos-sustantivos, verbos-adverbios, etc.

Existen multitud de arquitecturas diferentes que se pueden utilizar. Entre todas, los Large Language Model como GPT3 usan una estructura llamada Decoder, donde el modelo intenta predecir el siguiente token1 en función de los precedentes y de su entrenamiento.

En general, estos modelos aprenden a asociar palabras y frases entre sí, construyendo una representación interna del lenguaje que les permite realizar diversas tareas, entre ellas la generación y comprensión del lenguaje.

Esto podemos aprovecharlo para tareas como completar textos, resúmenes, extracción de información, clasificación o detección de sentimiento.

GPT-3 y ChatGPT

En particular, ChatGPT es un AI chatbot desarrollado por OpenAI™ que utiliza el procesamiento del lenguaje natural (NLP) para generar texto similar al humano a partir de la información que se le proporciona manteniendo cierta memoria sobre el contexto que se va generando durante la conversación. Se lanzó en noviembre de 2022 y se ha optimizado para el diálogo.

ChatGPT está construido sobre un modelo de lenguaje llamado GPT-3.5, más concretamente text-davinci-003 según la nomenclatura de OpenAI™ como puedes ver en la siguiente lista2. Sobre ese modelo se ha añadido una capa de Reinforcement Learning con Human Feedback (RLHF) que ha permitido mejorar sus capacidades conversacionales.

Como imaginarás, GPT-3 no es el único modelo de lenguaje. Desde la publicación del artículo de Google Research en 2018 sobre la arquitectura Transformer que dio lugar al modelo BERT, el primer modelo de lenguaje capaz de entender el contexto, se han realizado numerosas variaciones y mejoras del modelo, incluso con entrenamiento para dominios específicos (BioBERT, SciBERT, LegalBERT, finBERT...). Posteriormente, los modelos de lenguaje han ido aumentando en tamaño3, incluyendo cada vez más parámetros como GPT-2 (1.5B4) en 2019, Turing-NLG de Microsoft (17B) y GPT-3 (175B de parámetros) en 2020 o Megatron-Turing NLG (con 530B de parámetros) en 2021.

Es posible que te preguntes qué otros modelos están disponibles, ya sean comerciales o de código abierto. En este sentido Hugging Face5 es un excelente punto de partida para explorar los modelos disponibles. Esta plataforma ofrece a los desarrolladores la capacidad de realizar el ciclo completo de una demostración para probar las capacidades de los modelos. Además, cuenta con una impresionante colección de más de 100.000 modelos pre-entrenados descargables, 20.000 conjuntos de datos con diversos tipos de licencias de uso y una sección llamada "Spaces" donde se pueden probar una amplia variedad de demos de diferentes categorías6. Incluso puedes desplegar tus demos para ejecutarlos de forma gratuita. En la siguiente imagen puedes hacerte una idea de la cantidad de modelos que están desarrollando7.

Cómo usar estos modelos

¿Y cómo puedo utilizarlos en mis aplicaciones? Dependiendo del número de parámetros, los modelos pueden ser ejecutados en equipos locales o en infraestructuras con recursos GPU8. Sin embargo, dado el tamaño de los modelos, es común utilizar APIs9 proporcionadas por las compañías que los comercializan para su ejecución.

Esto nos lleva a OpenAI vs Open AI (comercial vs open source) que puede ser un factor importante que considerar al elegir qué modelo utilizar. Las compañías que ofrecen modelos comerciales suelen brindar soporte técnico y actualizaciones regulares, además de garantizar la privacidad y seguridad de los datos. Por otro lado, los modelos de código abierto (open source) permiten una mayor flexibilidad y personalización, pero pueden requerir un mayor conocimiento técnico para su implementación y mantenimiento.

En última instancia, la elección dependerá de las necesidades específicas del proyecto y de los recursos disponibles. Si se requiere una solución rápida y confiable, un modelo comercial puede ser la mejor opción. Si se dispone de un equipo de desarrollo y se necesita una solución personalizada, un modelo de código abierto podría ser más adecuado. O una combinación de ambos.

Ejemplos de aplicaciones o casos de uso

Hablando de aplicaciones, ¿cuáles son las aplicaciones en las que más están impactando los modelos de lenguaje?

- Procesado Inteligente de Documentos: resúmenes abstractivos, extracción de información o clasificación avanzada de documentos.

  • Ejemplo: Fortune reflexiona sobre el impacto de este tipo de modelos en la generación de curriculum vitae específicamente diseñados para ofertas de trabajo concretas y cómo los técnicos de recursos humanos tendrán que validar el potencial de esos candidatos10.

- Generación automática de código: generación basada en requerimientos mediante lenguaje natural, correcciones de código, documentación o mantenimiento de aplicaciones.

  • Ejemplo: OpenAI junto con GitHub ha creado el model Codex basado en GPT-3 para impulsar el uso de Github Copilot para la generación de código fuente en más de una docena de lenguajes de programación a través de ordenes sencilla en lenguaje natural11.

- Interfaces conversacionales y chatbots

  • Ejemplo: BBVA ha probado el uso de GPT-3 en conversaciones con clientes en español. A partir del histórico de la conversación, la prueba consistía en pedir un resumen para un agente bancario. Todo esto, utilizando las prompts de GPT3, sin realizar una adaptación previa, ni reentrenamiento del modelo12.

¿Cómo podemos dar instrucciones a estos modelos? Prompt Engineering

Quizás hayas oído que la prompt es un elemento central para sacar todo el rendimiento a estos modelos. ¿En qué consiste exactamente? Prompt Engineering es el proceso de diseñar y optimizar el texto de entrada (prompt) para un modelo de lenguaje, con el objetivo de mejorar su rendimiento y capacidad de generación de texto coherente y relevante en NLP. Algunas de las principales características13 que debería tener una buena prompt son:

  1. Claridad: debe ser clara y fácil de entender para el modelo y para el usuario.
  2. Relevancia: debe estar relacionada con la tarea que se está realizando y ser relevante para la entrada que se espera recibir.
  3. Concisión: debe ser lo suficientemente breve como para no sobrecargar al modelo o confundir al usuario.
  4. Informatividad: debe proporcionar información suficiente para ayudar al modelo a producir una respuesta precisa y relevante.

Retos

Sin embargo, a pesar de sus impresionantes capacidades, los modelos lingüísticos no están exentos de limitaciones, y su eficacia depende de varios factores, como la calidad de los datos de entrenamiento y la tarea a realizar. No obstante, los modelos lingüísticos representan un hito importante en el campo de la inteligencia artificial y encierran un enorme potencial para el futuro de la interacción persona-máquina.

Además de los factores mencionados anteriormente, existen otros desafíos importantes que los modelos de lenguaje enfrentan en la actualidad.

El primero de ellos es el sesgo o bias. Los modelos de lenguaje se entrenan en base a grandes cantidades de datos de texto, pero estos datos pueden contener prejuicios culturales, políticos o sociales que se reflejan en el modelo. Esto puede llevar a resultados sesgados o discriminatorios, lo que puede ser un problema serio en aplicaciones críticas como la toma de decisiones en justicia, contratación o selección de candidatos.

Otro reto es la precisión o accuracy. La precisión se refiere a la capacidad del modelo de lenguaje para producir resultados precisos y correctos en una tarea específica. Aunque los modelos de lenguaje han mejorado significativamente en los últimos años, todavía pueden cometer errores y generar resultados inexactos. Esto es especialmente cierto en tareas complejas como la traducción automática o la generación de texto coherente.

Por último, está el coste. El entrenamiento de modelos de lenguaje requiere grandes cantidades de recursos computacionales y financieros, especialmente para los modelos más grandes y complejos. Esto puede limitar el acceso a esta tecnología a empresas o individuos con recursos limitados.

En resumen

Cómo has podido ver, los modelos de lenguaje, como ChatGPT, se han convertido en una parte importante de nuestra vida diaria. Estos modelos están diseñados para predecir la distribución de probabilidad de la siguiente palabra en una secuencia de palabras, dadas las palabras precedentes, y se utilizan en tareas como el reconocimiento de voz, la traducción automática y el resumen de textos.

Los modelos de lenguaje más grandes, como GPT-3, se basan en la arquitectura Transformer, los mecanismos de auto-atención y cómo un diseño correcto de las prompts pueden tener un impacto fundamental en los resultados.

Sin embargo, estos modelos también tienen limitaciones, como el sesgo o bias y la precisión, y requieren grandes cantidades de recursos computacionales y financieros.

Agradecimientos

Quiero aprovechar esta oportunidad para agradecer sinceramente a Vanessa Bueno y Antonio Menta del equipo de desarrollo de Dolffia™ pertenecientes al equipo de Innovation & Strategic Investments por su valiosa colaboración en la redacción de este artículo. Su experiencia y conocimiento han sido fundamentales para dar forma y profundidad al contenido. También quiero expresar mi reconocimiento a Ignacio Barahona, manager en Data & Intelligence y product owner de Dolffia™, por su visión en cuanto a la aplicación de estas tecnologías en activos de negocio.

Referencias

  1. Un token es una secuencia de caracteres o símbolos que representa una unidad de significado en un lenguaje o contexto determinado. En el procesamiento del lenguaje natural, los tokens se utilizan a menudo para dividir los datos textuales en unidades más pequeñas para su análisis y procesamiento. Según OpenAI™, un (1) token equivale aproximadamente a 4 caracteres o 0,75 palabras para un texto en inglés.
  2. OpenAI™ models
  3. What’s in my AI? Analysis of datasets, Alan D. Thompson
  4. Miles de millones (nomenclarura americana)
  5. https://huggingface.co
  6. https://huggingface.co/spaces
  7. Dr Alan D. Thompson, LifeArchitect.ai (Mar/2023)
  8. Una GPU es un procesador especializado en el procesamiento de gráficos que puede acelerar significativamente el procesamiento de grandes cantidades de datos en aplicaciones de procesamiento del lenguaje natural (NLP).
  9. OpenAI API reference
  10. Artículo: Job applicants might use ChatGPT to write résumés from FORTUNE
  11. Artículo: OpenAI desarrolla una herramienta como ChatGPT que puede programar | Business Insider España
  12. Artículo: ¿Funciona GPT-3, súper modelo de inteligencia artificial, en conversaciones en español de clientes de banca? Así fue el experimento
  13. OpenAI cookbook: Techniques to improve realiability

Ebook IA

He leído y acepto la política de privacidad
Acepto recibir emails sobre actividades de recruiting NTT DATA