Google sigue avanzando en la aplicación de modelos de lenguaje a gran escala en la ingeniería de software, específicamente en la edición de código. Una investigación reciente se centra en cómo los desarrolladores utilizan la herramienta de edición de código ‘Transform Code’, alimentada por un modelo de lenguaje de gran escala (LLM). Esta herramienta es parte de un entorno de desarrollo integrado (IDE) utilizado en Google, y permite a los desarrolladores modificar y extender el código mediante prompts en lenguaje natural.
El análisis exhaustivo de los registros de telemetría ha permitido identificar que una re-solicitud frecuente de transformación puede ser un indicativo de las dificultades de los desarrolladores para usar Transform Code. Además, gran parte de las solicitudes insatisfactorias se deben a una falta de especificidad en los prompts de los usuarios.
Basado en estos hallazgos, se ha propuesto una herramienta llamada AutoPrompter para mejorar automáticamente los prompts al inferir información que falta en base al contexto de código circundante. Esto mejora la corrección de las ediciones en un 27% en el conjunto de prueba. AutoPrompter busca automáticamente llenar las lagunas informativas que frecuentemente afectan los prompts de los desarrolladores.
El estudio también revela diferencias claras entre las acciones de los desarrolladores tras aceptar o rechazar un cambio de código sugerido. Al aceptar, es común que los desarrolladores realicen ediciones adicionales, mientras que al rechazar, las acciones más comunes son modificar manualmente el código o volver a intentar con una re-solicitud del mismo prompt.
Para entender el comportamiento de los desarrolladores al usar la transformación de código, los investigadores analizaron un mes de registros de uso, centrándose en las iteraciones posteriores a las solicitudes de Transform Code. La mayoría de los desarrolladores tiende a no gastar tiempo en mejorar sus propios prompts, lo que sugiere que confiar demasiado en la misma solicitud sin cambios puede ser un error común.
El equipo propone que para maximizar los beneficios de herramientas como Transform Code, es fundamental no solo mejorar el rendimiento del modelo subyacente, sino también reducir la carga cognitiva de los usuarios durante la redacción de prompts. Al final, la clave es entender las verdaderas necesidades de los desarrolladores y direccionar el poder de los LLM para alcanzarlas más eficientemente.