Créditos de imagen: Vaughn Ridley/Sportsfile for Collision vía Getty Images
¿Es el futuro del desarrollo de software un entorno de desarrollo integrado impulsado por IA? GitHub plantea la idea.
En la conferencia anual GitHub Universe en San Francisco el lunes, GitHub anunció Copilot Workspace, un entorno de desarrollo que aprovecha lo que GitHub describe como “agentes impulsados por Copilot” para ayudar a los desarrolladores a generar ideas, planificar, construir, probar y ejecutar código en lenguaje natural.
Jonathan Carter, jefe de GitHub Next, el equipo de I+D de software de GitHub, presenta Workspace como una especie de evolución del asistente de programación Copilot impulsado por IA de GitHub hacia una herramienta más general, basada en capacidades introducidas recientemente como Copilot Chat, que permite a los desarrolladores hacer preguntas sobre el código. En lenguaje natural.
«A través de la investigación, descubrimos que para muchas tareas, el mayor punto de fricción para los desarrolladores era comenzar y, en particular, saber cómo trabajar con… [coding] «El problema es saber qué archivos editar y cómo considerar múltiples soluciones y sus compensaciones», dijo Carter. «Por eso queríamos crear un asistente de IA que pudiera reunirse con los desarrolladores al comienzo de una idea o tarea, reducir la energía de activación necesaria para comenzar y luego colaborar con ellos para realizar los ajustes necesarios en toda la base».
Según el último recuento, Copilot tenía más de 1,8 millones de clientes minoristas y 50.000 clientes empresariales. Pero Carter visualiza una base mucho más grande, dibujada a través de expansiones de características con un gran atractivo, como el espacio de trabajo.
«Debido a que los desarrolladores dedican mucho tiempo a trabajar [coding issues]»Creemos que podemos ayudar a empoderar a los desarrolladores cotidianos a través de una 'asociación de pensamiento' con la IA», dijo Carter. “Se puede pensar en Copilot Workspace como una experiencia complementaria y un entorno de desarrollo que complementa las herramientas y los flujos de trabajo existentes y permite la simplificación de una clase de tareas de desarrollador… Creemos que hay mucho valor que ofrecer en un entorno impulsado por IA. Entorno de desarrollador nativo que no está vinculado a los flujos de trabajo existentes”.
Ciertamente existen presiones internas para que Copilot sea rentable.
copiloto Pierde un promedio de $20 por mes por usuarioSegún un informe del Wall Street Journal, algunos clientes le cuestan a GitHub hasta 80 dólares al mes. El número de servicios competidores sigue creciendo. Está CodeWhisperer de Amazon, que la compañía puso a disposición de desarrolladores individuales de forma gratuita a finales del año pasado. También hay startups como Magic, Tabnine, Codegen y Laredo.
Dado un repositorio de GitHub o un error específico dentro del repositorio, Workspace, impulsado por el modelo GPT-4 Turbo de OpenAI, puede crear un plan para (intentar) eliminar el error o implementar una nueva característica, basándose en la comprensión de los comentarios del repositorio. respuestas a problemas y una base de código más amplia. Los desarrolladores reciben sugerencias de código para corregir errores o nuevas características, una lista de cosas que necesitan para validar y probar ese código, y controles para editarlo, guardarlo, rediseñarlo o deshacerlo.
El código propuesto se puede ejecutar directamente en Workspace y compartir entre los miembros del equipo a través de un enlace externo. Una vez en Workspace, estos miembros del equipo pueden mejorar y modificar el código como mejor les parezca.
Quizás la forma más obvia de iniciar Workspace es a través del nuevo botón «Abrir en Workspace» a la izquierda de las propuestas y solicitudes de extracción en los repositorios de GitHub. Al hacer clic en él, se abre un campo para describir la tarea de ingeniería de software que se debe completar en lenguaje natural, como «Agregar documentación para cambios a esta solicitud de extracción», que, una vez enviada, se agrega a la lista «Sesiones» dentro de la nueva solicitud. Vea su espacio de trabajo personalizado.
Workspace ejecuta sistemáticamente las solicitudes paso a paso, creando especificaciones, creando un plan y luego ejecutando ese plan. Los desarrolladores pueden profundizar en cualquiera de estos pasos para obtener una vista detallada del código y los cambios sugeridos y eliminar, volver a ejecutar o reorganizar los pasos según sea necesario.
«Si le pregunta a cualquier desarrollador dónde tiende a quedarse estancado en un nuevo proyecto, a menudo le escuchará decir que sabe por dónde empezar», dijo Carter. «Copilot Workspace elimina esa carga y ofrece a los desarrolladores un plan para empezar a iterar».
Workspace entrará en vista previa técnica el lunes, optimizado para una variedad de dispositivos, incluidos los móviles.
Es importante destacar que, debido a que está en versión preliminar, Workspace no está cubierto por la política de indemnización de propiedad intelectual de GitHub, que promete ayudar con los honorarios legales de los clientes que enfrentan reclamos de terceros alegando que el código generado por IA que utilizan infringe los derechos de propiedad intelectual. (Los modelos de IA generativa son populares regurgitar Sus conjuntos de datos de entrenamiento, GPT-4 Turbo, se entrenaron parcialmente con código protegido por derechos de autor).
GitHub dice que no ha especificado cómo se producirá Workspace, pero que utilizará la vista previa «para aprender más sobre el valor que proporciona y cómo lo usan los desarrolladores».
Creo que la pregunta más importante es: ¿Workspace solucionará los problemas existenciales que rodean a Copilot y otras herramientas de programación impulsadas por IA?
Un análisis de más de 150 millones de líneas de código comprometidas en repositorios de proyectos durante los últimos años realizado por GitClear, desarrollador de la herramienta de análisis de código del mismo nombre, encontró que El copiloto estaba generando más códigos defectuosos. Se introduce en las bases de código y vuelve a agregar más código en lugar de reutilizarlo y simplificarlo, lo que causa dolores de cabeza a los mantenedores del código.
En otros lugares, los investigadores de seguridad han advertido que Copilot y herramientas similares podrían hacer precisamente eso Amplificación de errores y problemas de seguridad encontrados en proyectos de software. Investigadores de la Universidad de Stanford descubrieron que los desarrolladores aceptan sugerencias de asistentes de programación basados en IA Tienden a producir código menos seguro.. (GitHub me confirmó que utiliza un sistema de prevención de vulnerabilidades basado en inteligencia artificial para intentar bloquear el código inseguro, así como un filtro de código duplicado opcional para detectar regresiones de código genérico).
Sin embargo, los desarrolladores no se avergüenzan de la inteligencia artificial.
En StackOverflow votar En junio de 2023, el 44% de los desarrolladores dijeron que ahora utilizan herramientas de inteligencia artificial en su proceso de desarrollo y el 26% planea hacerlo pronto. Gartner orgullo El 75% de los ingenieros de software empresarial emplearán asistentes de código de IA para 2028.
Al enfatizar la revisión humana, tal vez Workspace pueda ayudar a limpiar parte del desorden causado por el código generado por IA. Lo sabremos pronto cuando Workspace llegue a manos de los desarrolladores.
«Nuestro objetivo principal con Copilot Workspace es aprovechar la IA para reducir la complejidad para que los desarrolladores puedan expresar su creatividad y explorar más libremente», dijo Carter. «Realmente creemos que la combinación de humanos e IA siempre será superior a uno u otro por sí solo, y eso es a lo que apostamos con Copilot Workspace».
«Adicto a la música. Gurú del café. Especialista en zombis. Defensor de las redes sociales. Introvertido. Aficionado extremo a la comida. Evangelista del alcohol».