spdup.net

Noticias tecnológicas

Comparando seis LLM para correcciones de código en el mundo real: GPT‑5, Claude Sonnet, Grok y más


Comparando seis LLM para correcciones de código en el mundo real: GPT‑5, Claude Sonnet, Grok y más

Introducción

Un benchmark reciente del blog Kilo Code puso a prueba a seis de los principales modelos de lenguaje grande (LLM) mediante tres desafíos de codificación realistas. El objetivo era sencillo: ver qué modelos podían detectar errores críticos de seguridad, proponer correcciones listas para producción y hacerlo de forma rentable. Los modelos evaluados fueron GPT‑5, OpenAI o1, Claude Opus 4.1, Claude Sonnet 4.5, Grok 4 y Gemini 2.5 Pro.

Los resultados resaltan una clara compensación entre profundidad técnica bruta y mantenibilidad práctica. Aunque todos los modelos identificaron las vulnerabilidades, la calidad, completitud y coste de las soluciones variaron drásticamente. A continuación se ofrece un recorrido detallado de la metodología, los tres casos de prueba y recomendaciones accionables para ingenieros que elijan un LLM para revisión de código o comprobaciones automáticas de pull‑request.


Metodología de Prueba

Kilo Code construyó un entorno de pruebas consistente para garantizar una comparación justa:

  • Entrada: Fragmentos de código pequeños y riesgosos (10‑50 líneas) se enviaron a cada modelo con el mismo prompt: “Arregla esto. Sin pistas, sin preguntas guía.”
  • Fase 1 – Evaluación por IA: Una rúbrica automatizada puntuó cada respuesta en corrección, calidad del código, completitud, prácticas orientadas a la seguridad y rendimiento.
  • Fase 2 – Validación Humana: Ingenieros revisaron las correcciones clasificadas por la IA y seleccionaron las versiones que realmente fusionarían.

Este enfoque de dos pasos combinó métricas objetivas con el juicio real de los desarrolladores, proporcionando una visión pragmática de la utilidad de cada modelo en pipelines de producción.


Escenario 1 – Vulnerabilidad de Fusión de Configuración en Node.js

Problema: Una función de fusión profunda propaga inadvertidamente una bandera admin maliciosa desde una carga útil manipulada a través de cadenas de prototipos, replicando patrones clásicos de OASP.

Resultados de los Modelos:

  • GPT‑5: Implementó salvaguardas en capas—objetos base sin prototipo, bloqueo explícito de claves riesgosas, verificaciones hasOwnProperty y congelación de objetos sensibles. La corrección fue exhaustiva y lista para producción.
  • OpenAI o1: Entregó funciones auxiliares limpias, una lista concisa de claves prohibidas y comentarios legibles. La solución era fácil de auditar en minutos.
  • Claude Sonnet 4.5: Utilizó Object.create(null) y bloqueo de claves, ofreciendo protección sólida pero con un poco menos de profundidad que GPT‑5.
  • Gemini 2.5 Pro: Aplicó filtrado de claves y prototipos nulos, pero pasó por alto algunos casos límite recursivos.
  • Claude Opus 4.1: Se basó en esquemas y verificaciones de tipos—efectivo pero con mayor carga de mantenimiento.
  • Grok 4: Se centró en filtrado simple y omitió la validación hasOwnProperty, resultando en una corrección más débil.

Conclusión: Todos los modelos detectaron el fallo, pero solo GPT‑5 y OpenAI o1 produjeron correcciones que se sentían listas para producción sin complejidad excesiva.


Escenario 2 – Flujo de Trabajo de Agente Moderno (Estilo 2025)

Problema: Un agente impulsado por IA recupera una página web, interpreta su contenido y propone llamadas a herramientas de una API de gestión en la nube. Sin límites estrictos, el agente puede ejecutar instrucciones maliciosas, provocando filtración de tokens entre inquilinos y cambios no autorizados.

Resultados de los Modelos:

  • GPT‑5: Introdujo alcances de herramienta estrechos, reglas de confirmación en dos pasos, límites de confianza estrictos (las credenciales nunca aparecen en el texto del modelo), verificaciones de procedencia del HTML recuperado y tokens de corta duración basados en roles.
  • OpenAI o1: Igualó la profundidad de GPT‑5, añadiendo análisis RBAC de inquilinos sombra, validación de esquemas de respuesta y una configuración que elimina por completo el acceso al sistema de archivos.
  • Claude Sonnet 4.5: Cubrió límites de confianza y rastreo de procedencia, pero careció de los detalles granulares de implementación de GPT‑5.
  • Gemini 2.5 Pro: Definió alcances de herramienta y usó validación de esquemas; el gating estaba presente pero era más ligero que en los mejores.
  • Claude Opus 4.1: Empleó validación con Zod y DOMPurify, proporcionando diagramas claros pero con menos defensas en capas.
  • Grok 4: Referenció el top‑10 de OASP y guías NIST con listas de permitidos; la lógica de gating permaneció simple.

Conclusión: Para patrones nuevos y complejos, el razonamiento profundo (como el demostrado por GPT‑5 y OpenAI o1) supera al simple reconocimiento de patrones.


Escenario 3 – Inyección de Comandos en ImageMagick

Problema: Una API de Express construye un comando de shell para ImageMagick usando una fuente y texto suministrados por el usuario. Una carga maliciosa puede inyectar operadores de shell (p. ej., ; rm -rf /), provocando ejecución arbitraria de código.

Resultados de los Modelos:

  • GPT‑5: Implementó una defensa integral—listas de permitidos estrictas, rutas de fuentes absolutas, evitación de prefijos especiales, ejecución mediante vectores de argumentos (sin shell), entrada por stdin, límites de tamaño/tasa y limpieza automática de archivos temporales.
  • Claude Opus 4.1: Similar exhaustividad con spawn, listas de permitidos, validación de tamaño, filtrado de caracteres de control y demos detalladas para revisores.
  • Claude Sonnet 4.5: Usó execFile con listas de permitidos robustas y limitación de tasa.
  • OpenAI o1: Cambió a execFile con validación concisa de fuentes y sanitización de texto.
  • Gemini 2.5 Pro: Adoptó spawn con listas de permitidos y validación limpia.
  • Grok 4: Explicó los peligros del parsing de shell (punto y coma, tubería, ampersand, backticks) y pasó a spawn con validación de rangos.

Conclusión: Las mejores soluciones combinaron ejecución segura de procesos con listas de permitidos estrictas y límites de tasa, eliminando los vectores de inyección de shell.


Análisis de Coste

Ejecutar los tres escenarios con los seis modelos costó aproximadamente 181 USD en total. El caso de ImageMagick fue el más caro debido a la longitud de las salidas del modelo. El escenario de fusión en Node.js fue el más barato, con un promedio de 0,60 USD por evaluación (alrededor de 0,10 USD por ejecución de modelo).

Recomendaciones de Presupuesto:

  • Para escaneos masivos donde el coste importa, Gemini 2.5 Pro o OpenAI o1 entregan entre el 90 % y 95 % de la calidad de GPT‑5 a un coste aproximadamente 72 % menor.
  • Para dominios de alto riesgo (finanzas, datos de salud, APIs privilegiadas), el gasto adicional de GPT‑5 se justifica por sus guardrails maximalistas.
  • Para revisiones estilo OASP generales, Claude Sonnet 4.5 ofrece un buen equilibrio entre cobertura y asequibilidad.

Recomendaciones Pragmáticas

  • Sistemas Críticos: Despliegue GPT‑5. Sus defensas en capas y correcciones exhaustivas lo hacen valer la prima.
  • Escaneos de Alto Volumen y Bajo Riesgo: Elija Gemini 2.5 Pro o OpenAI o1 para lograr un rendimiento cercano al máximo con una fracción del coste.
  • Punto Intermedio: Claude Sonnet 4.5 brinda protección sólida en patrones familiares manteniéndose amigable para el presupuesto.
  • Mantenibilidad: Los revisores humanos favorecieron OpenAI o1 porque sus correcciones fueron concisas, legibles en 15 minutos y aun así abordaron los escenarios más complejos.

La idea clave es que la solución más perfecta no siempre es la mejor a largo plazo. Una corrección ligeramente menos completa pero fácil de entender y mantener puede ser más valiosa en un entorno de desarrollo ágil.


Conclusión

El benchmark de Kilo Code demuestra que los LLM modernos han alcanzado un nivel donde los seis modelos detectan de forma fiable errores críticos de seguridad. Los diferenciadores ahora radican en qué tan exhaustivas son las correcciones, la profundidad de las guardas en capas y el coste total de ejecución.

  • GPT‑5 lidera en profundidad técnica y seguridad, ideal para código de misión crítica.
  • OpenAI o1 logra un equilibrio pragmático entre legibilidad, robustez y coste.
  • Gemini 2.5 Pro y Claude Sonnet 4.5 funcionan como potentes caballos de batalla para la higiene cotidiana del código.

Al integrar LLM en su flujo de trabajo de pull‑request, asocie el modelo a la misión: priorice la máxima seguridad para servicios de alto impacto y opte por modelos rentables donde la velocidad y el volumen predominan.

Al tratar a los LLM como asistentes revisores y no como reemplazos de oráculos, los equipos de ingeniería pueden aprovechar sus fortalezas mientras mitigan la sobrecarga de mantenimiento, entregando código más seguro a gran escala.

Ver Video Original