talón ¿Los grandes modelos de lenguaje acabarán con la programación? - Unir.AI
Contáctanos

Inteligencia artificial

¿Los grandes modelos de lenguaje acabarán con la programación?

mm

Publicado

 on

LLM reemplazando a los programadores humanos

La semana pasada marcó un hito importante para OpenAI, ya que presentaron GPT-4 Turbo en su Día del desarrollo de OpenAI. Una característica destacada de GPT-4 Turbo es su ventana de contexto ampliada de 128,000, un salto sustancial con respecto a las 4 de GPT-8,000. Esta mejora permite un procesamiento de texto 16 veces mayor que su predecesor, lo que equivale a unas 300 páginas de texto.

Este avance se relaciona con otro desarrollo significativo: el impacto potencial en el panorama de las nuevas empresas de SaaS.

ChatGPT Enterprise de OpenAI, con sus funciones avanzadas, plantea un desafío para muchas nuevas empresas de SaaS. Estas empresas, que han estado ofreciendo productos y servicios en torno a ChatGPT o sus API, ahora enfrentan la competencia de una herramienta con capacidades de nivel empresarial. Las ofertas de ChatGPT Enterprise, como la verificación de dominio, el SSO y la información de uso, se superponen directamente con muchos servicios B2B existentes, lo que potencialmente pone en peligro la supervivencia de estas nuevas empresas.

En su discurso de apertura, el director ejecutivo de OpenAI, Sam Altman, reveló otro avance importante: la extensión del límite de conocimiento de GPT-4 Turbo. A diferencia del GPT-4, que solo tenía información hasta 2021, el GPT-4 Turbo se actualiza con conocimientos hasta abril de 2023, lo que marca un importante paso adelante en la relevancia y aplicabilidad de la IA.

ChatGPT Enterprise se destaca por características como seguridad y privacidad mejoradas, acceso de alta velocidad a GPT-4 y ventanas de contexto extendidas para entradas más largas. Sus capacidades avanzadas de análisis de datos, opciones de personalización y eliminación de límites de uso lo convierten en una opción superior a sus predecesores. Su capacidad para procesar entradas y archivos más largos, junto con acceso ilimitado a herramientas avanzadas de análisis de datos como las conocidas anteriormente. Intérprete de código, solidifica aún más su atractivo, especialmente entre empresas que antes dudaban debido a preocupaciones sobre la seguridad de los datos.

La era de la elaboración manual de código está dando paso a sistemas impulsados ​​por IA, entrenados en lugar de programados, lo que significa un cambio fundamental en el desarrollo de software.

Las tareas mundanas de la programación pronto recaerán en la IA, lo que reducirá la necesidad de una profunda experiencia en codificación. Herramientas como Copiloto de GitHub y El escritor fantasma de Replit, que ayudan en la codificación, son indicadores tempranos del papel cada vez mayor de la IA en la programación, lo que sugiere un futuro en el que la IA se extenderá más allá de la asistencia para gestionar completamente el proceso de programación. Imagine el escenario común en el que un programador olvida la sintaxis para invertir una lista en un idioma en particular. En lugar de buscar en foros y artículos en línea, CoPilot ofrece asistencia inmediata, manteniendo al programador enfocado en su objetivo.

Transición del desarrollo basado en código bajo al desarrollo impulsado por IA

Las herramientas de código bajo y sin código simplificaron el proceso de programación, automatizaron la creación de bloques de codificación básicos y liberaron a los desarrolladores para que se centraran en los aspectos creativos de sus proyectos. Pero a medida que nos adentramos en esta nueva ola de IA, el panorama cambia aún más. La simplicidad de las interfaces de usuario y la capacidad de generar código mediante comandos sencillos como "Constrúyeme un sitio web para hacer X" está revolucionando el proceso.

La influencia de la IA en la programación ya es enorme. De manera similar a cómo los primeros científicos informáticos pasaron de centrarse en la ingeniería eléctrica a conceptos más abstractos, los futuros programadores pueden considerar obsoleta la codificación detallada. Los rápidos avances en IA no se limitan a la generación de texto/código. En áreas como el modelo de difusión de generación de imágenes como Pista ML, DALL-E3, muestra mejoras masivas. Simplemente vea el tweet a continuación de Runway que muestra su última característica.

Más allá de la programación, el impacto de la IA en las industrias creativas será igualmente transformador. Jeff Katzenberg, un titán de la industria cinematográfica y ex presidente de Walt Disney Studios, ha predicho que la IA reducirá significativamente el costo de producir películas animadas. Según un artículo reciente de informe de Bloomberg Katzenberg prevé una drástica reducción de costes del 90%. Esto puede incluir la automatización de tareas que requieren mucha mano de obra, como los intermedios en la animación tradicional, la renderización de escenas e incluso ayudar con procesos creativos como el diseño de personajes y los guiones gráficos.

La rentabilidad de la IA en la codificación

Análisis de costos de contratar un ingeniero de software:

  1. Compensación total: El salario promedio de un ingeniero de software, incluidos beneficios adicionales, en centros tecnológicos como Silicon Valley o Seattle es de aproximadamente $ 312,000 por año.

Análisis de costos diarios:

  1. Días laborables por año: Teniendo en cuenta que hay aproximadamente 260 días laborales en un año, el costo diario de contratar a un ingeniero de software es de alrededor de $1,200.
  2. Salida de código: Suponiendo una estimación generosa de 100 líneas de código finalizadas, probadas, revisadas y aprobadas por día, esta producción diaria es la base de comparación.

Análisis de costos del uso de GPT-3 para la generación de código:

  1. Costo del token: El costo de usar GPT-3, en el momento del video, era de aproximadamente $0.02 por cada 1,000 tokens.
  2. Fichas por línea de código: En promedio, se puede estimar que una línea de código contiene alrededor de 10 tokens.
  3. Costo de 100 líneas de código: Por lo tanto, el coste de generar 100 líneas de código (o 1,000 tokens) utilizando GPT-3 sería de alrededor de 0.12 dólares.

Análisis comparativo:

  • Costo por línea de código (humano versus IA): Comparando los costos, generar 100 líneas de código por día cuesta $1,200 cuando lo hace un ingeniero de software humano, en comparación con solo $0.12 usando GPT-3.
  • Factor de costo: Esto representa una diferencia de factor de coste de aproximadamente 10,000 veces, siendo la IA sustancialmente más barata.

Este análisis apunta al potencial económico de la IA en el campo de la programación. El bajo costo del código generado por IA en comparación con el alto gasto de los desarrolladores humanos sugiere un futuro en el que la IA podría convertirse en el método preferido para la generación de código, especialmente para tareas estándar o repetitivas. Este cambio podría generar importantes ahorros de costos para las empresas y una reevaluación del papel de los programadores humanos, enfocando potencialmente sus habilidades en tareas más complejas, creativas o de supervisión que la IA aún no puede manejar.

La versatilidad de ChatGPT se extiende a una variedad de contextos de programación, incluidas interacciones complejas con marcos de desarrollo web. Considere un escenario en el que un desarrollador trabaja con React, una popular biblioteca de JavaScript para crear interfaces de usuario. Tradicionalmente, esta tarea implicaría profundizar en documentación extensa y ejemplos proporcionados por la comunidad, especialmente cuando se trata de componentes complejos o de gestión estatal.

Con ChatGPT, este proceso se simplifica. El desarrollador puede simplemente describir la funcionalidad que pretende implementar en React, y ChatGPT proporciona fragmentos de código relevantes y listos para usar. Esto podría variar desde configurar una estructura de componentes básica hasta funciones más avanzadas como administrar el estado con enlaces o integrarse con API externas. Al reducir el tiempo dedicado a la investigación y la prueba y error, ChatGPT mejora la eficiencia y acelera el desarrollo de proyectos en contextos de desarrollo web.

Desafíos en la programación impulsada por IA

A medida que la IA continúa remodelando el panorama de la programación, es esencial reconocer las limitaciones y los desafíos que conlleva depender únicamente de la IA para las tareas de programación. Estos desafíos subrayan la necesidad de un enfoque equilibrado que aproveche las fortalezas de la IA y reconozca sus limitaciones.

  1. Calidad y mantenibilidad del código: El código generado por IA a veces puede ser detallado o ineficiente, lo que puede generar desafíos de mantenimiento. Si bien la IA puede escribir código funcional, garantizar que este código cumpla con las mejores prácticas de legibilidad, eficiencia y mantenibilidad sigue siendo una tarea impulsada por humanos.
  2. Depuración y manejo de errores: Los sistemas de inteligencia artificial pueden generar código rápidamente, pero no siempre son excelentes para depurar o comprender errores matizados en el código existente. Las sutilezas de la depuración, especialmente en sistemas grandes y complejos, a menudo requieren la experiencia y la comprensión matizada de un ser humano.
  3. Confianza en los datos de entrenamiento: La eficacia de la IA en la programación depende en gran medida de la calidad y amplitud de sus datos de entrenamiento. Si los datos de entrenamiento carecen de ejemplos de ciertos errores, patrones o escenarios, la capacidad de la IA para manejar estas situaciones se ve comprometida.
  4. Preocupaciones éticas y de seguridad: Dado que la IA asume un papel más destacado en la codificación, surgen preocupaciones éticas y de seguridad, especialmente en torno a la privacidad de los datos y la posibilidad de sesgos en el código generado por la IA. Garantizar un uso ético y abordar estos sesgos es crucial para el desarrollo responsable de herramientas de programación impulsadas por la IA.

Equilibrando la IA y las habilidades de programación tradicionales

En futuros equipos de desarrollo de software tal vez surja un modelo híbrido. Los gerentes de producto podrían traducir los requisitos en directivas para los generadores de códigos de IA. La supervisión humana podría seguir siendo necesaria para garantizar la calidad, pero el enfoque pasaría de escribir y mantener código a verificar y ajustar los resultados generados por IA. Este cambio sugiere un énfasis cada vez menor en los principios de codificación tradicionales, como la modularidad y la abstracción, ya que el código generado por IA no necesita cumplir con estándares de mantenimiento centrados en el ser humano.

En esta nueva era, el papel de los ingenieros y los informáticos se transformará significativamente. Interactuarán con LLM, proporcionando datos de capacitación y ejemplos para lograr tareas, cambiando el enfoque de la codificación compleja al trabajo estratégico con modelos de IA.

La unidad de computación básica pasará de los procesadores tradicionales a modelos LLM masivos y previamente entrenados, lo que marcará un cambio de procesos estáticos y predecibles a agentes de IA dinámicos y adaptables.

El objetivo es pasar de crear y comprender programas a guiar modelos de IA, redefinir los roles de los científicos e ingenieros informáticos y remodelar nuestra interacción con la tecnología.

La necesidad constante de conocimiento humano en el código generado por IA

El futuro de la programación se trata menos de codificar y más de dirigir la inteligencia que impulsará nuestro mundo tecnológico.

La creencia de que el procesamiento del lenguaje natural por parte de la IA puede reemplazar completamente la precisión y complejidad de las notaciones matemáticas formales y la programación tradicional es, en el mejor de los casos, prematura. El cambio hacia la IA en la programación no elimina la necesidad del rigor y la precisión que sólo la programación formal y las habilidades matemáticas pueden proporcionar.

Además, el desafío de probar código generado por IA para problemas que no se han resuelto antes sigue siendo significativo. Técnicas como las pruebas basadas en propiedades requieren una comprensión profunda de la programación, habilidades que la IA, en su estado actual, no puede replicar ni reemplazar.

En resumen, si bien la IA promete automatizar muchos aspectos de la programación, el elemento humano sigue siendo crucial, particularmente en áreas que requieren creatividad, resolución de problemas complejos y supervisión ética.

He pasado los últimos cinco años sumergiéndome en el fascinante mundo del aprendizaje automático y el aprendizaje profundo. Mi pasión y experiencia me han llevado a contribuir en más de 50 proyectos diversos de ingeniería de software, con un enfoque particular en AI/ML. Mi curiosidad constante también me ha atraído hacia el procesamiento del lenguaje natural, un campo que estoy ansioso por explorar más a fondo.