Dónde ayudan los agentes de programación y dónde fallan

Pedro Alves

Director de Tecnología en Thoth AI

Pedro Alves

Pedro Alves explica dónde los agentes de programación con IA aceleran la ingeniería, dónde introducen riesgos ocultos y por qué los desarrolladores experimentados siguen siendo esenciales.

Key Takeaways

Agentes de programación: Los agentes de programación pueden acelerar la implementación, pero el criterio humano debe guiar la arquitectura, la calidad y las decisiones de producción.

Errores ocultos: El código generado por IA suele ejecutarse correctamente mientras oculta defectos lógicos que los revisores experimentados deben detectar.

Carencias creativas: Los modelos gestionan bien las tareas de traducción bien definidas, pero las personas deben aportar ideas poco convencionales, conexiones y decisiones fundamentales.

Apalancamiento del equipo: Las organizaciones obtienen más beneficios al potenciar a los profesionales experimentados con IA que al intentar elevar el nivel de los equipos sin experiencia.

Control centralizado: Un equipo pequeño centrado en la IA puede crear flujos de trabajo reutilizables, reducir los experimentos duplicados y mejorar la adopción en todos los departamentos.

Pedro Alves lleva 25 años trabajando intensamente con la IA. Actualmente es director de tecnología de Thoth AI y creador de Last Week in AI.

Nos sentamos con Pedro para hablar sobre los agentes de programación y por qué es tan importante saber qué pueden hacer y qué no. Esto es lo que nos contó.

Antes de que la «IA» fuera algo que la gente ponía en las presentaciones

Antes de que la «IA» fuera algo que la gente ponía en las presentaciones


Soy Pedro, director de tecnología de Thoth AI. Trabajaba con IA antes de que fuera algo que la gente ponía en las presentaciones: en 2001, cuando estudiaba informática, creé un pequeño mundo lleno de agentes simulado y dejé que aprendieran a superarse entre sí, una especie de juego de la vida digital cuyo objetivo era observar cómo mejoraban. Eso fue hace 25 años y sigo persiguiendo la misma pregunta: ¿cómo conseguir que un sistema mejore?

Cuando llegó el momento de hacer un posgrado, todo el mundo daba por hecho que haría un doctorado en aprendizaje automático. No lo hice. Me parecía demasiado limitado y teórico. Quería aprender el oficio enfrentándome a los datos más ricos y desordenados que pudiera encontrar, así que me adentré en la biología computacional: proteómica para el máster y genómica para el doctorado. Aprendí aprendizaje automático, estadística y ciencia de datos aplicándolos —redes de interacción entre genes, ingeniería de características, redes neuronales y métodos de conjunto— a problemas en los que equivocarse tenía consecuencias.

Fue allí donde aprendí la lección que ha dado forma a todo lo demás. En medicina, desarrollé modelos de progresión de enfermedades y el indicador estándar —la precisión global— no servía para nada. Un modelo «bueno» según esa medida simplemente volvía a confirmar los casos que los médicos ya conocían, cuando todo el valor estaba en los casos que se les escapaban. Así que, en lugar de optimizar la precisión, optimicé el AUC parcial, es decir, la capacidad del modelo en los casos que importaban. La métrica que alguien te entrega casi nunca es el objetivo real.

Desde allí, recorrí varias industrias: esos modelos médicos, un periodo como consultor de un equipo de fútbol profesional, después Silicon Valley y años en visión artificial, cuando todavía había que innovar en la forma de entrenar e incluso de inicializar los pesos de una red para lograr que la detección y la clasificación funcionaran. Trabajé con datos de redes sociales, comercio minorista, moda y vídeo. Pasé un año creando algoritmos de negociación con algoritmos genéticos y optimización por enjambre de partículas, métodos de optimización no paramétrica sobre los que había escrito artículos durante el posgrado. Finalmente, fundé mi propia empresa para crear herramientas de IA destinadas a personas que no eran científicos de datos.

La amplitud conecta todo. Después de trabajar en una docena de campos, sigo viendo el mismo problema con distintos disfraces: un truco evidente en genómica resulta ser la clave en visión artificial. Me importa más cómo se plantea un problema que cómo se resuelve, porque es en el planteamiento donde se esconde la ventaja.

Esto es lo que me lleva a Thoth. Sobre el papel, somos una empresa de anotación de datos. Pero creo que el problema que resuelve todo este sector es el equivocado. Nadie quiere datos anotados; los datos son solo un paso intermedio. Lo que quieren es un modelo mejor. Por eso, estoy impulsando un futuro en el que un sistema determine qué datos necesita tu modelo para mejorar y se encargue de esa parte por ti, para que puedas centrarte en el modelo en lugar de en el etiquetado.

More Articles

Las dos vertientes del negocio

Estructuralmente, Thoth AI tiene dos vertientes. Una es el motor de operaciones de datos, que funciona a escala internacional. Es más grande que una empresa emergente típica, pero sigue siendo mucho más pequeña que los gigantes del sector, así que la definiría como una empresa mediana. La otra, la parte que estoy construyendo, es un equipo de investigación e innovación completamente nuevo aquí, en el Área de la Bahía: actualmente somos cinco, y se incorporarán más personas durante los próximos meses. Allí, nos ocupamos del resto de la mejora del modelo: todo lo que va más allá del etiquetado.

Nuestra investigación tiene dos líneas principales. La primera es la robótica: generar datos corporizados, evaluarlos y utilizar el aprendizaje activo para generar automáticamente los mejores datos de entrenamiento posibles, de modo que los robots puedan aprender sus tareas con la menor cantidad de datos posible. La mayor parte utiliza datos egocéntricos, esencialmente grabaciones en primera persona, y centramos buena parte de nuestro trabajo en producir datos egocéntricos de la mayor calidad posible. La segunda línea es la fiabilidad y la eficiencia en los modelos de lenguaje: comprender qué causa las alucinaciones y cómo se manifiestan y, en el ámbito de la eficiencia, reconocer cuándo un modelo más pequeño puede gestionar una consulta y, después, reformularla o dividirla en partes para que pueda responderla un modelo más sencillo y económico. Todo esto es investigación en la actualidad, orientada a productos que lanzaremos desde este equipo.

En cuanto a la etapa y el tamaño, la parte de datos es una operación internacional consolidada y de tamaño mediano, mientras que el equipo de investigación de Estados Unidos se encuentra deliberadamente en una fase inicial. Ahora somos cinco en nuestra oficina de San Mateo, y durante los próximos meses se incorporarán una o dos personas más. Ese es nuestro estado actual.

Cómo las pruebas exhaustivas generan resultados fiables

Pedro Alves

Pedro comparte

La preparación ahora se realiza prácticamente sola. Pero esa no es la verdadera ventaja. La mejora más importante es la calidad: la reunión es más precisa y se centra mejor en lo importante, y los asuntos adecuados llegan de forma fiable al CEO.

Muchos se apresuran a automatizar todas las tareas y funciones con IA, pero yo soy prudente. La IA hace que crear una demostración sea trivial. Crear algo fiable para el uso diario es diferente. Cuando utilizas estas herramientas de verdad, te encuentras con casos extremos y excepcionales en los que la automatización funciona casi bien, pero no del todo. Por eso, realizo muchas pruebas antes de confiar en algo dentro de un flujo de trabajo real.

Este año, desarrollé herramientas de IA para nuestra reunión semanal de revisión con el CEO que superaron ese umbral. Envían correos electrónicos a los responsables de cada área para recopilar actualizaciones, compilan automáticamente las respuestas, redactan informes, resúmenes y el orden del día, y realizan un seguimiento de los resultados a lo largo del tiempo.

Antes, todo eso se hacía manualmente. Alguien tenía que perseguir a las personas para obtener actualizaciones, unir manualmente las respuestas, redactar los resúmenes y el orden del día, y hacer un seguimiento de los resultados semana tras semana. Funcionaba, pero era lento, y el orden del día podía orientarse fácilmente hacia lo más reciente en lugar de hacia lo más importante.

Ahora, la preparación se realiza prácticamente sola. Pero esa no es la verdadera ventaja. La mejora más importante es la calidad: la reunión es más precisa y se centra mejor en lo importante, y los asuntos adecuados llegan de forma fiable al CEO. Por tanto, se trata menos del tiempo ahorrado y más de dirigir la atención del CEO hacia las decisiones que realmente importan.

Por qué el criterio sigue siendo humano mientras la IA acelera la programación

Por qué el criterio sigue siendo humano mientras la IA acelera la programación

La IA impulsa ahora la programación en sí misma, prácticamente en todas partes. Mis investigadores, los ingenieros que ponen nuestro trabajo en producción y yo utilizamos herramientas de programación basadas en IA. El criterio humano, no una categoría de tareas específica, determina cómo se desarrolla el código, y este estándar cambia según lo que esté en juego.

En el ámbito de la investigación, el objetivo suele ser conseguir que algo funcione, a menudo configurando un repositorio de GitHub para comprobar la viabilidad de una idea. Nada llega a producción, así que soy flexible con la forma en que está escrito. Si funciona y responde a la pregunta, es suficiente.

En producción es diferente. La forma en que construimos algo importa tanto como que funcione, por lo que utilizamos la IA con más cuidado. Los ingenieros sénior son responsables de la arquitectura, la calidad y las revisiones. La IA los acelera, pero no toma esas decisiones. Esa línea sigue siendo humana.

La experiencia del equipo ayuda. Utilizan la IA de forma diferente a las personas con menos experiencia. Ya saben cómo debe ser un buen resultado, por lo que el modelo amplifica su criterio en lugar de sustituir el criterio que todavía están desarrollando. Los hace más rápidos sin reemplazar la parte esencial.

Cómo utilizar eficazmente los agentes de programación

Casi todos los proyectos tienen algo único que necesitan: una idea o decisión no evidente que exige el problema… Lo que hace que un proyecto funcione normalmente no es algo promedio, y la IA no puede llegar a ello por sí sola. Encontrar esa pieza es responsabilidad mía. Después, la IA construye todo lo que depende de ella de forma más rápida y mejor de lo que yo podría hacerlo solo.

Pedro AlvesCTO en Thoth AI
Share This Quote on:

En general, la eficacia de los agentes de programación proviene de disciplinarme con respecto a los puntos fuertes y débiles de la tecnología.

Pienso en ello como si estuviera pintando un lienzo. El objetivo siempre es el mismo: aclarar la imagen que tengo en la cabeza y utilizar después la IA para convertir esa intención en código funcional lo más rápido posible. Su éxito depende de una variable: cuánto trabajo creativo conservo y cuánto delego.

La IA destaca en el primer nivel. Puedo ver el cuadro completo y dar las pinceladas generales, mientras la IA rellena los detalles. Sé exactamente qué hay que construir, y traducir la intención a código es, en esencia, algo formulable. Aquí es donde la IA multiplica realmente la capacidad, y la mayor parte de mi trabajo diario se encuentra en este nivel.

El segundo nivel es útil, pero presenta una mayor variabilidad. Es parecido, pero dejo intencionadamente abiertas algunas zonas del lienzo y le digo al modelo que pinte algo en ellas. Requiere cierta creatividad, pero mi orientación sigue delimitando el resultado. Considero ese resultado un borrador, no una respuesta.

Advierto a la gente sobre el tercer nivel. Consiste en entregar a la IA el núcleo creativo: la definición del proyecto o las decisiones clave de diseño. Puede resultar impresionante para alguien que no conozca en profundidad el ámbito, pero funciona mal con mucha más frecuencia de la que tiene éxito, porque el modelo rellena un vacío que debería haber rellenado yo.

Esa brecha es precisamente lo importante. Casi todos los proyectos tienen algo único que necesitan: una idea o decisión poco evidente que exige el problema. De forma predeterminada, el modelo proporciona la solución promedio, el patrón más común de sus datos de entrenamiento. La parte que hace que un proyecto funcione normalmente no es promedio, y la IA no puede llegar a ella por sí sola. Esa pieza me corresponde encontrarla. Después, el agente de IA construye todo lo que depende de ella más rápido y mejor de lo que yo podría hacerlo solo.

Cómo los agentes de programación crean errores difíciles de detectar

Pedro Alves

Pedro comparte

El resultado positivo más evidente de los agentes de programación es la velocidad. Programar es más rápido, lo que aumenta nuestra frecuencia de despliegue, y no se trata solo de velocidad bruta. Ahora es mucho más fácil configurar cosas que antes eran complicadas. Esa parte es real y es importante.

El resultado positivo más evidente de los agentes de programación es la velocidad. Programar es más rápido, lo que aumenta nuestra frecuencia de despliegue, y no se trata solo de velocidad bruta. Ahora es mucho más fácil configurar cosas que antes eran complicadas. Esa parte es real y es importante.

Un resultado más interesante es cómo cambiaron nuestros errores. La tasa de defectos no ha aumentado, pero los tipos de defectos sí han cambiado. La IA garantiza que el código se ejecute. Casi siempre lo comprueba antes de devolvértelo. Por eso, los errores más sencillos —los que simplemente generan un error o impiden que el código se ejecute— aparecen con mucha menos frecuencia. Lo que queda son errores lógicos, casos que el modelo no analizó detenidamente, y estos son más difíciles de detectar precisamente porque el código se ejecuta correctamente.

Ahí es donde reside el inconveniente. Estos errores se ocultan mejor. Si alguien carece de experiencia o depende demasiado de la herramienta, ve que el código se ejecuta y supone que es correcto cuando no lo es. El peligro no son más errores, sino una falsa confianza. Necesitas a alguien que sepa qué buscar para detectar las cosas que superan la prueba de «se ejecuta», pero siguen estando mal.

Por qué la IA debe utilizarse para ampliar la capacidad de las personas con experiencia en lugar de mejorar a las personas menos capacitadas

Lo que más me sorprendió fue de dónde procede el apalancamiento. Intuitivamente, uno podría pensar que la IA reduce el nivel de experiencia necesario, lo que permite contratar equipos más baratos y con menos experiencia y dejar que las herramientas los pongan al nivel adecuado. Ocurrió lo contrario. La experiencia importa más ahora, no menos.

Todo se reduce a la fiabilidad. Utilizar la IA para convertir a un ingeniero sénior en cinco ingenieros sénior es mucho más fiable que convertir a un ingeniero júnior en uno sénior. La IA multiplica el criterio que ya tienes; no fabrica el criterio que no tienes.

Por eso, amplío la capacidad de mis mejores profesionales; no intento hacer crecer la de los menos capacitados. Unos cuantos profesionales con experiencia, cada uno trabajando varias veces por encima de su producción anterior, superan siempre a un equipo mixto más grande.

Por qué los humanos deben aportar la creatividad, no la IA

Por qué los humanos deben aportar la creatividad, no la IA

Está claro que la IA no ha cumplido las expectativas en los aspectos creativos y de conexión de la investigación. Cuando realizo trabajo técnico con asistencia de IA, una persona sigue teniendo que conectar los puntos: averiguar cómo ampliar el trabajo de otra persona, vincular dos artículos de una manera que tenga sentido y dar los saltos lógicos que normalmente darías por sentados. Esa parte todavía requiere a una persona.

Esto no sorprende cuando recuerdas qué son estos modelos. Son máquinas de probabilidad. Generan el texto con más probabilidades de agradar al lector. Cada vez somos mejores entrenándolos para otros tipos de tareas, pero se vuelve realmente difícil cuando intentas enseñarles la creatividad en sí, porque crear la señal de entrenamiento es complicado.

Considera los conjuntos de datos. Un conjunto de datos sobre el aspecto de un perro es sencillo. Recopilas muchas imágenes de perros. Un conjunto de datos sobre la creatividad al dibujar perros plantea un problema diferente. Por ejemplo, piensa en alguien que añade alas a un perro. Lo importante de ese ejemplo no son las alas. Es el movimiento abstracto que hay detrás: tomar algo que no pertenece a un lugar y ponerlo donde no se espera. Para conseguir que un modelo entienda eso, necesitas una cantidad enorme de ejemplos para que aprenda que las alas no importan; lo que importa es el gesto creativo.

Incluso si llega a conseguirlo, te encuentras con el siguiente obstáculo. Ahora toma esa misma creatividad y aplícala a una ecuación matemática o a un fragmento de código de un artículo, utilizándola para ampliar el algoritmo de alguien. Ese tipo de transferencia es donde se desmorona.

Las personas recurren a las máquinas precisamente para la parte en la que son más débiles. La ironía es que la solución es sencilla. Una pizca de creatividad humana puede llegar muy lejos. No dependas demasiado de la máquina para esa parte y llegarás sorprendentemente lejos.

Por qué los CTO deben rediseñar la forma en que las capacidades de la IA se mueven por las organizaciones

Este no será el consejo más popular ahora mismo, pero creo que es el más prudente y el que probablemente dé mejores resultados: sé más deliberado de lo que el momento te impulsa a ser.

Ahora mismo, las empresas están gastando enormes cantidades de dinero basándose en una simple suposición: todo el mundo puede automatizar parte de su trabajo con AI. Así que la directiva se comunica a todo el mundo. Ingenieros, profesionales de datos, ventas, marketing, toda la empresa. Crea una cuenta, automatiza algo, construye tus propias herramientas y adelante. El resultado es una enorme cantidad de esfuerzo desperdiciado: trabajo duplicado, proyectos que no llegan a ninguna parte y herramientas que nadie utiliza. Las empresas malgastan mucho dinero en esfuerzo, tiempo y tokens que no producen nada duradero.

Establece un proceso real. Centralízalo. Crea un pequeño equipo central cuyo trabajo sea hacer que todos los demás equipos sean mejores con AI. Desarrollan flujos de trabajo, contexto reutilizable, estándares y patrones eficaces, y después los distribuyen para que cada ingeniero no tenga que asumir por separado el coste del descubrimiento. Esta es la versión estructural de lo que he dicho antes sobre concentrar la capacidad de influencia en tus personas más fuertes: unos pocos ingenieros familiarizados con AI impulsando a toda la organización.

Esto produce dos resultados simultáneamente. La utilización aumenta porque los equipos aplican patrones probados en lugar de hacer suposiciones. Y recuperas una gran cantidad de tiempo que se pierde silenciosamente en experimentos que nunca deberían haberse realizado más de una vez.

Este no será el consejo más popular ahora mismo, pero creo que es el más prudente y el que probablemente dé mejores resultados: sé más deliberado de lo que el momento te impulsa a ser… Establece un proceso real. Centralízalo. Crea un pequeño equipo central cuyo trabajo sea hacer que todos los demás equipos sean mejores con AI.

Pedro AlvesCTO en Thoth AI
Share This Quote on:

Sigue su trabajo

Puedes seguir el trabajo de Pedro Alves en LinkedIn o suscribirte a su boletín, La semana pasada en AI. También puedes consultar Thoth AI.

¡Próximamente habrá más entrevistas con expertos en The CTO Club!

You may also like