Enmilocalfunciona

Thoughts, stories and ideas.

Chat GPT: El nuevo gurú de la programación

Publicado por Jesús García Navarro el

Chat GPTInteligencia ArtificialProgramacionIAUI Development

Antes que nada, decir que este texto que estáis viendo no ha sido generado por ninguna Inteligencia Artificial (I.A.), sino que lo ha redactado un humilde humano con sus virtudes y sus defectos. Paradójicamente podemos pedirle al mismo Chat GPT que se autodefina, y dará una respuesta que podría ser mucho mejor de la que yo mismo puedo ofrecer, o no.

Recuerdo aquellos primeros temas de asignaturas como "Introducción a la programación", o similares, de la carrera de Ingeniería Informática, y de cómo te explicaban las distintas generaciones y evolución de los ordenadores y de los lenguajes de programación dejando siempre para el futuro la generación de la computación cuántica e inteligencia artificial. Pues bien, podemos afirmar, sin miedo a equivocarnos, que estamos entrando de lleno en esta nueva generación.

Están apareciendo nuevas inteligencias artificiales capaces de crear cosas increíbles como ilustraciones, guiones de series, incluso de escribir un libro o una canción. Y todo esto "emulando" características que creíamos exclusivas del ser humano como puede ser el humor o la sensibilidad, que lógicamente una máquina carece totalmente de ellas.

Bueno, pasamos a definir los conceptos que nos ocupan en el presente artículo:

¿Qué es la inteligencia artificial?

Según la R.A.E., "la inteligencia artificial es la disciplina científica que se ocupa de crear programas informáticos que ejecutan operaciones comparables a las que realiza la mente humana, como el aprendizaje o el razonamiento lógico." En definitiva, sería crear programas que emulen al razonamiento humano.

Existen numerosos proyectos de inteligencia artificial, uno bastante importante es el de Microsoft, llamado Copilot, es más que una mejora del buscador Bing, y servirá para disponer de una I.A. capaz de ayudarte en los programas ofimáticos de la compañía.

Por su parte, Google, tiene en su poder otra potente I.A. denominada Bard, una aplicación parecida a Chat GPT que se incorporará a los buscadores.

Luego fuera de los denominados chats inteligentes, existen otros proyectos de otra índole como pueden ser Bots2Rec, siendo un sistema robótico capaz de gestionar la eliminación del amianto en los inmuebles, ResiBots, robots capaces de adaptarse al entorno, tal como lo haría una persona.

¿Qué es entonces Chat GPT?

Podemos definirlo simplemente como un Chat que es capaz de mantener una conversación, contestarte a dudas, resolverte problemas técnicos e incluso de "crear" cosas tal cual lo haría un ser humano. Sin embargo, el tiempo de respuesta es impresionantemente corto y la precisión de las mismas suelen ser de un nivel altísimo. Es un sistema basado en el modelo de lenguaje de I.A. GPT-3.5, desarrollado por la empresa OpenAI.

Vamos a preguntar a Chat GPT que se defina él mismo:

Auto definición de Chat GPT

¿Cómo accedemos a este Chat?

Para poder usar este chat tenemos la obligatoriedad de registrarnos. Para ello entramos en https://chat.openai.com/ y nos creamos una cuenta:

Pantalla de registro o inicio

Es posible que necesitemos realizar una validación de email y/o introducir un número de teléfono.

Una vez dentro nos aparecerá una típica pantalla de Chatbox donde ya podremos empezar a conversar con él y hacerle preguntas:

Chat GPT

En la barra lateral izquierda podremos ver que nuestras conversaciones se van quedando registradas:

Conversaciones registradas

¿Cómo puede ayudar a los programadores?

Pues empezando por lo más obvio es que es capaz de corregir cualquier código en cualquier lenguaje de programación. Y no solamente te lo corrige, sino que también te explica el error y te propone soluciones, veámoslo con un ejemplo básico realizado en C:

Le pasamos al chat este trozo básico de código y él nos dirá dónde fallamos, pero también nos explicará el por qué y las posibles soluciones:

Está claro que es susceptible de cometer algún error o de realizar una corrección que realmente no es la que necesitamos ya que carecería del contexto completo del ejercicio, que por otra parte se lo podríamos también establecer como premisas en la misma pregunta.

Sin embargo, es evidente, que es mucho mejor que los típicos mensajes de error que proporciona cualquier compilador, que muchas veces te indica el fallo en otra línea que no es.

Pero vamos un poco más allá, ¿y si le explicamos nuestro problema y le pedimos que nos genere él mismo un ejemplo de código? Vemos que sucede si le planteamos una estructura HTML y le pedimos que nos genere una función JavaScript para realizar alguna acción sobre ella:

Lo importante no es solamente que te ha dado la respuesta, si no que a partir de aquí puedes seguir manteniendo una conversación con el chat y seguir pidiéndole cambios y/o adaptaciones al código según las premisas que vayas necesitando, por ejemplo, podemos decirle que en realidad lo necesitamos en JQuery, y no hace falta volver a repetirle toda la pregunta.

Esto con respecto a la codificación, pero también podemos usarlo para "project management", si le indicamos todas las premisas necesarias nos "dibujará" el cronograma del proyecto.

También podemos usarlo para preguntarle dudas sobre conceptos técnicos nuevos o que se nos escapan de nuestro ámbito:

En definitiva es como tener a un "Gurú" de la informática disponible para ti las 24 horas del día.

Y como curiosidad vamos a ver de dónde saca la información:

Se equivoca también como los humanos

A veces también se equivoca, en la siguiente captura, que se le pregunta por los "árboles" en programación, comete un error al indicar un camino:

Le informamos del posible error y él mismo se rectifica. Curioso, ¿no?.

Modelo premium

Todo lo comentado anteriormente hace referencia al modelo gratis de Chat GPT, hay que señalar que también existe un modelo PLUS, que el propio Chat GTP lo define como:

"El modelo GPT-3 Plus tiene alrededor de 200 mil millones de parámetros y presenta algunas mejoras en su capacidad para comprender y generar lenguaje natural. Estas mejoras incluyen una mayor capacidad para realizar inferencias y razonamiento, así como una mejora en la generación de texto coherente y relevante."

Conclusión

Inevitablemente estamos ante una nueva generación en el campo de la informática y computación. Tras leer bastante sobre el tema, hay diversas opiniones sobre su inminente implantación.

Como opinión personal, creo que es un gran avance y que su buen uso va a mejorar bastante nuestros conocimientos. Es un nuevo paradigma de aprendizaje. Yo lo comparo como cuando aparecieron los procesadores de textos, antes todo el mundo teníamos que escribir los trabajos o informes en máquinas de escribir y teníamos que tener muy en cuenta la ortografía. Sin embargo, gracias a la aparición de los ordenadores y los procesadores de textos se corregían de manera automática esas faltas e incluso la gramática.

También, cuando teníamos que hacer un trabajo de investigación, debíamos buscar en pesadas enciclopedias y/o diccionarios. Ahora simplemente lo buscamos en internet de una manera mucho más rápida y eficiente.

Ya casi nadie se sabe de memoria los números de teléfonos de los amigos o familiares, todos están almacenados en la memoria de nuestros smartphones.

Pues lo mismo va a pasar con este tipo de chats, se irán incorporando de manera gradual a nuestra vida personal y laboral, comenzando en las escuelas y terminando en las empresas.

¡Gracias y saludos a tod@s!