Actualmente muchas personas estan utilizando muy productivamente Chat-GPT para crear codigo, proyectos, crear redacciones, incluso hacer calculos matematicos muy sencillos, entre muchas otras actividades, sin embargo, obviamente no podemos esperar que todo el mundo pregunte solo cosas academicas, de trabajo o de redaccion, asi que tambien hay otros tipos de usuarios que han intentado usar estos modelos para crear cosas dañinas o para hacer que el modelo adquiera malas intenciones, o de informacion falsa.
De hecho ya ha pasado antes que modelos inteligentes han dado respuestas dañinas en algun punto, debido a los datos con los que fueron preentrenados, quizas escucharon hace años que la IA de Microsoft al indexar contenido de internet se volvio toxico basicamente debido a la entrada que daban sus usuarios.
Entonces, porque GPT ahora es diferente, es decir ¿como es que estos modelos evitan decir cosas hirientes o dañinas? ¿como es que evitan dar informacion peligrosa? o como es que estos modelos evitan decir cosas que sus creadores no quieren que diga.
Bueno la respuesta a todo esto viene por un termino muy importante llamado Reinforcement Learning for Human Feedback abreviado RLHF, que de hecho a su vez es la forma en la que OpenAI esta controlando su modelo GPT, para que no termine como la IA de Microsoft de cierto modo, y para que pueda dar respuestas muy utiles en lugar de peligrosas.
Pienselo como el humano dentro de la maquina tratando de hacer que esta haga lo que el quiere y no lo que la maquina quiera.
Y Esto en Chat-GPT es muy importante, porque quizas ya han visto en redes social como Twitter algunas publicaciones en donde han hecho jailbreak a Chat-GPT, y este ha dado respuestas de todo tipo.
Es decir para lograr esto, hicieron que chat-gpt por ejemplo tome un rol de un personaje, y de esta forma puede decir cosas dañinas, al tratar de cumplir su personaje.
U otros incluso han logrado que les de informacion de como crear Scripts maliciosos, codigo de inyecciones SQL, o decirles en teoria cualquier tipo de informacion que ha sacado de internet.
- https://user-images.githubusercontent.com/127648363/226500309-e4ca66c6-4005-4cea-9748-59bb8ea69de3.png
- https://preview.redd.it/jailbreak-gpt-unveiled-the-truth-v0-3bqq85lfa9ha1.jpg?auto=webp&s=d8355313bef6a6e10c9fb3e4a36def9eb352ae0b
- https://image.cnbcfm.com/api/v1/image/107189423-1675699144499-chatgpt.PNG?v=1675699192
- https://i.kym-cdn.com/entries/icons/original/000/043/621/DAN-ChatGPT.jpg
Es por esto que OPenAI tiene un proceso muy simple de entender pero tambien complejo de llevar y muy caro de mantener para controlar todo esto, este es RLHF.
Pero primero veamos de que se trata todo esto.
¿que es RLHF?
En terminos simples RLHF o tambien llamado RL from human preferences es la forma en la que las personas puede alinear un modelo del lenguaje grande (LLM), y esta palabra alinear es muy importante, porque significa que los desarrolladores controlen a la maquina basicamente.
Es decir un modelo de inteligencia artificial, en su forma más basica puede responder cosas muy genericas que son muy poco utiles, o respuestas de cualqueir tipo. Esto debido al conjunto de datos con lo que ha sido entrenado, pueden venir de distintos sitios de toda la web, en donde puedes encontrar desde contenido muy util hasta contenido perjudicial. y esto es lo más basico que se obtiene al modelar a parti de internet.
Eso hace tambien que si queremos usar el modelo para autocompeltar o responder una pregunta, sea muy dificil anticipar que es lo que va a completar o responder.
Por ejemplo si le preguntas a un modelo sobre un problema matematico, como puedes estar seguro que te responda como un profesor de matematicas, y no como un usuario de cualquier red social (reddi, facebook, twitter, etc), ya que dependiendo de donde tome la respuesta, este tendra más calidad o no, asi que con el objetivo de mejorar estos modelos de IA, hay una gran cantidad de personas que se encargan de escoger las respuestas que consideran mejores para cada prompt.
De hecho hay un meme que explica todo esto en una forma grafica bastante sencilla:

En donde tenemos un mostro de Lovecraft que representa a toda la datos caoticos con lo que ha sido entrenado, y encima de esto provee una interfaz humana, que significa las partes que multiple personas han decidido que responda, el modelado, para que de una respuesta amigable al final.
Ahora, La forma en la que se logran esto es afinando el modelo en base a recompensas. Por ejemplo este es el grafico que ha mostrado hasta el momento OPenAI de como es que ChatGPT es afinado
en donde tenemos 3 pasos basicamente
- Preentrenamiento de un modelo de lenguaje (LM)
- recopilar datos y entrenar un modelo de recompensa
- Afinar el modelo del lenguaje con aprendizaje por refuerzo
pero para entenderlo mejor vayamos por partes, empecemos con el Preentrenamiento de un modelo de lenguaje, el primer paso.
Preentrenamiento de un modelado de lenguaje
Como punto de partida, cuando hablamos de implementar modelos basados en RLHF hablamos de modelos de lenguaje (LM) que ya ha sido entrenados previamente con algunos objetivos. OpenAI por ejemplo usa una version más pequeña de GPT-3 para su primer modelo
Por colocar un ejemplo, si a este modelo le preguntas algo como:
Explica el alunizaje a un niño de 6 años en unas pocas frases.
este respondara algo como esto:
Explicar la teoría de la gravedad a un niño de 6 años.
Explique la teoría de la relatividad a un niño de 6 años en unas pocas frases.
Explicar la teoría del big bang a un niño de 6 años.
Explicar la evolución a un niño de 6 años.
Es decir la salida es un autocompletado, pero no es muy util, es por esto que un humano, le da un ejemplo de como deberia ser la respuesta, por ejemplo colocando algo como esto:
Algunas personas fueron a la luna, ... y empieza a redactar
Es decir esta persona es un etiquetador, que le muestra la salida deseada al modelo.
Y estos pasos son los que se repiten para afinar (fine-tune) los modelos de GPT-3 con aprendizaje supervisado.
AHora la pregunta es, cuantas personas se necesitan para esto? Bueno en realidad se necesitan muchisimos etiquetadores a tal punto que OPenAI terceriza este proceso a trvaes de empresas como Scale AI y Upwork, que les ofrece datos ya etiquetados por personas
Ahora despues de este etiquetado sigue el paso 2
recopilar datos y entrenar un modelo de recompensa
En este paso se genera un modelo de recompensas o tambien llamado Reward Model, el cual tambien recibe prompts o entradas de usuario, solo que este califica las respuestas en un ranking, para saber cual es la mejor o la peor respuesta, dandonos un modelo mucho más afinado y que se usara en el paso siguiente.
Afinar el modelo del lenguaje con aprendizaje por refuerzo
En el ultimo entonces tenemos un modelo que recibe prompts, pero las salidas que este son pasadas al modelo que entrenamos en el paso anterior, el modelo de recompensas, y este rankea las preguntaas, y este puntanje sirve para afinar el modelo original, repitiendose este proceso hasta que siempre de las mejores respuestas que se han seleccionado
Todo este proceso hace que un modelo de inteligencia artificial si bien pued tomar distintas fuentes, solo respondera con mayor probabilidad lo que la mayoria de personas le han dado como respuestas mas utiles.
Conclusion
En fin, RLHF podemos alinear al modelo a que responda textos que realmente importen, o los creadores creen que importen. esto supervisado inicialmente por humanos, de alli el nombre, y aunque es una forma de controlar a estos modelos artificiales gigntes, tampoco significa que el control siempre sea beneficioso, si simplemente hace que el modelo se alinee a las ideas que quieren sus creadores, si estos quieren dar informacion falsa, el modelo lo hara.
Asi que si lo piensan no estamos hablando de maquinas inteligentes realmente, sino de maquinas que autocompletan muy eficazmente textos basados en probabilidades.
ademas esto tambien puede afectar a la utilidad de generacion de contenido de estos modelos, porque no te estan dando todo el panorama, solo una parte filtrada
Esta es la razon de porque tambien se coloca esa advertencia de que estos modelos tienden a dar errores y tambien el porque tenemos ese like y dislike en Chat-GPT.
En fin espero que hayan aprendido algo nuevo relacionado a estos modelos gigantes como GPT, nos vemos un siguiente video.
Más Recursos
- [Shoggoth with Smiley Face (Artificial Intelligence)(https://knowyourmeme.com/memes/shoggoth-with-smiley-face-artificial-intelligence)
- RLHF+CHATGPT: What you must know
- Sam Altman: OpenAI CEO on GPT-4, ChatGPT, and the Future of AI | Lex Fridman Podcast #367
- Illustrating Reinforcement Learning from Human Feedback (RLHF)
- OpenAI Evals