En los últimos 3 años hemos tenido un boom de modelos a gran escala con billones de parámetros gracias a la arquitectura de transformers y el uso de TPU’s.
Muchos de estos modelos se han enfocado en el análisis de secuencias de texto con múltiples lenguajes e incluso código de programación, dando paso a modelos asombrosos como Chinchilla, LaMDA, OPT-175B, GPT3 y PaLM, en este blog nos enfocaremos en estos dos últimos.
GPT-3 es un modelo de inteligencia artificial creado por OpenAI y a hoy uno de los más famosos y robustos modelos en la industria. Quizá GPT3 (Generative Pre-trained Transformer) no sea un tema de la actualidad tomando en cuenta que es un modelo lanzado en 2020 pero hay que recordar que en esa época fue el modelo de AI entrenado con mayor cantidad de parámetros de la historia, 173 billones para ser exactos y abrió la puerta al entrenamiento de modelos de AI a gran escala.
La pregunta ahora es, ¿para que sirve GPT-3 y que se consigue con tan alta cantidad de parámetros en el entrenamiento? La respuesta más simple es: para enseñar a una AI (Artificial Intelligence) nuestro lenguaje, el lenguaje que usamos día a día para comunicarnos.
Al enseñarle el lenguaje que hablamos a una inteligencia artificial logramos que un ente no biológico aprenda el cómo nos comunicamos entre nosotros y cómo el ser humano entiende el mundo a través del texto y el habla.
Si lo piensas, el lenguaje es algo que la humanidad ha creado, formado y mejorado a través de toda su historia, de manera que efectivamente esto no es una tarea sencilla.
Pero una vez la AI aprende a identificar las secuencias de texto y a darles sentido semántico se pueden lograr cosas como los ejemplos que verás a continuación.
En este caso interactúe con el módulo de chat de GPT-3. Le pregunté si sabía qué era Platzi a lo que respondió afirmativamente y con un contexto adecuado de lo que es la plataforma. Luego, le pregunto por cursos específicos y si conoce el link de aquellos cursos, para mi sorpresa responde “correctamente” con la URL https://platzi.com/cursos/redes-neuronales-artificiales/ que no es propiamente la URL de mi curso, sino eshttps://platzi.com/cursos/redes-neuronales/.
Aunque no fue la URL, es un resultado muy aproximado. Aun así, intento corregirlo y GPT-3 aprende y agradece por enseñarle.
Por último, le pregunto si es un buen curso, a lo que responde que sí y que cuenta con buenas reviews; lo que es totalmente cierto, así que te invito también a tomarlo 😃
Otra característica es la capacidad de crear de GPT-3. Para este ejemplo, solicité la creación de un aviso publicitario para Platzi y, aunque no soy un experto en copy, creo que se obtienen muy buenos resultados.
Luego quise enfocar el copy a una audiencia específica entre los 35 y 50 años. La AI agrega un mensaje de “No te quedes atrás y comienza a aprender hoy mismo” que, según entiendo, es algo muy orientado a este target.
En este caso, le pedí a GPT-3 crear un mini cuento de terror ambientado en Bogotá y con una entidad o espíritu indígena (si, lo sé, evidentemente no soy el más creativo para este tipo de cosas 😜)
GPT-3 entrega un resultado satisfactorio y vale la pena resaltar que en algún punto de la generación de texto hace una alerta en donde menciona que el contenido puede ser violento u ofensivo, y si comprendo los riesgos.
Esto me pareció adecuado para este tipo de tecnologías, así que un punto más a favor para el equipo de OpenAI.
Esta vez quise probar la creación de “keywords” o palabras clave basadas en un texto. El texto de ejemplo hace parte de uno de los cursos que dicto en Platzi Curso Básico de Manipulación y Transformación de Datos con Pandas y NumPy.
La respuesta de GPT-3 estuvo bastante acorde, identificando:
Validando el texto de entrada, en verdad son las palabras que me gustaría rescatar para alguna búsqueda o aumentar el SEO.
GPT3 cuenta con al menos 45 distintas tareas para el manejo de lenguaje natural y secuencias de texto. Esto es un gran abanico de herramientas y utilidades que ya se encuentran a la mano de todo mundo y que el equipo de OpenAI sigue mejorando constantemente.
PaLM es un LLM (large language models), el cual consiste en un entrenamiento bastante robusto con una enorme cantidad de parámetros para lograr resultados increíbles. El 4 de Abril del presente año 2022 el equipo de Google anunció PaLM (Pathways Language Model).
PaLM como GPT-3 se enfoca en el procesamiento de lenguaje y secuencias de texto, incluso pregunté a GPT-3 por este modelo y la siguiente fue su respuesta.
Lo interesante con este modelo es que el equipo de Google asegura haber entrenado a PaLM con 540 billones de parámetros. Recordemos que GPT3 en su lanzamiento contaba con 173 billones, y con tal diferencia el equipo de Google obtiene resultados increíbles en:
En la página oficial de PaLM, aseguran que obtiene un excelente rendimiento en 28 de las 29 tareas con las que se testeo y es notablemente superior a otros modelos parecidos como lo son GLaM, GPT-3, Megatron-Turing NLG, Gopher y Chinchilla.
Estas afirmaciones lo dejan muy por encima en el estado del arte de este tipo de modelos.
Lamentablemente el equipo de Google no ha publicado una API o acceso a este modelo, de manera que no se pueden hacer las respectivas pruebas y comparaciones así que solo nos queda confiar en su palabra y lo publicado en su paper.
Veamos un poco de lo que el equipo asegura lograron con PaLM.
Este caso es un inocente chiste que habla de la contratación de una ballena 🐳 para el equipo de TPU con el fin de mostrarles como comunicarse entre distintos “pods”.
PaLM identifica y explica que el chiste se encuentra en que la palabra “pod” sirve tanto para el grupo de TPUs, como para un grupo de ballenas (entran risas). Lo interesante es que este no es un chiste que pueda entender todo el mundo, hace falta tener contexto de deep learning y de ballenas para encontrarle el sentido. Como lo ves, PaLM lo logra.
En este ejemplo, se demuestra como PaLM puede hacer un razonamiento paso a paso de problemas aritméticos de primaria.
El razonamiento no solo consiste en sumas y restas, sino también en tener el contexto humano y sentido de lo que está ocurriendo para resolver el problema, siguiendo así una cadena de pensamiento.
En el primer caso llevar código de C a Python resulta una tarea muy sencilla para este modelo. Para el segundo caso logra crear una función desde cero netamente con una entrada de texto que describa el comportamiento que debe tener el código.
Lo anterior se logra gracias a que PaLM, como otros modelos de este estilo, fue entrenado con distintos repositorios de Github en donde se encuentran no solo código sino también documentación y comentarios que indican en qué consiste dicho código.
Sin duda alguna, año tras año tendremos modelos muy robustos entrenados para un sin número de tareas de este estilo y solo hará falta implementarlos en una API para empezar a sacarles provecho.
La gran cantidad de modelos, en mi opinión, representa algo bueno y es que se regulará el uso y los precios de estos en el mercado, pues no existirá un único producto que entregue excelentes resultados. Por ahora, seguro que puedes encontrar posibilidades infinitas de implementar este tipo de modelos en tu empresa, negocio, proyecto o emprendimiento.
Te dejo algunos enlaces que te serán de utilidad si te interesa mas del tema.
Y si quieres aprender a utilizar detalle modelos de OpenAI te recomiendo el
[Curso de Desarrollo de Chatbots con OpenAI](https://platzi.com/cursos/openai-api/
Sígueme en Instagram/Twitter como @alarcon7a, ¡hasta una próxima!
Desde hace dos años hasta ahora, el tema de las redes neuronales ha sido algo que me ha dejado impresionado.
Este post me gustó mucho e hizo despertar nuevamente la curiosidad para adentrarme un poco más en este campo.
Pondré este curso en mi lista de cursos antes de que finalice el 2022, diré, en la lista de realizables antes de que acabe el 2022.
Gracias por el post!
Buenos días.
Considero que la IA apoyará al humano en conseguir a resolver áreas de oportunidad o necesidades que existente actualmente en el mundo y que estas deben ser solucionadas. Hay mucho por abarcar y con los fines que existen solo es para unos cuantos temas.
Es impresionante lo que logro desarrollar Open-AI