Seguro que ya has oído hablar de ChatGPT, la herramienta capaz de responder a todas tus preguntas en tiempo real. Lanzada a finales de 2022, parece revolucionar el campo de la inteligencia artificial. ¡Te lo contamos todo!
ChatGPT (Chat Generative Pretrained Transformer) fue desarrollado en noviembre de 2022 por la empresa estadounidense OpenAI. Se trata de un modelo de lenguaje que permite a los usuarios comunicarse en tiempo real con un bot en un chat en línea. El bot es capaz de mantener una conversación en varios idiomas, responder a preguntas, transmitir información sobre numerosos temas o compartir ideas.
Además de estas distintas funciones, ChatGPT es capaz de memorizar conversaciones, lo que le permite tener en cuenta respuestas anteriores y permitir al usuario hacer correcciones. Se trata, por tanto, de una herramienta inteligente e innovadora que facilita la comunicación y el acceso al conocimiento.
Pero, ¿cómo funciona ChatGPT?
ChatGPT es un algoritmo de NLP (Natural Language Processing) que comprende y genera un lenguaje natural de forma autónoma. Para ser más precisos, es una versión dedicada al gran público de GPT3, un algoritmo que genera texto especializado en la redacción de artículos y el análisis de sentimientos. De esta manera, ChatGPT funciona como GPT3, gracias a un modelo previamente entrenado sobre un enorme corpus de 500 000 millones de datos de texto. Utiliza dos tipos diferentes de aprendizaje: el aprendizaje supervisado y el reinforcement learning.
Durante la fase de aprendizaje supervisado, recibe conversaciones en las que se interpretan ambos roles (bot y usuario) de forma que se etiquetan los datos (preguntas y respuestas esperadas asociadas). Durante la fase de aprendizaje reforzado, se utilizan las interacciones anteriores para clasificar las respuestas. Esta clasificación la realizan entrenadores humanos (Reinforcement Learning from Human Feedback) y permite crear un modelo de recompensa basado en esta clasificación.
Por ese motivo, además del entrenamiento previo, el algoritmo sigue autoentrenándose durante sus interacciones con los usuarios. Esto es lo que le permite recordar el contexto y los mensajes de una conversación.
Reinforcement Learning from Human Feedback al detalle
Como ya se ha mencionado, la fase de reinforcement learning es, más concretamente, una fase de Reinforcement Learning from Human Feedback (RLHF) que funciona con entrenadores humanos reales. Esta fase se divide en dos etapas, que especificamos:
- Tras realizar la fase de aprendizaje supervisado sobre datos etiquetados y aprender una fuente supervisada, se genera un modelo SFT (Supervised Fine Tuning). A continuación, los formadores humanos votan sobre la idoneidad de los resultados del modelo, creando un conjunto de datos de comparación sobre el que se entrena un modelo de recompensas RM (Reward Model).
- El modelo de recompensa RM se optimiza mediante el algoritmo de reinforcement learning PPO. El algoritmo PPO es un algoritmo «on-policy» que aprende y actualiza las políticas actuales basándose directamente en las acciones y recompensas obtenidas. Esto genera un nuevo modelo, denominado «Policy Model».
Este «Policy Model» mejora el modelo inicial SFT y proporciona un nuevo dataset comparativo. A partir de ahí, los dos pasos pueden repetirse en bucle.
¡Preguntemos a ChatGPT por los Data Scientists!
Ahora que ya conocemos los principales modelos y algoritmos sobre los que se basa ChatGPT, vamos a probar juntos su rendimiento.
Para ello, nos uniremos al chat en la siguiente dirección: https://chat.openai.com/auth/login. A continuación, pedimos al bot que describa el papel de un Data Scientist. Para obtener una respuesta optimizada, utilizamos una pregunta precisa, es decir, una frase que entable la conversación de forma clara.
ChatGPT es capaz de informarnos sobre el trabajo del Data Scientist y de continuar la conversación que hemos iniciado. Este es un pequeño atisbo de las habilidades de esta herramienta, que no solo es una fuente de información, sino que también puede escribir un texto, resumir otro o proponer contenidos relacionados con un tema. Por tanto, ¡su desarrollo podría competir con redactores!
¿Y los desarrolladores?
ChatGPT también tiene recursos que normalmente solo están al alcance de los desarrolladores informáticos. En efecto, puede generar código en varios lenguajes de programación (Python, Java, C++…) y desarrollar un algoritmo para resolver un problema. Para obtener tal resultado, basta con indicar claramente lo que debe devolver el código que se va a generar. También se utiliza en el campo del debugging y es capaz de identificar el origen de un fallo informático y corregirlo, como cualquier otro software.
Para los Data Engineers, ChatGPT también es útil ya que puede simular una Máquina Virtual (VM) con un terminal Linux.
Por último, ChatGPT también puede detectar vulnerabilidades en un programa.
Así pues, ChatGPT parece ser un modelo de PNL funcional desde el punto de vista de la redacción o de la informática, ¡y esto se aplica a muchos campos!
¿Cuáles son las limitaciones de esta herramienta?
Cuando se le pregunta, ChatGPT responde: «Soy un modelo de procesamiento del lenguaje entrenado por OpenAI. Mis conocimientos se limitan a la fecha de corte de mis datos de entrenamiento, que es 2021. No puedo navegar por Internet para consultar información ni acceder a datos que no estén en mi memoria. Hago todo lo posible por responder a las preguntas de forma precisa y completa, pero puede que mi respuesta no siempre sea correcta o esté actualizada”.
De hecho, desde su lanzamiento, las principales críticas que se han hecho a ChatGPT se refieren a su límite temporal, ya que su conocimiento se detiene en los acontecimientos anteriores al año 2021, y las respuestas erróneas pueden hacer que se comparta información falsa, aunque la tasa de error siga siendo mínima.
En cuanto al código, ChatGPT también tiene limitaciones, ya que el código generado puede contener muchos errores a partir de cierto nivel de dificultad. La herramienta se limita a programas clásicos y repetitivos, pero no es capaz de realizar tareas de análisis informático, por ejemplo. Por último, sus recursos en ciberseguridad son fácilmente accesibles y muchos temen que puedan ser utilizados por los hackers con fines malintencionados.
Desde el punto de vista ético, la herramienta se enfrenta a otros problemas. Se ha prohibido su uso y se ha vetado su acceso en algunas escuelas estadounidenses ante los numerosos casos de plagio.
Por último, como cualquier modelo estadístico, ChatGPT tiene limitaciones emocionales. A diferencia de la inteligencia humana, no tiene pensamiento, intuición, moral ni emociones, lo que puede suponer un cierto peligro.
Así que, como cualquier innovación, ChatGPT tiene sus límites. No obstante, sigue siendo una herramienta de inteligencia artificial con un gran potencial cuyo rendimiento sigue mejorando con el tiempo.
Si quieres descubrir otros temas relacionados con otros algoritmos de PNL y otros sectores en los que la IA está cobrando cada vez más protagonismo, navega por nuestro blog.