{"id":699306,"date":"2023-06-24T12:09:34","date_gmt":"2023-06-24T12:09:34","guid":{"rendered":"https:\/\/magazineoffice.com\/programacion-en-lenguaje-natural-las-ia-estan-eliminando-la-monotonia-de-la-codificacion\/"},"modified":"2023-06-24T12:09:40","modified_gmt":"2023-06-24T12:09:40","slug":"programacion-en-lenguaje-natural-las-ia-estan-eliminando-la-monotonia-de-la-codificacion","status":"publish","type":"post","link":"https:\/\/magazineoffice.com\/programacion-en-lenguaje-natural-las-ia-estan-eliminando-la-monotonia-de-la-codificacion\/","title":{"rendered":"Programaci\u00f3n en lenguaje natural Las IA est\u00e1n eliminando la monoton\u00eda de la codificaci\u00f3n"},"content":{"rendered":"


\n<\/p>\n

\n

\u201cAprende a programar\u201d. Ese peyorativo de tres palabras est\u00e1 perpetuamente en los labios y en la punta de los dedos de los trolls de Internet y los tech bros cada vez que se anuncian despidos de medios. Un sentimiento in\u00fatil por derecho propio, pero con el reciente advenimiento de la IA que genera c\u00f3digo, conocer los entresijos de un lenguaje de programaci\u00f3n como Python pronto podr\u00eda ser tan \u00fatil como saber hablar con fluidez un idioma muerto como el s\u00e1nscrito. De hecho, estos genAI ya est\u00e1n ayudando a los desarrolladores de software profesionales a codificar de manera m\u00e1s r\u00e1pida y efectiva al manejar gran parte del trabajo pesado de programaci\u00f3n.<\/p>\n

C\u00f3mo funciona la codificaci\u00f3n<\/strong><\/h2>\n

Dos de los lenguajes de codificaci\u00f3n m\u00e1s ampliamente distribuidos y escritos de la actualidad son Java y Python. El primero revolucion\u00f3 casi sin ayuda la operaci\u00f3n multiplataforma cuando se lanz\u00f3 a mediados de los a\u00f1os 90 y ahora maneja \u00abtodo, desde tarjetas inteligentes hasta veh\u00edculos espaciales\u00bb, como Revista Java<\/em> ponlo en 2020, sin mencionar la funci\u00f3n de b\u00fasqueda de Wikipedia y todo Minecraft. Este \u00faltimo en realidad es anterior a Java por algunos a\u00f1os y sirve como base de c\u00f3digo para muchas aplicaciones modernas como Dropbox, Spotify e Instagram.<\/p>\n

<\/p>\n

Difieren significativamente en su funcionamiento en el sentido de que Java debe compilarse (tener su c\u00f3digo legible por humanos traducido a c\u00f3digo de m\u00e1quina ejecutable por computadora) antes de que pueda ejecutarse. Mientras tanto, Python es un lenguaje interpretado, lo que significa que su c\u00f3digo humano se convierte en c\u00f3digo de m\u00e1quina l\u00ednea por l\u00ednea a medida que se ejecuta el programa, lo que le permite ejecutarse sin compilarlo primero. El m\u00e9todo de interpretaci\u00f3n permite que el c\u00f3digo se escriba m\u00e1s f\u00e1cilmente para varias plataformas, mientras que el c\u00f3digo compilado tiende a centrarse en un tipo de procesador espec\u00edfico. Independientemente de c\u00f3mo se ejecuten, el proceso real de escritura de c\u00f3digo es casi id\u00e9ntico entre los dos: alguien tiene que sentarse, abrir un editor de texto o un entorno de desarrollo integrado (IDE) y escribir todas esas l\u00edneas de instrucci\u00f3n. Y hasta hace poco, ese alguien t\u00edpicamente era un humano.<\/p>\n

El proceso de escritura de \u00abprogramaci\u00f3n cl\u00e1sica\u00bb de hoy no es tan diferente del proceso de ENIAC, con un ingeniero de software tomando un problema, dividi\u00e9ndolo en una serie de subproblemas, escribiendo c\u00f3digo para resolver cada uno de esos subproblemas. en orden, y luego depurando y recompilando repetidamente el c\u00f3digo hasta que se ejecute. La \u00abprogramaci\u00f3n autom\u00e1tica\u00bb, por otro lado, elimina el programador por un grado de separaci\u00f3n. En lugar de que un ser humano escriba cada l\u00ednea de c\u00f3digo individualmente, la persona crea una abstracci\u00f3n de alto nivel de la tarea para que la computadora genere un c\u00f3digo de bajo nivel para abordar. Esto difiere de la programaci\u00f3n \u00abinteractiva\u00bb, que le permite codificar un programa mientras ya se est\u00e1 ejecutando.<\/p>\n

Los sistemas de codificaci\u00f3n de IA conversacional de hoy, como lo que vemos en Copilot de Github o ChatGPT de OpenAI, eliminan a\u00fan m\u00e1s al programador al ocultar el proceso de codificaci\u00f3n detr\u00e1s de una apariencia de lenguaje natural. El programador le dice a la IA qu\u00e9 quiere programar y c\u00f3mo, y la m\u00e1quina puede generar autom\u00e1ticamente el c\u00f3digo requerido.<\/p>\n

Entre los primeros de esta nueva generaci\u00f3n de IA de codificaci\u00f3n conversacional se encontraba Codex, desarrollado por OpenAI y lanzado a fines de 2021. modelo notablemente experto en imitar el habla y la escritura humana despu\u00e9s de haber sido entrenado en miles de millones de palabras de la web p\u00fablica. Luego, la compa\u00f1\u00eda ajust\u00f3 ese modelo utilizando m\u00e1s de 100 gigabytes de datos de GitHub para crear Codex. Es capaz de generar c\u00f3digo en 12 idiomas diferentes y puede traducir programas existentes entre ellos.<\/p>\n

Codex es experto en generar activos peque\u00f1os, simples o repetibles, como \u00abun gran bot\u00f3n rojo que sacude brevemente la pantalla cuando se hace clic\u00bb o funciones regulares como el validador de direcciones de correo electr\u00f3nico en un formulario web de Google. Pero no importa cu\u00e1n prol\u00edfica sea su prosa, no la usar\u00e1 para proyectos complejos como codificar un programa de equilibrio de carga del lado del servidor; es una pregunta demasiado complicada.<\/p>\n

DeepMind de Google desarroll\u00f3 AlphaCode espec\u00edficamente para abordar tales desaf\u00edos. Al igual que Codex, AlphaCode se entren\u00f3 primero en varios gigabytes de archivos de c\u00f3digo GitHub existentes, pero luego recibi\u00f3 miles de desaf\u00edos de codificaci\u00f3n extra\u00eddos de competencias de programaci\u00f3n en l\u00ednea, como averiguar cu\u00e1ntas cadenas binarias con una longitud determinada no contienen ceros consecutivos.<\/p>\n

Para hacer esto, AlphaCode generar\u00e1 hasta un mill\u00f3n de candidatos de c\u00f3digo, luego rechazar\u00e1 todos menos el 1 por ciento superior para pasar sus casos de prueba. Luego, el sistema agrupa los programas restantes en funci\u00f3n de la similitud de sus resultados y los prueba secuencialmente hasta que encuentra un candidato que resuelve con \u00e9xito el problema dado. Seg\u00fan un estudio de 2022 publicado en Ciencia<\/em>, AlphaCode logr\u00f3 responder correctamente esas preguntas de desaf\u00edo el 34 por ciento de las veces (en comparaci\u00f3n con el \u00e9xito de un solo d\u00edgito de Codex en los mismos puntos de referencia, eso no est\u00e1 mal). DeepMind incluso ingres\u00f3 a AlphaCode en un concurso de programaci\u00f3n en l\u00ednea de 5000 competidores, donde super\u00f3 a casi el 46 por ciento de los competidores humanos.<\/p>\n

Ahora hasta la IA tiene notas<\/strong><\/h2>\n

As\u00ed como GPT-3.5 sirve como modelo fundamental para ChatGPT, Codex sirve como base para Copilot AI de GitHub. Copilot, capacitado en miles de millones de l\u00edneas de c\u00f3digo ensambladas a partir de la web p\u00fablica, ofrece funciones de autocompletado de codificaci\u00f3n asistida por IA basadas en la nube a trav\u00e9s de un complemento de suscripci\u00f3n para los entornos de desarrollo integrado (IDE) de Visual Studio Code, Visual Studio, Neovim y JetBrains.<\/p>\n

Lanzado inicialmente como una vista previa para desarrolladores en junio de 2021, Copilot estuvo entre las primeras IA con capacidad de codificaci\u00f3n en llegar al mercado. M\u00e1s de un mill\u00f3n de desarrolladores han aprovechado el sistema en los dos a\u00f1os transcurridos desde entonces, dijo a Engadget el vicepresidente de producto de GitHub, Ryan J Salva. Con Copilot, los usuarios pueden generar c\u00f3digo ejecutable a partir de entradas de texto en lenguaje natural, as\u00ed como autocompletar secciones de c\u00f3digo y funciones de programaci\u00f3n com\u00fanmente repetidas.<\/p>\n

Salva se\u00f1ala que antes del lanzamiento de Copilot, las sugerencias de codificaci\u00f3n generadas por m\u00e1quinas anteriores de GitHub solo eran aceptadas por los usuarios entre el 14 y el 17 por ciento de las veces. \u201cLo cual est\u00e1 bien\u201d, dijo. \u201cSignifica que estaba ayudando a los desarrolladores\u201d. En los dos a\u00f1os transcurridos desde el debut de Copilot, esa cifra ha crecido hasta el 35 por ciento, \u00aby eso representa poco menos de la mitad de la cantidad de c\u00f3digo que se escribe\u00bb. [on GitHub] \u2014 46 por ciento por IA, para ser exactos\u201d.<\/p>\n

\u201c[It\u2019s] no es una cuesti\u00f3n de porcentaje de c\u00f3digo escrito\u201d, aclar\u00f3 Salva. \u201cRealmente se trata de la productividad, el enfoque, la satisfacci\u00f3n de los desarrolladores que est\u00e1n creando\u201d.<\/p>\n

Al igual que con los resultados de los generadores de lenguaje natural como ChatGPT, el c\u00f3digo que proviene de Copilot es en gran parte legible, pero como cualquier modelo de lenguaje grande entrenado en Internet abierto, GitHub se asegur\u00f3 de incorporar protecciones adicionales contra el sistema que produce c\u00f3digo explotable sin querer.<\/p>\n

\u201cEntre cuando el modelo produce una sugerencia y cuando esa sugerencia se presenta al desarrollador\u201d, dijo Salva, \u201cen tiempo de ejecuci\u00f3n realizamos [\u2026] un an\u00e1lisis de calidad del c\u00f3digo para el desarrollador, en busca de errores comunes o vulnerabilidades en el c\u00f3digo, como secuencias de comandos entre sitios o inyecci\u00f3n de rutas\u201d.<\/p>\n

Ese paso de auditor\u00eda est\u00e1 destinado a mejorar la calidad del c\u00f3digo recomendado con el tiempo en lugar de monitorear o controlar para qu\u00e9 se podr\u00eda usar el c\u00f3digo. Copilot puede ayudar a los desarrolladores a crear el c\u00f3digo que compone el malware, el sistema no lo impedir\u00e1. \u201cHemos tomado la posici\u00f3n de que Copilot existe como una herramienta para ayudar a los desarrolladores a producir c\u00f3digo\u201d, dijo Salva, se\u00f1alando las numerosas aplicaciones White Hat para dicho sistema. \u201cPoner en sus manos una herramienta como Copilot [\u2026] los convierte en investigadores de seguridad m\u00e1s capaces\u201d, continu\u00f3.<\/p>\n

A medida que la tecnolog\u00eda contin\u00faa desarroll\u00e1ndose, Salva ve que la codificaci\u00f3n de IA generativa se expandir\u00e1 mucho m\u00e1s all\u00e1 de sus l\u00edmites tecnol\u00f3gicos actuales. Eso incluye \u00abhacer una gran apuesta\u00bb en la IA conversacional. \u201cTambi\u00e9n vemos que el desarrollo asistido por IA realmente se filtra en otras partes del ciclo de vida del desarrollo de software\u201d, dijo, como usar IA para reparar de manera aut\u00f3noma errores de compilaci\u00f3n de CI\/CD, corregir vulnerabilidades de seguridad o hacer que la IA revise escritos por humanos. c\u00f3digo.<\/p>\n

\u201cAs\u00ed como usamos compiladores para producir c\u00f3digo a nivel de m\u00e1quina hoy en d\u00eda, creo que eventualmente llegar\u00e1n a otra capa de abstracci\u00f3n con IA que permite a los desarrolladores expresarse en un lenguaje diferente\u201d, dijo Salva. \u201cTal vez sea un lenguaje natural como el ingl\u00e9s, el franc\u00e9s o el coreano. Y eso luego se ‘compila’ en algo que las m\u00e1quinas pueden entender\u201d, liberando a los ingenieros y desarrolladores para que se concentren en el crecimiento general del proyecto en lugar de en los aspectos pr\u00e1cticos de su construcci\u00f3n.<\/p>\n

De codificadores a gabbers<\/strong><\/h2>\n

Con la toma de decisiones humana todav\u00eda firmemente encajada dentro del ciclo de programaci\u00f3n de IA, al menos por ahora, tenemos poco que temer de tener software de escritura. Como se\u00f1al\u00f3 Salva, las computadoras ya hacen esto hasta cierto punto al compilar el c\u00f3digo, y las babas grises digitales a\u00fan tienen que tomar el control debido a eso. En cambio, los desaf\u00edos m\u00e1s inmediatos que enfrenta la IA de programaci\u00f3n reflejan los de la IA generativa en general: sesgos inherentes que sesgan los datos de entrenamiento, resultados de modelos que violan los derechos de autor y preocupaciones en torno a la privacidad de los datos del usuario cuando se trata de entrenar modelos de lenguaje grandes.<\/p>\n

GitHub est\u00e1 lejos de estar solo en sus esfuerzos por crear un compa\u00f1ero de programaci\u00f3n de IA. ChatGPT de OpenAI es capaz de generar c\u00f3digo, al igual que las innumerables variantes independientes que se est\u00e1n construyendo sobre la plataforma GPT. Tambi\u00e9n lo es el sistema AWS CodeWhisperer de Amazon, que proporciona gran parte de la misma funcionalidad de autocompletar que Copilot, pero optimizada para su uso dentro del marco de AWS. Despu\u00e9s de m\u00faltiples solicitudes de los usuarios, Google tambi\u00e9n incorpor\u00f3 la generaci\u00f3n de c\u00f3digo y las capacidades de depuraci\u00f3n en Bard en abril pasado, antes de su pivote en todo el ecosistema para adoptar la IA en I\/O 2023 y el lanzamiento de Codey, la respuesta de Alphabet a Copilot. Todav\u00eda no podemos estar seguros de en qu\u00e9 se convertir\u00e1n eventualmente los sistemas de codificaci\u00f3n generativa o c\u00f3mo podr\u00eda afectar a la industria tecnol\u00f3gica; podr\u00edamos estar viendo las primeras iteraciones de una tecnolog\u00eda transformadora y democratizadora, o podr\u00eda ser Clippy para una nueva generaci\u00f3n.<\/p>\n

\n Todos los productos recomendados por Engadget son seleccionados por nuestro equipo editorial, independiente de nuestra empresa matriz. Algunas de nuestras historias incluyen enlaces de afiliados. Si compra algo a trav\u00e9s de uno de estos enlaces, podemos ganar una comisi\u00f3n de afiliado. Todos los precios son correctos en el momento de la publicaci\u00f3n.<\/em>\n <\/p>\n<\/div>\n


\n
Source link-47<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"

\u201cAprende a programar\u201d. Ese peyorativo de tres palabras est\u00e1 perpetuamente en los labios y en la punta de los dedos de los trolls de Internet y los tech bros cada…<\/p>\n","protected":false},"author":1,"featured_media":699307,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[21981],"tags":[22903,7349,681,246,12901,53124,5559,9583],"_links":{"self":[{"href":"https:\/\/magazineoffice.com\/wp-json\/wp\/v2\/posts\/699306"}],"collection":[{"href":"https:\/\/magazineoffice.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/magazineoffice.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/magazineoffice.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/magazineoffice.com\/wp-json\/wp\/v2\/comments?post=699306"}],"version-history":[{"count":1,"href":"https:\/\/magazineoffice.com\/wp-json\/wp\/v2\/posts\/699306\/revisions"}],"predecessor-version":[{"id":699308,"href":"https:\/\/magazineoffice.com\/wp-json\/wp\/v2\/posts\/699306\/revisions\/699308"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/magazineoffice.com\/wp-json\/wp\/v2\/media\/699307"}],"wp:attachment":[{"href":"https:\/\/magazineoffice.com\/wp-json\/wp\/v2\/media?parent=699306"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/magazineoffice.com\/wp-json\/wp\/v2\/categories?post=699306"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/magazineoffice.com\/wp-json\/wp\/v2\/tags?post=699306"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}