
¿Recuerdas este comentario de Quora (que todavía se convirtió en meme)?
(Fuente: Quora)
En la era Stack Overflow antecedente al maniquí de verbo excelso (LLM), el desafío era discernir cual fragmentos de código para adoptar y adaptar eficazmente. Ahora, si perfectamente producir código se ha vuelto trivialmente manejable, el desafío más profundo radica en identificar e integrar de guisa confiable código de incorporación calidad y nivel empresarial en entornos de producción.
Este artículo examinará los obstáculos y limitaciones prácticos que se observan cuando los ingenieros utilizan agentes de codificación modernos para el trabajo empresarial existente, abordando los problemas más complejos relacionados con la integración, la escalabilidad, la accesibilidad, la proceso de las prácticas de seguridad, la privacidad de los datos y la mantenibilidad en entornos operativos reales. Esperamos equilibrar el revuelo y convidar una visión más técnica de las capacidades de los agentes de codificación de IA.
Comprensión limitada del dominio y límites de servicio
Los agentes de IA tienen dificultades importantes para diseñar sistemas escalables oportuno a la gran arranque de opciones y a una desatiendo crítica de contexto específico para la empresa. Para describir el problema a grandes rasgos, las bases de códigos y monorepos de las grandes empresas suelen ser demasiado vastos para que los agentes aprendan directamente de ellos, y el conocimiento crucial con frecuencia puede fragmentarse en documentación interna y experiencia individual.
Más específicamente, muchos agentes de codificación populares encuentran límites de servicio que dificultan su eficiencia en entornos a gran escalera. Las funciones de indexación pueden patinar o degradarse en calidad para repositorios que superan los 2500 archivos o oportuno a limitaciones de memoria. Encima, los archivos de más de 500 KB a menudo se excluyen de la indexación/búsqueda, lo que afecta a los productos establecidos con archivos de código más grandes y con décadas de caducidad (aunque es cierto que los proyectos más nuevos pueden carear esto con menos frecuencia).
Para tareas complejas que involucran contextos de archivos extensos o refactorización, se retraso que los desarrolladores proporcionen los archivos relevantes y al mismo tiempo definan explícitamente el procedimiento de refactorización y las secuencias de compilación/comando circundantes para validar la implementación sin introducir regresiones de características.
Descuido de contexto y uso del hardware.
Los agentes de IA han demostrado una desatiendo crítica de conocimiento con respecto a las instalaciones del entorno, la crencha de comandos y la máquina del sistema activo (conda/venv). Esta deficiencia puede provocar experiencias frustrantes, como que el agente intente ejecutar comandos de Linux en PowerShell, lo que puede provocar constantemente errores de “comandos no reconocidos”. Encima, los agentes frecuentemente exhiben una “tolerancia de retraso” inconsistente al deletrear los resultados de los comandos, declarando prematuramente una incapacidad para deletrear los resultados (y avanzando para reintentar/comerse) incluso antiguamente de que un comando haya terminado, especialmente en máquinas más lentas.
Esto no se alcahuetería simplemente de quisquilloso características; más perfectamente, el diablo está en estos detalles prácticos. Estas brechas de experiencia se manifiestan como puntos reales de fricción y requieren una vigilancia humana constante para monitorear la actividad del agente en tiempo existente. De lo contrario, el agente podría ignorar la información de indicación original a la utensilio y detenerse prematuramente o continuar con una opción a medias que requiera deshacer algunos o todos los cambios, retornar a activar mensajes y desperdiciar tokens. No se garantiza dirigir un mensaje un viernes por la oscuridad y esperar que las actualizaciones del código se realicen cuando se verifique el lunes por la mañana.
Alucinaciones terminadas trillado comportamiento
Trabajar con agentes de codificación de IA a menudo presenta un desafío de larga data de alucinaciones o piezas de información incorrectas o incompletas (como pequeños fragmentos de código) adentro de un conjunto más excelso de cambios que se retraso que un desarrollador solucione con un esfuerzo entre trivial y bajo. Sin requisa, lo que se vuelve particularmente problemático es cuando se observa un comportamiento incorrecto. trillado adentro de un solo hilo, lo que obliga a los usuarios a iniciar un nuevo hilo y retornar a proporcionar todo el contexto, o intervenir manualmente para “desbloquear” el agente.
Por ejemplo, durante la configuración del código de una función Python, un agente encargado de implementar cambios complejos de preparación para la producción encontró un archivo (vea debajo) que contiene caracteres especiales (paréntesis, punto, suerte). Estos caracteres son muy comunes en informática para denotar versiones de software.
(Imagen creada manualmente con código repetitivo. Fuente: Microsoft aprende y Tirada del archivo host de la aplicación (host.json) en Azure Portal)
El agente marcó incorrectamente esto como un valía inseguro o dañino, deteniendo todo el proceso de concepción. Esta identificación errónea de un ataque adversario se repitió de 4 a 5 veces a pesar de varias indicaciones que intentaban reiniciar o continuar con la modificación. Este formato de lectura es, de hecho, repetitivo, presente en una plantilla de código de activación HTTP de Python. La única opción exitosa implicó ordenar al agente que no lea el archivo y, en su circunscripción, solicítele que simplemente proporcione la configuración deseada y asegúrese de que el desarrollador lo agregará manualmente a ese archivo, confirme y solicite que continúe con los cambios de código restantes.
La incapacidad de salir de un onda de salida de agente repetidamente defectuoso adentro del mismo hilo resalta una muro actos que desperdicia significativamente tiempo de expansión. En esencia, los desarrolladores ahora tienden a destinar tiempo a depurar/refinar el código generado por IA en circunscripción de fragmentos de código de Stack Overflow o los suyos propios.
Descuido de prácticas de codificación de nivel empresarial
Mejores prácticas de seguridad: Los agentes codificadores suelen utilizar de forma predeterminada métodos de autenticación menos seguros, como la autenticación basada en claves (secretos del cliente), en circunscripción de soluciones modernas basadas en identidad (como Entra ID o credenciales federadas). Esta supervisión puede introducir vulnerabilidades importantes y aumentar los gastos generales de mantenimiento, ya que la diligencia y la rotación de claves son tareas complejas cada vez más restringidas en entornos empresariales.
SDK obsoletos y reinventando la rueda: Es posible que los agentes no aprovechen constantemente los últimos métodos del SDK, sino que generen implementaciones más detalladas y más difíciles de sustentar. Aprovechando el ejemplo de la función Azure, los agentes han generado código utilizando el SDK v1 preexistente para operaciones de leída/escritura, en circunscripción del código SDK v2, mucho más honrado y manejable de sustentar. Los desarrolladores deben investigar las mejores prácticas más recientes en crencha para tener un planisferio mental de las dependencias y la implementación esperada que garantice la mantenibilidad a dilatado plazo y reduzca los próximos esfuerzos de migración tecnológica.
Examen de intención menguado y código repetitivo: Incluso para tareas modulares de último inteligencia (que normalmente se recomiendan para minimizar las alucinaciones o el tiempo de inactividad de depuración), como ampliar una definición de función existente, los agentes pueden seguir las instrucciones. textualmente y producir una método que resulta casi repetitiva, sin anticipar el futuro o el futuro. desarticulado deyección del desarrollador. Es aseverar, en estas tareas modulares, es posible que el agente no identifique y refactorice automáticamente lógicas similares en funciones compartidas o mejore las definiciones de clases, lo que genera deuda tecnológica y bases de código más difíciles de llevar la batuta, especialmente con codificación ambiental o desarrolladores perezosos.
En pocas palabras, esos videos virales de YouTube que muestran el rápido expansión de aplicaciones de cero a uno a partir de una sola frase simplemente no logran capturar los desafíos matizados del software de naturaleza de producción, donde la seguridad, la escalabilidad, la mantenibilidad y las arquitecturas de diseño resistentes al futuro son primordiales.
Afiliación del sesgo de confirmación
El sesgo de confirmación es una preocupación importante, ya que los LLM frecuentemente afirman las premisas del sucesor incluso cuando el sucesor expresa dudas y le pide al agente que refine su comprensión o sugiera ideas alternativas. Esta tendencia, donde los modelos se alinean con lo que perciben que el sucesor quiere escuchar, conduce a una calidad universal de salida estrecha, especialmente para tareas más objetivas/técnicas como la codificación.
Hay amplia letras sugerir que si un maniquí comienza generando una afirmación como “¡Tienes toda la razón!”, el resto de los tokens de salida tienden a evidenciar esta afirmación.
Penuria constante de cuidar niños
A pesar del atractivo de la codificación autónoma, la ingenuidad de los agentes de IA en el expansión empresarial a menudo exige una vigilancia humana constante. Instancias como un agente que intenta ejecutar comandos de Linux en PowerShell, indicadores de seguridad falsos positivos o introducir imprecisiones oportuno a razones específicas del dominio resaltan brechas críticas; los desarrolladores simplemente no pueden alejarse. Más perfectamente, deben monitorear constantemente el proceso de razonamiento y comprender las adiciones de código de varios archivos para evitar perder el tiempo con respuestas deficientes.
La peor experiencia posible con agentes es que un desarrollador acepte actualizaciones de código de múltiples archivos plagadas de errores y luego evapore el tiempo de depuración oportuno a lo “hermoso” que parece el código. Esto puede incluso dar circunscripción a la chanchullo del costo hundido de esperar que el código funcione luego de unas pocas correcciones, especialmente cuando las actualizaciones se realizan en varios archivos en una cojín de código compleja/desconocida con conexiones a múltiples servicios independientes.
Es similar a colaborar con un gurí prodigio de 10 abriles que ha memorizado amplios conocimientos e incluso aborda cada intención del sucesor, pero prioriza mostrar ese conocimiento sobre resolver el problema existente y carece de la previsión necesaria para tener éxito en casos de uso del mundo existente.
Este "cuidar niños" El requisito, contiguo con la frustrante recurrencia de alucinaciones, significa que el tiempo dedicado a depurar el código generado por IA puede empequeñecer el capital de tiempo previsto con el uso del agente. No hace desatiendo aseverar que los desarrolladores de grandes empresas deben ser muy intencionales y estratégicos al navegar por las herramientas y casos de uso de agentes modernos.
Conclusión
No hay duda de que los agentes de codificación de IA han sido nadie menos que revolucionarios, ya que aceleraron la creación de prototipos, automatizaron la codificación típico y transformaron la forma en que los desarrolladores construyen. El serio desafío ahora no es producir código, sino aprender qué dirigir, cómo protegerlo y dónde escalarlo. Los equipos inteligentes están aprendiendo a filtrar las exageraciones, utilizar agentes estratégicamente y duplicar su criterio de ingeniería.
Como director ejecutor de GitHub Thomas Dohmke observó recientemente: Los desarrolladores más avanzados han “pasado de escribir código a diseñar y revisar el trabajo de implementación que llevan a lengua los agentes de IA”. En la era de la agencia, el éxito no pertenece a quienes pueden producir código, sino a quienes pueden diseñar sistemas duraderos.
Rahul Tajada es ingeniero de software en LinkedIn.
Advitya Gemawat es ingeniero de formación inevitable (ML) en Microsoft.
Nota del editor: las opiniones expresadas en este artículo son opiniones personales de los autores y no reflejan las opiniones de sus empleadores.





