Saltar al contenido

5 tareas de programación que ChatGPT no puede realizar

27/01/2024

Inteligencia artificial y codificación: Límites y capacidades

En el vasto universo de la tecnología, se ha posicionado ChatGPT como una suerte de encarnación digital más avanzada que plataformas como StackOverflow – un recurso sumamente valioso y útil, aunque ciertamente no un sucesor inmediato para la experiencia humana en materia de programación. Antes de despedirme como científico de datos, dediqué incontables horas a explorar las posibilidades de ChatGPT. Quedé asombrado ante su habilidad para producir código funcional de la nada y su destreza al ofrecer sugerencias enriquecedoras sobre mi propio código, navegando con sorprendente habilidad a través de la depuración cuando se enfrentaba a errores.

Con el uso continuado, sin embargo, me fui topando con ciertos límites infranqueables. Para aquellos desarrolladores inquietos por la idea de que ChatGPT podría suplantar sus puestos laborales, aquí voy a desglosar una lista de tareas de programación especializada que ChatGPT aún no está en condiciones de realizar.

Error 403 The request cannot be completed because you have exceeded your quota. : quotaExceeded

1. Tareas de codificación específicas para tu empresa

El primer obstáculo no está relacionado con la habilidad per se, sino con cuestiones de índole legal. El uso de código originado puramente en ChatGPT y trasladado a tu proyecto corporativo podría resultar en litigios desafortunados para tu empleador.

Puesto que ChatGPT extrae sectores de código de la vasta red Internet de los cuales se nutrió durante su entrenamiento, no resulta factible identificar la fuente específica ni la licencia asociada a esos extractos. Como bien mencionó el usuario de Reddit ChunkyHabaneroSalsa, reconocer de inmediato el repositorio de GitHub de donde sacó ChatGPT una porción considerable de un código, plantea un problema significativo.

En definitiva, las dudas sobre el origen del código y las licencias concernientes, sumado al hecho de que todo lo creado por ChatGPT carece de derechos de autor, ponen en entredicho su uso en entornos empresariales. Autores como Shawn Helms y Jason Krieser, de Bloomberg Law, han expresado que al ser ChatGPT una IA entrenada con obras preexistentes, sus resultados podrían definirse como «trabajos derivados».

Si pretendes aplicar las capacidades de ChatGPT en la generación de código para tu empresa, debes ser consciente del potencial conflicto legal que esto podría generar.

2. Desafíos que requieren de pensamiento crítico

Dentro de la esfera de los desafíos que demandan un enfoque crítico, te propongo lo siguiente: solicita a ChatGPT que redacte un código que ejecute un análisis estadístico en Python.

¿Cuál será la calidad del análisis resultante? Casi con certeza no será preciso. Y es que ChatGPT no tiene la capacidad de discernir si los datos cumplen con los preceptos básicos necesarios para validar los resultados de un test estadístico, ni sabe concretamente qué es lo que desean observar las partes interesadas.

Imaginemos por un momento que le pido a ChatGPT que me asista en determinar si hay diferencias estadísticamente relevantes entre índices de satisfacción de diversas franjas etarias. Puede que la IA me sugiera aplicar una prueba T de muestras independientes, pero tal vez ese método no sea el más acertado por múltiples factores, entre ellos, la posibilidad de que existan numerosos grupos de edad o que la distribución de los datos no sea normal.

Un experto en la materia sabría exactamente qué hipótesis evaluar y qué pruebas llevar a cabo, y quizás podría ofrecer a ChatGPT instrucciones más específicas para afinar sus resultados. Sin embargo, ChatGPT, por sí misma, generará diligentemente el código adecuado para el análisis errado, lo que conduce a resultados no confiables y, en términos prácticos, inutilizables.

Por lo tanto, en situaciones que exijan un razonamiento crítico detallado y una resolución de problemas más sofisticada, ChatGPT no sería la opción recomendable.

3. Comprender y gestionar las prioridades de las partes interesadas

Cualquier científico de datos te dirá que una parte esencial de su labor consiste en comprender e interpretar qué es lo que realmente valoran las partes interesadas en un proyecto. ChatGPT, o cualquier otra forma de IA, no tiene la capacidad de entender o manejar estos elementos en su totalidad.

Priorizar las necesidades de las partes interesadas a menudo implica una toma de decisiones compleja que va más allá de los datos y que contempla factores humanos, objetivos empresariales y tendencias de mercado.

Tomemos como ejemplo una situación donde se esté trabajando en el rediseño de una aplicación. Puede suceder que el equipo de marketing busque enfocar las funciones de compromiso del usuario, mientras que el equipo de ventas insta a desarrollar características que apoyen la venta cruzada y el equipo de soporte al cliente demanda mejoras en las funcionalidades de asistencia para optimizar la experiencia del usuario dentro de la aplicación.

ChatGPT podría suministrar información relevante y generar informes detallados, pero no tiene la habilidad para tomar decisiones con los matices requeridos para satisfacer los diversos (y a veces opuestos) intereses de las diferentes partes interesadas.

Además, la gestión exitosa de estas partes interesadas frecuentemente demanda un alto grado de inteligencia emocional: se necesita empatizar con ellas, comprender a nivel humano sus preocupaciones y reaccionar adecuadamente ante sus emociones. ChatGPT carece de inteligencia emocional y no está en posición de manejar estos aspectos emocionales inherentes a las relaciones con las partes interesadas.

Pese a que esto pueda no parecerse a una tarea de codificación convencional, cualquier científico de datos trabajando actualmente en el código para el lanzamiento de una nueva funcionalidad entiende la magnitud de su implicación en el trabajo con las prioridades de las partes interesadas.

4. Abordaje de problemas novedosos y no convencionales

ChatGPT no tiene la capacidad de innovar propiamente dicha. Su mecanismo se basa únicamente en la reconstrucción y reconfiguración de la información previamente adquirida a partir de su entrenamiento con datos.

Si tienes una duda específica como cómo modificar el tamaño de una leyenda en un gráfico de R, ChatGPT podrá proveerte con miles de respuestas ya existentes en StackOverflow relacionadas con la misma cuestión. No obstante, afrontando tareas fuera de lo común, como por ejemplo coordinar una comida comunitaria en la que el plato de cada participante deba incluir un ingrediente que comience con la misma letra que su apellido – asegurando además una diversidad en las opciones culinarias -, ChatGPT podría generar respuestas inesperadas y posiblemente irrelevantes.

Cuando presenté esta premisa a ChatGPT, obtuve una respuesta en código Python que determinaba que el nombre del plato debía coincidir con el apellido, ignorando por completo el requisito del ingrediente. Además, sugería crear 26 categorías de platos, una por cada letra del alfabeto, lo que distaba mucho de ser una solución inteligente, probablemente debido a su desconocimiento ante una situación completamente inédita.

5. Toma de decisiones éticas

Finalmente, pero no menos fundamental, ChatGPT no tiene la habilidad para codificar de acuerdo a principios éticos. Le es imposible emitir juicios de valor ni comprender las ramificaciones morales de un fragmento de código de la manera en que lo hace un ser humano.

Codificar con ética requiere considerar el impacto potencial que el código puede tener en diferentes grupos de personas, asegurar que no produce discriminación ni daño y adoptar decisiones coherentes con los estándares éticos y las normas sociales existentes.

Por ejemplo, pidiéndole a ChatGPT que diseñe un código para un sistema de aprobación de préstamos, podría generar un modelo basado en datos históricos. No obstante, le es imposible asimilar las implicaciones sociales de dicho modelo, que podría negar préstamos a comunidades marginadas debido a sesgos en los datos. Correspondería a los programadores humanos detectar la necesidad de justicia y equidad, identificar y corregir posibles sesgos y garantizar que el código se corresponda con las prácticas éticas adecuadas.

Es importante recordar que incluso los seres humanos no son infalibles en este aspecto. Alguien programó la herramienta de selección de personal con sesgos de Amazon y el sistema de categorización de fotografías de Google que identificaba incorrectamente a las personas de raza negra. No obstante, como humanos disponemos de una mejor capacidad de empatía, consciencia y razonamiento moral para programar éticamente.

Los seres humanos son capaces de entender el contexto más amplio, reconocer las sutilezas del comportamiento humano y participar en debates éticos. Sopesamos los pros y los contras de un enfoque determinado y asumimos la responsabilidad de nuestras decisiones. Cuando cometemos errores, podemos aprender de ellos de manera que enriquezca nuestra comprensión moral.

Reflexiones finales

Una reflexión que me parece oportuna citar es la de Vacuum_Experience_10 en Reddit: «Si todo tu trabajo consiste en programar, no eres un ingeniero de software y sí, tu puesto podría ser reemplazado. Si crees que los ingenieros de software reciben un salario elevado simplemente por su habilidad de escribir código, entonces tienes una comprensión equivocada sobre lo que significa ser un ingeniero de software».

He aprendido que ChatGPT es fabuloso para solucionar problemas de código y ofrece una alternativa más ágil que rastrear respuestas en StackOverflow. A pesar de eso, hay que resaltar que la «programación» va mucho más allá de meramente teclear Python en un teclado. Implica conocer los objetivos del negocio, tener cuidado con las decisiones algorítmicas, construir relaciones con las partes interesadas y comprender realmente qué desean y por qué, buscando la manera de concretarlo.

Se trata de contar historias, elegir el tipo de gráfico más adecuado y comprender qué es lo que los datos están intentando comunicarnos. Es la capacidad de traducir conceptos complejos en términos sencillos que las partes interesadas comprendan y puedan utilizar para tomar sus decisiones.

LEE MÁS ARTÍCULOS SOBRE: Ciencia de Datos con IA.

LEE LA ENTRADA ANTERIOR: Passport Maker.