¿Cómo funciona ChatGPT en realidad?

Funcionamiento real de ChatGPT

Google, Wolfram Alpha y ChatGPT interactúan con los usuarios a través de un campo de texto de una sola línea y proporcionan resultados en forma de texto. Google devuelve resultados de búsqueda, una lista de páginas web y artículos que (esperemos) proporcionen información relacionada con las consultas de búsqueda. Wolfram Alpha generalmente proporciona respuestas relacionadas con matemáticas y análisis de datos.

También: Cómo usar ChatGPT: Todo lo que necesitas saber

Característica especial

El surgimiento de la IA generativa

Una nueva ola de herramientas de IA ha causado sensación en el mundo y nos ha dado una visión de una nueva forma de trabajar y encontrar la información que puede agilizar nuestro trabajo y nuestras vidas. Te mostramos cómo herramientas como ChatGPT y otros software de IA generativa están teniendo impacto en el mundo, cómo aprovechar su poder y los posibles riesgos.

ChatGPT, en cambio, proporciona una respuesta basada en el contexto y la intención detrás de la pregunta del usuario. No puedes, por ejemplo, pedirle a Google que escriba una historia o pedirle a Wolfram Alpha que escriba un módulo de código, pero ChatGPT puede hacer este tipo de cosas.

En esencia, el poder de Google radica en la capacidad de realizar enormes búsquedas en bases de datos y proporcionar una serie de coincidencias. El poder de Wolfram Alpha radica en la capacidad de analizar preguntas relacionadas con datos y realizar cálculos basados en esas preguntas.

El poder de ChatGPT radica en la capacidad de analizar consultas y producir respuestas y resultados completos basados en la mayoría de la información basada en texto accesible digitalmente en el mundo, al menos la información que existía en el momento de su entrenamiento antes de 2021.

En este artículo, veremos cómo ChatGPT puede producir esas respuestas completas. Comenzaremos examinando las principales fases de operación de ChatGPT y luego cubriremos algunos de los componentes principales de su arquitectura de IA que hacen que todo funcione.

También: Cómo utilizar el detector de estafas gratuito impulsado por IA de Norton

Además de las fuentes citadas en este artículo (muchas de las cuales son los documentos de investigación originales detrás de cada una de las tecnologías), utilicé el propio ChatGPT para ayudarme a crear esta información básica. Le hice muchas preguntas. Algunas respuestas se parafrasean dentro del contexto general de esta discusión.

Las dos principales fases de operación de ChatGPT

Usemos nuevamente a Google como analogía. Cuando le pides a Google que busque algo, probablemente sabes que no va a buscar en todo el web en el momento en que lo preguntas. En cambio, Google busca en su base de datos las páginas que coinciden con esa solicitud. Google tiene efectivamente dos fases principales: la fase de rastreo y recolección de datos, y la fase de interacción/consulta del usuario.

También: Los mejores chatbots de IA: ChatGPT y otras alternativas divertidas para probar

Hablando en términos generales (porque entrar en detalles requeriría volúmenes), ChatGPT funciona de la misma manera. La fase de recolección de datos se llama pre-entrenamiento, mientras que la fase de capacidad de respuesta del usuario se llama inferencia. La magia detrás de la IA generativa y la razón por la cual ha explotado de repente es que la forma en que funciona el pre-entrenamiento ha demostrado ser enormemente escalable. Esa escalabilidad ha sido posible gracias a las innovaciones recientes en tecnología de hardware asequible y computación en la nube.

Cómo funciona el pre-entrenamiento de la IA

Hablando en términos generales (porque entrar en detalles requeriría volúmenes), las IA se pre-entrenan utilizando dos enfoques principales: supervisado y no supervisado. Para la mayoría de los proyectos de IA hasta el conjunto actual de sistemas de IA generativa como ChatGPT, se utilizaba el enfoque supervisado.

El pre-entrenamiento supervisado es un proceso en el que se entrena a un modelo con un conjunto de datos etiquetados, donde cada entrada está asociada con una salida correspondiente.

También: Cómo hacer que ChatGPT proporcione fuentes y citas

Por ejemplo, una IA podría ser entrenada con un conjunto de datos de conversaciones de servicio al cliente, donde las preguntas y quejas del usuario están etiquetadas con las respuestas apropiadas del representante de servicio al cliente. Para entrenar a la IA, se proporcionarían preguntas como “¿Cómo puedo restablecer mi contraseña?” como entrada del usuario, y respuestas como “Puedes restablecer tu contraseña visitando la página de configuración de la cuenta en nuestro sitio web y siguiendo las indicaciones” como salida.

En un enfoque de entrenamiento supervisado, el modelo general se entrena para aprender una función de mapeo que pueda mapear las entradas a las salidas con precisión. Este proceso se utiliza a menudo en tareas de aprendizaje supervisado, como clasificación, regresión y etiquetado de secuencias.

Como podrás imaginar, hay límites en cuanto a cómo esto puede escalar. Los entrenadores humanos tendrían que anticipar todas las entradas y salidas en gran medida. El entrenamiento podría llevar mucho tiempo y estar limitado en experiencia en la materia.

También: Los 10 mejores complementos de ChatGPT (y cómo aprovechar al máximo)

Pero como hemos llegado a conocer, ChatGPT tiene muy pocos límites en cuanto a experiencia en la materia. Puedes pedirle que escriba un currículum para el personaje Chief Miles O’Brien de Star Trek, que explique la física cuántica, que escriba un fragmento de código, que escriba un breve relato y que compare los estilos de gobierno de los expresidentes de Estados Unidos.

Sería imposible anticipar todas las preguntas que se podrían hacer, por lo que realmente no hay forma de que ChatGPT pudiera haber sido entrenado con un modelo supervisado. En su lugar, ChatGPT utiliza el pre-entrenamiento no supervisado, y esto es lo que marca la diferencia.

El pre-entrenamiento no supervisado es el proceso mediante el cual un modelo se entrena con datos en los que no se asocia una salida específica con cada entrada. En cambio, se entrena al modelo para que aprenda la estructura subyacente y los patrones en los datos de entrada sin ninguna tarea específica en mente. Este proceso se utiliza a menudo en tareas de aprendizaje no supervisado, como agrupamiento, detección de anomalías y reducción de dimensionalidad. En el contexto del modelado del lenguaje, el pre-entrenamiento no supervisado se puede utilizar para entrenar un modelo para que comprenda la sintaxis y la semántica del lenguaje natural, de modo que pueda generar texto coherente y significativo en un contexto conversacional.

También: Cómo usar ChatGPT para crear una aplicación

Aquí es donde se vuelve posible el aparentemente ilimitado conocimiento de ChatGPT. Debido a que los desarrolladores no necesitan conocer las salidas que provienen de las entradas, todo lo que tienen que hacer es volcar más y más información en el mecanismo de pre-entrenamiento de ChatGPT, que se llama modelado del lenguaje basado en transformadores.

Arquitectura de transformadores

La arquitectura de transformadores es un tipo de red neuronal que se utiliza para procesar datos de lenguaje natural. Una red neuronal simula la forma en que funciona el cerebro humano procesando información a través de capas de nodos interconectados. Piensa en una red neuronal como un equipo de hockey: cada jugador tiene un papel, pero pasan el disco de un lado a otro entre jugadores con roles específicos, todos trabajando juntos para marcar el gol.

La arquitectura de transformadores procesa secuencias de palabras utilizando “autoatención” para ponderar la importancia de diferentes palabras en una secuencia al realizar predicciones. La autoatención es similar a la forma en que un lector podría volver atrás a una oración o párrafo anterior para obtener el contexto necesario para entender una nueva palabra en un libro. El transformador analiza todas las palabras en una secuencia para comprender el contexto y las relaciones entre las palabras.

También: Le pedí a ChatGPT que escribiera un complemento de WordPress que necesitaba. Lo hizo en menos de 5 minutos

El transformador está compuesto por varias capas, cada una con múltiples subcapas. Las dos subcapas principales son la capa de autoatención y la capa de alimentación hacia adelante. La capa de autoatención calcula la importancia de cada palabra en la secuencia, mientras que la capa de alimentación hacia adelante aplica transformaciones no lineales a los datos de entrada. Estas capas ayudan al transformador a aprender y comprender las relaciones entre las palabras en una secuencia.

Durante el entrenamiento, se proporciona al transformador datos de entrada, como una oración, y se le pide que haga una predicción basada en esa entrada. El modelo se actualiza en función de qué tan bien coincida su predicción con la salida real. A través de este proceso, el transformador aprende a comprender el contexto y las relaciones entre las palabras en una secuencia, lo que lo convierte en una herramienta poderosa para tareas de procesamiento de lenguaje natural como la traducción de idiomas y la generación de texto.

También: 7 consejos avanzados para escribir indicaciones en ChatGPT que necesitas saber

Una cosa a tener en cuenta es que existen problemas relacionados con la posibilidad de que estos modelos generen contenido dañino o sesgado, ya que pueden aprender patrones y sesgos presentes en los datos de entrenamiento. Las empresas que implementan estos modelos intentan proporcionar “barreras de seguridad”, pero esas barreras de seguridad pueden causar problemas. Esto se debe a que las personas tienen diferentes perspectivas y un intento de evitar el sesgo basado en una escuela de pensamiento puede ser considerado como sesgo por otra escuela de pensamiento. Esto dificulta el diseño de un chatbot universal, dada la naturaleza compleja de la sociedad en su conjunto.

Primero, vamos a discutir los datos que se alimentan en ChatGPT, y luego echaremos un vistazo a la fase de interacción con el usuario de ChatGPT y el lenguaje natural.

Conjuntos de datos de entrenamiento de ChatGPT

El conjunto de datos utilizado para entrenar a ChatGPT es enorme. ChatGPT se basa en la arquitectura GPT-3 (Generative Pre-trained Transformer 3). En realidad, aquí es donde necesitamos aclarar. La versión gratuita de ChatGPT se entrenó en CPT-3. Si pagas $20 al mes por ChatGPT Plus, tienes la opción de utilizar el conjunto de datos de entrenamiento de GPT-3 o un conjunto de datos más extenso de GPT-4.

También: ¿GPT-3.5 vs GPT-4: ¿Vale la pena la suscripción a ChatGPT Plus?

Ahora, la abreviatura GPT tiene sentido, ¿no es así? Es generativo, lo que significa que genera resultados, está pre-entrenado, lo que significa que se basa en todos estos datos que ingiere, y utiliza la arquitectura del transformador que pondera las entradas de texto para entender el contexto.

GPT-3 se entrenó con un conjunto de datos llamado WebText2, una biblioteca de más de 45 terabytes de datos de texto. Cuando puedes comprar un disco duro de 16 terabytes por menos de $300, un corpus de 45 terabytes puede no parecer tan grande. Pero el texto ocupa mucho menos espacio de almacenamiento que las imágenes o los videos.

También: Cómo (y por qué) suscribirse a ChatGPT Plus

Esta enorme cantidad de datos permitió a ChatGPT aprender patrones y relaciones entre palabras y frases en lenguaje natural a una escala sin precedentes, lo cual es una de las razones por las que es tan efectivo para generar respuestas coherentes y contextualmente relevantes a las consultas de los usuarios.

Aunque ChatGPT se basa en la arquitectura GPT-3, se ha ajustado en un conjunto de datos diferente y se ha optimizado para casos de uso conversacionales. Esto le permite proporcionar una experiencia más personalizada y atractiva para los usuarios que interactúan con él a través de una interfaz de chat.

Por ejemplo, OpenAI (desarrolladores de ChatGPT) ha lanzado un conjunto de datos llamado Persona-Chat que está específicamente diseñado para entrenar modelos de IA conversacionales como ChatGPT. Este conjunto de datos consta de más de 160,000 diálogos entre dos participantes humanos, a cada participante se le asigna una personalidad única que describe su trasfondo, intereses y personalidad. Esto permite que ChatGPT aprenda a generar respuestas personalizadas y relevantes para el contexto específico de la conversación.

También: Cómo utilizar ChatGPT en tu navegador con las extensiones adecuadas

Además de Persona-Chat, se utilizaron muchos otros conjuntos de datos de conversación para ajustar ChatGPT. Aquí tienes algunos ejemplos:

  • Corpus de diálogos de películas de Cornell: un conjunto de datos que contiene conversaciones entre personajes en guiones de películas. Incluye más de 200,000 intercambios de conversación entre más de 10,000 pares de personajes de películas, abarcando una amplia gama de temas y géneros.
  • Corpus de diálogos de Ubuntu: una colección de diálogos de múltiples turnos entre usuarios que buscan soporte técnico y el equipo de soporte de la comunidad de Ubuntu. Contiene más de 1 millón de diálogos, lo que lo convierte en uno de los conjuntos de datos públicamente disponibles más grandes para la investigación en sistemas de diálogo.
  • DailyDialog: una colección de diálogos humanos en una variedad de temas, que van desde conversaciones de la vida diaria hasta discusiones sobre temas sociales. Cada diálogo en el conjunto de datos consta de varios turnos y está etiquetado con un conjunto de información sobre emociones, sentimientos y temas.

Además de estos conjuntos de datos, ChatGPT se entrenó con una gran cantidad de datos no estructurados encontrados en internet, incluyendo sitios web, libros y otras fuentes de texto. Esto permitió que ChatGPT aprendiera sobre la estructura y los patrones del lenguaje en un sentido más general, que luego se pudo ajustar para aplicaciones específicas como la gestión de diálogos o el análisis de sentimientos.

ChatGPT es un modelo distinto que se entrenó utilizando un enfoque similar a la serie GPT pero con algunas diferencias en la arquitectura y los datos de entrenamiento. ChatGPT tiene 1.5 mil millones de parámetros, lo cual es menor que los 175 mil millones de parámetros de GPT-3.

También: Los mejores generadores de arte de IA para probar

En general, los datos de entrenamiento utilizados para ajustar ChatGPT son típicamente conversacionales y están específicamente seleccionados para incluir diálogos entre humanos, lo que permite que ChatGPT aprenda a generar respuestas naturales y atractivas en un formato conversacional.

Piensa en el entrenamiento no supervisado de ChatGPT de esta manera: se le proporcionó una gran cantidad de datos y se le dejó a su aire para encontrar patrones y dar sentido a todo ello. Este es el mecanismo que permitió que los nuevos sistemas de IA generativa escalaran tan rápidamente.

Mientras que la mayor parte del trabajo pesado para la IA generativa de ChatGPT se realiza durante la pre-entrenamiento, también debe ser capaz de entender preguntas y construir respuestas a partir de todos esos datos. Eso se logra mediante la fase de inferencia, que consiste en procesamiento del lenguaje natural y gestión del diálogo.

¿Qué hay acerca de la participación humana en la pre-entrenamiento?

A pesar de la escalabilidad inherente del pre-entrenamiento no supervisado, hay evidencia de que la asistencia humana pudo haber estado involucrada en la preparación de ChatGPT para uso público.

La gran revelación se dio en un artículo en la revista TIME que discutió el uso de “etiquetadores de datos” humanos que ganaban entre $1.32 y $2/hora en Kenia. Según el informe de TIME, la responsabilidad de estos trabajadores era escanear contenido aterrador y sexualmente explícito en Internet para señalarlo en el entrenamiento de ChatGPT.

También: Cómo acceder a miles de audiolibros gratuitos gracias a la IA de Microsoft y Project Gutenberg

Otro artículo, publicado en Martechpost, un boletín de noticias sobre IA, afirma que el modelo de lenguaje grande fue entrenado utilizando un proceso llamado Reforzamiento del Aprendizaje a partir de la Retroalimentación Humana (RLHF, por sus siglas en inglés). Según el artículo, “El proceso de entrenamiento involucró un modelo inicial ajustado utilizando aprendizaje supervisado, con entrenadores humanos desempeñando tanto el papel del usuario como el de un asistente de IA”.

Existen algunas sutilezas cuando se trata de lo que significa la palabra “entrenamiento”. Según el propio ChatGPT, “OpenAI no usó el aprendizaje por refuerzo con retroalimentación humana para entrenarme. En cambio, fui pre-entrenado utilizando una combinación de técnicas de aprendizaje no supervisado y supervisado, como modelado de lenguaje, codificación automática y predicción de secuencias. Mi entrenamiento involucró el procesamiento de cantidades masivas de datos de texto de Internet, lo que me permitió aprender patrones y relaciones entre palabras y frases”.

La IA continuó, “Sin embargo, una vez que fui pre-entrenado, los investigadores y desarrolladores pueden utilizar el aprendizaje por refuerzo con retroalimentación humana para ajustarme para tareas o dominios específicos, como responder preguntas o generar texto. En estos casos, los humanos pueden proporcionar retroalimentación en forma de recompensas o penalizaciones, que se pueden utilizar para actualizar mis parámetros y mejorar mi rendimiento en tareas similares en el futuro”.

También: Le pregunté a ChatGPT, Bing y Bard qué les preocupa. La IA de Google se volvió Terminator

Esto parece encajar con los informes de Marktechpost y TIME, en el sentido de que el pre-entrenamiento inicial fue no supervisado, lo que permitió alimentar una enorme cantidad de datos en el sistema. Pero al construir las respuestas del diálogo que se comunican con los usuarios (más información a continuación), al parecer los motores de respuesta fueron entrenados tanto en los tipos de respuestas como en filtrar material inapropiado, y ese entrenamiento parece haber sido asistido por humanos.

Me puse en contacto con OpenAI (el fabricante de ChatGPT) para obtener aclaraciones, pero aún no he recibido respuesta. Si la empresa me responde (fuera de ChatGPT en sí), actualizaré el artículo con su respuesta.

Procesamiento del lenguaje natural

El procesamiento del lenguaje natural (PLN) se centra en permitir que las computadoras comprendan, interpreten y generen lenguaje humano. Con el crecimiento exponencial de los datos digitales y el uso cada vez mayor de interfaces de lenguaje natural, el PLN se ha convertido en una tecnología crucial para muchas empresas.

Las tecnologías de PLN se pueden utilizar para una amplia gama de aplicaciones, incluyendo análisis de sentimientos, chatbots, reconocimiento de voz y traducción. Al aprovechar el PLN, las empresas pueden automatizar tareas, mejorar el servicio al cliente y obtener información valiosa de los comentarios de los clientes y las publicaciones en redes sociales.

También: Cómo escribir mejores sugerencias para ChatGPT

Uno de los desafíos clave en la implementación del PLN es lidiar con la complejidad y ambigüedad del lenguaje humano. Los algoritmos de PLN necesitan ser entrenados con grandes cantidades de datos para reconocer patrones y aprender los matices del lenguaje. También necesitan ser continuamente refinados y actualizados para mantenerse al día con los cambios en el uso y contexto del lenguaje.

La tecnología funciona descomponiendo las entradas de lenguaje, como frases o párrafos, en componentes más pequeños y analizando su significado y relaciones para generar ideas o respuestas. Las tecnologías de PLN utilizan una combinación de técnicas, incluyendo modelado estadístico, aprendizaje automático y aprendizaje profundo, para reconocer patrones y aprender a partir de grandes cantidades de datos con el fin de interpretar y generar lenguaje de manera precisa.

Gestión del diálogo

Es posible que hayas notado que ChatGPT puede hacer preguntas de seguimiento para aclarar tu intención o comprender mejor tus necesidades, y proporcionar respuestas personalizadas que tengan en cuenta todo el historial de la conversación.

Así es como ChatGPT puede tener conversaciones de varias vueltas con los usuarios de una manera natural y atractiva. Implica el uso de algoritmos y técnicas de aprendizaje automático para comprender el contexto de una conversación y mantenerlo a lo largo de múltiples intercambios con el usuario.

Cómo utilizar: Midjourney | Creador de imágenes de Bing | Craiyon | Difusión estable

El manejo del diálogo es un aspecto importante del procesamiento del lenguaje natural porque permite que los programas de computadora interactúen con las personas de una manera que se siente más como una conversación que como una serie de interacciones aisladas. Esto puede ayudar a generar confianza y compromiso con los usuarios, y en última instancia conducir a mejores resultados tanto para el usuario como para la organización que utiliza el programa.

Por supuesto, los especialistas en marketing quieren expandir cómo se genera la confianza, pero esta también es un área que podría resultar aterradora porque es una forma en que la IA podría manipular a las personas que la utilizan.

Un vistazo al hardware que ejecuta ChatGPT

Microsoft recientemente lanzó un video que explica cómo se utiliza Azure para crear una red que ejecute todos los cálculos y almacenamiento necesarios para ChatGPT. Es interesante verlo, tanto por su discusión sobre Azure como por la arquitectura de la IA en hardware real.

Preguntas frecuentes

¿En qué se diferencia la IA generativa de ChatGPT de los chatbots tradicionales?

Los chatbots tradicionales operan en base a reglas predefinidas y árboles de decisiones, respondiendo a entradas de usuario específicas con respuestas predeterminadas. ChatGPT, por otro lado, utiliza IA generativa, lo que le permite producir respuestas únicas al comprender el contexto y la intención, haciendo que las interacciones sean más dinámicas y parecidas a las humanas.

¿Por qué se considera que el preentrenamiento no supervisado es un cambio de juego para modelos de IA como ChatGPT?

El preentrenamiento no supervisado permite que los modelos de IA aprendan a partir de grandes cantidades de datos no etiquetados. Este enfoque ayuda al modelo a captar los matices del lenguaje sin estar restringido a tareas específicas, lo que le permite generar respuestas más diversas y contextualmente relevantes.

¿Existen limitaciones en la capacidad de ChatGPT para comprender y responder a consultas de usuario?

Sí. ChatGPT se basa en los datos con los que fue entrenado, lo que significa que no siempre puede tener información sobre temas muy recientes o temas de nicho. Además, sus respuestas se generan en función de patrones en los datos, por lo que ocasionalmente puede producir respuestas incorrectas en términos factuales o carentes de contexto. Además, los datos con los que se entrena pueden ser incorrectos o incluso estar diseñados para ser engañosos.

Y ahora lo sabes

Aunque tenemos más de 3,200 palabras, esta sigue siendo una descripción muy rudimentaria de todo lo que sucede dentro de ChatGPT. Dicho esto, tal vez ahora entiendas un poco más sobre por qué esta tecnología ha explotado en los últimos meses. La clave de todo esto es que los datos en sí mismos no son “supervisados”, y la IA es capaz de tomar lo que se le ha proporcionado y darle sentido.

Además: No estamos preparados para el impacto de la IA generativa en las elecciones

Realmente impresionante.

Para concluir, alimenté un borrador de todo este artículo a ChatGPT y le pedí a la IA que describiera el artículo en una oración. Aquí tienes:

ChatGPT es como el primo inteligente de Google y Wolfram Alpha que puede hacer cosas que ellos no pueden, como escribir historias y módulos de código.

Se supone que ChatGPT es una tecnología sin ego, pero si esa respuesta no te da un poco de escalofríos, es porque no has estado prestando atención.

¿Qué opinas? ¿Estás usando ChatGPT? ¿Qué preguntas todavía tienes sobre cómo funciona? Compártelas con nosotros en los comentarios a continuación.


Puedes seguir las actualizaciones diarias de mi proyecto en las redes sociales. Asegúrate de seguirme en Twitter en @DavidGewirtz, en Facebook en Facebook.com/DavidGewirtz, en Instagram en Instagram.com/DavidGewirtz, y en YouTube en YouTube.com/DavidGewirtzTV.