Mostrando entradas con la etiqueta AgenticAI. Mostrar todas las entradas
Mostrando entradas con la etiqueta AgenticAI. Mostrar todas las entradas

jueves, 16 de julio de 2026

Los agentes y el martillo de oro (III): soluciones híbridas y ecosistemas de agentes

Y con este post remato la pequeña serie dedicada a los agentes como martillos de oro. Y lo hago ofreciendo algunas soluciones intermedias o híbridas al problema planteado.

Pero vamos a ir poco a poco, recapitulando primero algunos conceptos y recordando la definición del problema.


Un paso atrás: los agentes de la Agentic AI


Damos, pues, un paso a atrás para recordar conceptos. Y lo primero es recordar de qué hablamos cuando hablamos de un agente. Y antes de hacerlo, insistir en que el término 'agente' se lleva utilizando desde hace décadas, e incluso siglos, y no sólo en tecnología. Así que, de los que hablamos son de los agentes de que hablamos bajo el paraguas de la Agentic AI.

Y se trata, como vimos, de programas construidos alrededor de un modelo de lenguaje razonador que son capaces de funcionar de manera autónoma, recibir sus tareas u objetivos mediante una especificación en lenguaje natural y, con base en sus capacidades razonadoras, decidir por sí mismos, y en tiempo de ejecución el plan a ejecutar para conseguir el objetivo. Un plan que puede ser revisado conforme avanza y se obtienen resultados intermedios, y un plan en cuyos diferentes pasos se puede incluir la selección y ejecución de una herramienta externa que le permite, entre otras cosas, interactuar con el mundo exterior.


Agentes versus workflows


Estructura de un agente


Estructura de un agente
Conforme a lo comentado, la estructura de alto nivel de un agente es la que se muestra en la figura. En el núcleo tenemos un modelo de lenguaje razonador y, como apoyo, una serie de herramientas con las que puede interactuar y que, aparte de alguna posibilidad adicional, fundamentalmente le ayudan a entrar en contacto con aplicaciones y recursos externos (una web, un sistema empresarial, el correo electrónico, etc)

En la figura dibujo a trazos la unión entre el modelo de lenguaje y las herramientas queriendo indicar que, según el plan generado, se invocan o no.


Estructura de un workflow


Y es importante comparar a estos agentes basados en modelos de lenguaje razonadores con otro tipo de soluciones anteriores que funcionan bajo un paradigma de reglas y, sobre todo flujos o workflows. Denomino genéricamente 'workflows' a ese tipo de soluciones que incluye, por ejemplo, los robots RPA ('Robotic Process Automation'), a los a veces denominados workflows en la nube o IPaaS (como Make, N8N o Zapier) e, incluso, forzando un poco, a los BPMS ('Business Process Management System') y los CMS ('Case Management System').

Estructura de un workflow
A alto nivel estas soluciones que agrupo bajo la etiqueta 'workflows' exhiben patrones estructurales muy similares entre sí, e incluso con los agentes.

En el caso de los workflows, el plan está predefinido en tiempo de desarrollo y adopta la forma de un flujo con sus pasos y, eventualmente, bifurcaciones y/o bucles. Y también pueden interactuar con aplicaciones y recursos exteriores, en este caso haciendo uso, habitualmente, de conectores que recubren un API generalmente de tipo REST.


Comparativa


En el fondo, estructuralmente hablando, se trata de soluciones muy similares. En la figura inferior, los ponemos frente a frente.


Comparativa Agente-Workflow

En esa figura, e intencionadamente, he eliminado la mención explícita a herramientas (en el caso de agentes) y a conectores (en el caso de workflows). ¿Por qué? Pues porque, a despecho de alguna diferencia en cuanto a la definición, y algunas variantes en cuanto a implementación, su rol es exactamente el mismo y, por tanto, de cara a la comparativa estructural prefiero que no se muestre ninguna diferencia.

La diferencia fundamental es que, en el caso de los agentes, el plan de acción se decide y revisa de forma dinámica en tiempo de ejecución por el propio agente, mientras que en los workflows el plan de acción se define en tiempo de desarrollo por el desarrollador humano y es estático. Esta diferencia es fundamental, tanto para lo bueno de los agentes, la flexibilidad, potencia e inteligencia de los agentes, como para lo malo de los agentes: incertidumbre y consumo computacional.

Sólo por apuntar alguna otra diferencia, se puede observar en la figura que, en el caso de los agentes, y como mencioné más arriba, dibujo con trazos la unión con los nodos herramienta, mientras que en los workflows esa flecha la dibujo con trazo continuo. Lo que esto trasmite es una consecuencia del dinamismo del plan de los agentes: a priori no podemos estar seguros de qué herramientas va a invocar ni de qué forma. En el caso de los workflows sí se sabe, porque está definido en el flujo.

Podríamos apuntar algunas otras diferencias de menor calado, pero prefiero quedarme con estas que son nucleares.

Aunque me preocupan un poco las connotaciones de la palabra 'determinismo' en el ámbito de la inteligencia artificial, diría, por expresarlo de una forma aún más compacta que:


Un agente es una solución muy flexible y potente pero no determinista, mientras que un workflow es una solución más rígida y acotada, pero determinista.

 

Estableciendo el enunciado del problema


Llegados hasta aquí, y antes de pasar a la soluciones que propongo, recordar cuál es el problema a que me refiero (y que puede que el lector identifique como tal o no).

Mi argumentación parte de la idea de que, al menos a nivel de discurso, parece que los agentes son la solución a cualquier problema, especialmente de automatización de tareas y procesos. Es decir, se considera a los agentes como un martillo de oro, capaz de soluciones cualquier problema que, por tanto, vemos siempre como un clavo. 

Salvo que alguien me demuestre lo contrario, creo que los agentes, al menos en su estado de arte actual, no deben ser la solución única, que todavía hay muchas tareas que se automatizan mejor mediante una solución más clásica basada en un workflow. 

En concreto, cuando la solución al problema la tengamos clara y sepamos claramente las reglas que la gobiernan, un workflow parece mejor solución que un agente, por los siguientes motivos:


  • Dado que un workflow es determinista, es mucho más sencillo de probar y, una vez probado, garantiza un comportamiento correcto, conocido y reproducible, cosa que en un agente nunca podemos estar 100% seguros.

  • El coste computacional de ejecutar un agente, para una tarea similar, es muchísimo más alto que el de la misma tarea ejecutada por un workflow

  • Dado que el coste computacional es mucho más alto, el coste económico es también más elevado y, además, no del todo predecible (no podemos saber con seguridad los tokens que se necesitarán).

  • Finalmente, ese coste computacional se traduce en consumo eléctrico y de refrigeración, incrementando la huella de carbono y el impacto medioambiental


El razonamiento es, pues, resumiendo, que aunque los agentes son de una potencia extraordinaria y nos abren unas grandísimas posibilidades, no siempre son la mejor solución, y por lo tanto, no debemos considerarlos martillos de oro, sino elegir en cada momento la solución de automatización más adecuada.


Algunas posibles soluciones intermedias e integradoras


La verdad es que, hasta aquí, casi que lo que he hecho es nada más que resumir e ilustrar, el contenido de los dos posts anteriores. Vamos ahora con algunas soluciones o planteamientos que se me ocurren. En concreto, y aunque es posible que existan otras soluciones, o que las que propongo se puedan combinar, voy a proponer cuatro opciones, a saber:


  • Solución 0: seleccionar la solución caso a caso
  • Solución 1: el modelo generador de workflows
  • Solución 2: orquestadores
  • Solución 3: ecosistemas híbridos


En lo que sigue, comento brevemente cada una.


Solución 0: seleccionar la solución caso a caso 


Esta solución le llamo solución 0, porque, en realidad, es casi trivial. 

Si se admite que no todos los problemas se resuelven mejor con un agente pues entonces, simplemente, antes de lanzarse a desarrollar un agente o un workflow decidir conscientemente y con criterio cuál es la solución adecuada para ese caso concreto


Solución 1: el modelo generador de workflows


La solución 1 consistiría en que el propio modelo razonador que genera el plan fuese capaz de detectar, por sí mismo o con asistencia humana, qué tipo de solución es mejor y si, al inicio de su resolución detecta que es un problema basado en reglas y resoluble mediante un flujo, simplemente que genere ese flujo.

Me parece perfectamente viable técnicamente puesto que casi todas las herramientas de tipo workflow expresan ese workflow mediante un lenguaje de marcado (tipo YAML) o mediante JSON, dos formatos que un modelo de lenguaje domina muy bien.

Eso sí, no eliminamos al 100% el no determinismo, puesto que el agente puede equivocarse y no darse cuenta de que un problema se resuelve mejor mediante workflow. Tampoco es óptimo computacionalmente, porque la propia decisión de si vale la pena crear un workflow, e incluso la creación del workflow propiamente dicho sigue usando los mecanismos propios de un modelo de lenguaje.

No es pues, creo, una solución absoluta, pero alivia el problema.


Solución 2: orquestadores


La siguiente solución se apoya en la idea de que la relación de agentes entre sí, y de workflows entre sí puede hacerse jerárquica e incluso recursiva. Es decir, un agente puede invocar a otro agente (que actúa como herramienta) y un flujo puede invocar a otro flujo (usando una especie de conector). 

Esta opción, que no sólo es viable, sino que ya hay plataformas que permiten su creación, es hacer automatizaciones en que exista un nodo orquestador, y otros nodos que realizan tareas. Y, para aquellas tareas en que la solución mejor sea un workflow, pues se utiliza un workflow y para aquellas en que la mejor solución sea un agente y es el orquestador quien lo decide. El esquema de esta opción se muestra en la figura.


Orquestadores

Se puede ver que, además, esta solución tiene una doble vertiente: que el orquestador sea un agente o que el orquestador sea un workflow. Además, y aunque en la figura se muestra que un agente sólo invoca workflows y un workflow sólo invoca agentes, en realidad, ya sea orquestado por un agente o por un workflow, los nodos que ejecutan las tareas pueden ser cualquier tipo.

Como digo, este tipo de esquemas ya se pueden hacer hoy en día, no sólo en código, sino en herramientas como Make.


Solución 3: el ecosistema híbrido


La solución 2 ya anticipa un poco lo que es la solución 3 (realmente es un caso particular de la solución 3).

La solución 3, el ecosistema, parte de concebir las automatizaciones como una interacción entre unos nodos que pueden ser agentes o workflows y que se combinan en interaccionan entre sí según la naturaleza del problema. Es lo que intento mostrar en la siguiente figura: 


Ecosistemas de agentes, con workflows como forma de agente

Es una solución muy similar a la del orquestador pero sin que haya nodos con ese rol especial, sino que interactúen en un esquema más P2P. En el fondo, esta solución se basa en la idea de los ecosistemas de agentes, pero reconociendo a los workflows también como agentes.

Para que está solución sea óptima, como en el fondo también en el caso anterior, ha de cumplirse que cuando el orquestador seleccione un nodo para delegar una tarea, o cuando un agente del ecosistema delegue en otro la ejecución de una tarea, se 'acierte' siempre, en el sentido de identificar siempre cuándo una tarea se resuelve mejor mediante un workflow.

No voy a profundizar más en ello, pero se me ocurre que sino conseguimos que un modelo de lenguaje acierte siempre en la elección de workflows, se le 'podría ayudar' mediante alguna forma de catálogo de tareas que se resuelven mejor mediante workflows.


Algún pequeño 'disclaimer'


Antes de cerrar este post, hacer algún pequeño 'disclaimer'.

El primero es que las propuestas que hago no dejan de ser eso, propuestas, hechas un poco 'a bote pronto', aunque es un tema al que le doy vueltas con cierta frecuencia últimamente.

Por otro lado, ni reclamo ni dejo de reclamar la 'autoría' u originalidad de estas propuestas. No renuncio a esa supuesta 'autoría' u 'originalidad', porque es fruto de mi propia reflexión, no es nada que haya visto en ningún sitio salvo, hasta cierto punto, la idea del orquestador. Pero tampoco me atrevo a reclamar la autoría y, sobre todo, originalidad, porque me cuesta pensar que no haya ya mucho pensado e incluso escrito sobre estos temas y que existan propuestas, implementadas y/o publicadas, iguales o muy parecidas a las que hago..

Finalmente, apostaría a que hay más soluciones que yo no he planteado aquí y puede que mejores... así que me encantará o bien descubrir en alguna publicación o bien que se me ocurran a mi en un proceso de indagación y reflexión.


Conclusiones


El considerar a los agentes como martillos de oro, como la única solución para todos los problemas fundamentalmente de automatización, puede ser un error, ya que existen soluciones, especialmente las basadas en workflows, eventualmente más adecuadas y, además, más seguras, eficientes, baratas y sostenibles.

En este post, tras, revisar conceptos y la naturaleza del problema, se proponen cuatro estrategias de solución híbridas.


Artículos de este blog relacionados


miércoles, 8 de julio de 2026

Los agentes y el martillo de oro (II): agentes y medio ambiente

Con este post continuo la breve serie que quería dedicar a un eventual uso irreflexivo de los agentes, un uso que no se detiene a considerar que en ciertos casos existen  mejores alternativas. Es decir, continuo la serie dedicada a considerar a los agentes como un martillo de oro, la solución para cualquier problema que pasa a ser siempre un clavo. 

Si en el post anterior reflexionaba sobre si no es mejor, desde un punto de vista fundamentalmente técnico y operativo,  usar en ciertos casos soluciones basadas en reglas o workflows mejor que un agente, en este artículo torno mi mirada hacia la sostenibilidad y el impacto medioambiental.


Agentes 101


Antes, recordar brevemente, una vez más, qué es esto de los agentes y de la Agentic AI (aquellos lectores que lo tengan claro pueden saltarse esta breve sección)

Los agentes de la agentic AI, son unos programas construidos alrededor de un gran modelo de lenguaje razonador. Unos programas que son capaces de funcionar de manera autónoma buscando realizar tareas eventualmente complejas o satisfacer objetivos que reciben expresados en lenguaje natural. 

Además son capaces de usar una serie de elementos, denominados herramientas, que les permiten realizar tareas especializadas y, sobre todo, interactuar con el exterior, típicamente con otras aplicaciones.

Y, de manera muy relevante y diferencial, esos agentes, definen ellos mismos el plan de acción a aplicar para realizar la tarea o alcanzar el objetivo encomendado. Y para definir ese plan de acción, utilizan ese modelo de lenguaje razonador. Además, estos planes de acción son dinámicos y se revisan 'en vuelo' según los resultados parciales que el agente vaya obteniendo.


El precio del razonamiento


No sólo es diferencial, es que también es tremendamente atractivo y potente que el agente sea capaz de 'pensar', crear y revisar el plan de acción. Es como un alarde de inteligencia y permite que le encomendemos tareas complejas o, incluso, tareas que nosotros no sabemos resolver.

Pero esa potencia, esa brillantez, tiene un precio en forma de consumo computacional. Si el uso de cualquier modelo de lenguaje, incluso para una tarea simple como completar un texto, es costoso computacionalmente, hacer un plan es mucho más costoso. Y revisarlo también

Y por si eso fuese poco, es posible que no se trate de acciones que se realicen una sola vez. Es que el agente puede estar funcionando de manera permanente, continua, con lo que esa planificación o revisión de planificación puede estarse ejecutando repetidamente. 


La economía y el medio ambiente


Y, claro, el coste computacional se traduce en consumo energético y, por tanto, en coste económico. Un coste económico que se traduce para el proveedor del modelo en factura eléctrica y eventualmente más facturas en forma, por ejemplo, de refrigeración. Y para el que usa el agente en factura IT, por tokens consumidos o la unidad que se haya acordado.

Pero claro, a poco que esa energía utilizada provenga de fuentes no renovables, ese consumo energético se traduce en huella de carbono u otros impactos medioambientales como calentamiento de aire o agua usados en refrigeración.

No, por desgracia no parece que los agentes se lleven muy bien con el medio ambiente


Un consumo muy perceptible


Ese consumo computacional se puede percibir además, no de forma precisa, pero sí muy tangible.

No hace mucho, casi más por experimentar, me creé un agente sencillo usando la herramienta Make. Cuando lo ejecuté, me llamó mucho la atención lo que tardó en realizar la tarea, una tarea que realmente era muy simple, casi trivial.

En realidad, se trataba de una tarea que creo impropia para un agente. Creo recordar que consistía en procesar correos entrantes, crear una respuesta para esos correos y contestar al remitente con esa respuesta.

Como usuarios estamos acostumbrados hoy en día a muy bajas latencias, a tiempos de respuesta muy buenos, por lo que esta lentitud era llamativa. Pero hay que tener en cuenta que el agente tenía que entender la tarea, realizar el plan de acción e imaginarse qué herramientas de las que ponía a su disposición utilizar y de qué forma. Eso no es tan fácil.

Esa lentitud percibida era, pues, una manifestación tangible del coste computacional de lo que el agente estaba haciendo.


Workflows: cuando la eficiencia técnica se alinea con la sostenibilidad


Y, sin embargo, con esa misma herramienta Make, que habitualmente se utiliza no para hacer agentes sino workflows, podría haber creado un workflow (escenarios como se llaman en Make) muy simple para hacer la misma labor.

La ejecución de ese workflow, aparte de más fiable en cuanto a estar seguros de que iba a hacer lo encomendado, es mucho, muchísimo más rápida. Y sería muchísimo más rápida porque el flujo ya estaría pensado en tiempo de diseño, no sería necesario crear ningún plan ni revisarlo (el propio workflow es el plan y es estático). Tampoco es necesario deducir qué herramienta (el GMail en este caso) usar, porque el propio workflow indica cuál es y cómo se invoca.

Desde un punto de vista técnico y operativo interesa saber que la tarea realizada con un workflow es mucho más rápida y mucho más fiable en cuanto a resultados.

Esa eficacia y eficiencia técnica y operativa tiene, claro, también su traducción en menor consumo energético y, por tanto, menor coste.

Y, por si algo faltaba, es una solución más respetuosa con el medio  ambiente porque ese menor consumo energético va a tender a crear mucha menor huella de carbono y mucho menor calentamiento.


El martillo de oro


Por tanto, no caigamos en pensar que los agentes son un martillo de oro y que son siempre son la mejor opción.

En el post anterior razoné que de cara a la eficacia, la eficiencia y la calidad, probablemente, para ciertos casos, existan soluciones mejores, soluciones más tradicionales basadas en reglas o workflows.

En este post recuerdo que la sofisticación de un agente viene acompañada de un coste económico y medioambiental y, por tanto, se deben usar con prudencia, cuando el tipo de tarea encomendada realmente sea propia de un agente e, incluso en este caso, debería preocuparnos su impacto medioambiental.

Como se puede observar, ni los agentes son un martillo de oro, ni todos los problemas son clavos.


Conclusiones


Los agentes son unas soluciones excitantes, poderosas y abren enormes posibilidades en automatización y seguramente más campos como investigación.

Pero no son un martillo de oro. No son la mejor solución técnica para todos los problemas y, desde luego, no son la mejor solución para el medioambiente.

Seamos, pues, responsables.


Artículos de este blog relacionados


viernes, 12 de junio de 2026

Cuatro patrones para la monitorización de agentes IA en producción

Probablemente, una de las áreas en que más se trabaje, o al menos que, digamos, más 'preocupación' genere en el tema de los agentes IA sea la gobernanza de éstos y, más específicamente, como gestionarlos adecuadamente en producción, cómo hacer que sean seguros, cómo vigilar que tengan un comportamiento correcto, cómo asegurar que funcionan como esperamos que funcionen.

 

Inteligentes pero imprevisibles


Y esta labor no es trivial en absoluto pese a la cantidad de años que llevamos monitorizando todo tipo de sistemas, garantizando su seguridad, sus prestaciones y su escalabilidad, y a pesar de la abundancia de soluciones y herramientas que existen para ello.

Y la dificultad surge, no del hecho de que los agentes sean un tipo de software novedoso, sino de la naturaleza misma de este tipo de solución basada en IA, de lo que les diferencia y les da valor.

Los agentes son un tipo de software autónomo, pero eso no es nada nuevo. Existen desde hace décadas sistemas que se comportan de manera autónoma. Y sabemos monitorizarlos y operarlos.

Los agentes, como su propio nombre indica, son también capaces de actuar, esto es, de realizar acciones sobre sistemas de ficheros, sobre bases de datos o sobre otras aplicaciones. Pero esto no es tampoco nada nuevo y nada que en general no sepamos controlar. Esa misma capacidad de actuación, además de una forma bastante parecida, la tienen también muchos otros sistemas autónomos, como los robots RPA que describía en mi libro 'Robots en la sombra' o los modernos workflows en la nube que construimos con plataformas como Make, N8N, Zapier o Power Automate Cloud.

No, la verdadera dificultad no está ahí, no está en la autonomía y ni en la capacidad de actuación. sino en la forma en que estos sistemas autónomos 'deciden' que hay que hacer. Todos los demás sistemas autónomos que les han precedido y con los que conviven, tienen marcada, de una forma rigurosa y cerrada, la lógica que deben seguir para llevar a cabo la tarea que tienen encomendada y automatizarla. Esta lógica se establece en tiempo de desarrollo por el propio desarrollador y suele adoptar la forma de un flujo, un workflow, aunque pueden existir otras formas de fijar reglas de comportamiento.

El caso de los agentes es muy diferente. No tienen una lógica pre-establecida, sino un objetivo o tarea, unas reglas de comportamiento muy generales expresadas en lenguaje natural y una serie de capacidades de actuación mediante las denominadas herramientas ('tools'). Pero la verdadera lógica de solución la decide el agente usando sus capacidades razonadoras basadas en un gran modelo de lenguaje, y lo hace en tiempo de ejecución, no de desarrollo.

Eso nos lleva a un comportamiento sin duda más inteligente, más flexible y más adaptativo, pero precisamente por eso, hasta cierto punto imprevisible. No quiero decir con ello que sean completamente imprevisibles, pero sí que no existen unas reglas exactas y que el agente tiene, digamos, grados de libertad.


Difíciles de probar, difíciles de monitorizar


Esa imprevisibilidad los hace difíciles de probar, porque no podemos establecer un catálogo exhaustivo y cerrado de casos de prueba que garanticen haber ejercitado con éxito todas los escenarios posibles. Ni siquiera es siempre posible definir con claridad cuál es el resultado que consideraríamos correcto para dar por bueno el caso.

Esas mismas dificultades se trasladan a a la monitorización en producción. Podemos monitorizar, claro, ciertas manifestaciones externas de su comportamiento como, por ejemplo, invocaciones de cada herramienta a su disposición o los datos que generan. Pero como el comportamiento es abierto, y hasta cierto punto imprevisible, es difícil disponer de unos mecanismos claros y cerrados para asegurar que el agente se comporta adecuadamente, que no incurre en riesgos no admisibles y que, por supuesto, no comete errores.


Cuatro patrones para la monitorización de agentes


Es por eso que me ha interesado la propuesta de patrones para esa monitorización que he encontrado en el libro 'Building Applications with AI Agents' de Michael Albada donde nos plantea cuatro patrones de monitorización. Son los siguientes:


  • Shadow mode (modo sombra): Se trata, en realidad, de un mecanismo transitorio hasta que ganemos confianza en un agente nuevo. La idea es, cuando despleguemos un agente nuevo, mantener a este recibiendo datos reales pero sin enviar salidas a los usuarios y sin realizar acciones reales. De esta forma, durante un tiempo se puede observar su comportamiento en situaciones reales y ver que se comporta bien, antes de otorgarle 'plenos poderes'. En realidad, es casi más un mecanismo de prueba que de monitorización.

  • Canary deployments (despliegues 'canario'): También se sitúa un poco en la línea de poner a prueba un agente nuevo en situaciones reales sin dejarle hacer daño, pero va un poco más lejos que la opción anterior. En este caso lo que se hace es que el nuevo agente sólo actúe en un porcentaje bajo (digamos entre un 3% y un 5%) de las situaciones reales, mientras que el resto se tratan 'normalmente' (con una versión anterior del agente, con un sistema más tradicional o manualmente, si es el caso). Estrictamente hablando, no impedimos que el agente pueda hacer daño, pero minimizamos el riesgo y el posible impacto

  • Regression trace collection (recolección de trazas de regresión): Ahora, más bien, lo que tratamos es de aprender del pasado. Y lo hacemos también mediante un mecanismo bien conocido: la recolección y análisis de trazas. Para ello se recopilan trazas (logs) y, cuando se produce un fallo, se estudian para intentar entender qué ha pasado y arreglarlo de cara al futro.

  • Self-healing agentes (agentes auto-curativos): Se trata de agentes que reciben los propios datos de monitorización, y las propias métricas y son capaces de implementar mecanismos de recuperación ante fallos.


La verdad es que de estos cuatro mecanismos, sólo el último es realmente novedoso. Los otros tres ya se han venido aplicando con mayor o menor intensidad en la monitorización y operación de otro tipo de sistemas.

Se trata de mecanismos que disminuyen el riesgo y el impacto de posibles malos funcionamientos, pero, por supuesto, no los evitan completamente.

En cualquier caso, parecen buenas prácticas que 'van a favor de obra' en busca de ese objetivo de tener a los agentes bajo control.


Conclusiones


Los agentes de IA, por su propia naturaleza, son difíciles de probar, de monitorizar y de operar.

Hemos visto cuatro patrones de operación de agentes que, si bien no eliminan el riesgo, sí pueden ayudar a tenerlo bajo control.


lunes, 1 de junio de 2026

¿Cómo aprenden los agentes de IA?

Los agentes basados en IA, aunque aún en proceso de maduración, son una cosa que roza en muchas ocasiones lo extraordinario, explotando, de formas muy potentes, las capacidades que ofrecen los grandes modelos de lenguaje.

Dejando aparte su autonomía o su capacidad para elaborar razonamiento y planes, ahora me fijo ahora en su capacidad para aprender, aprender a partir ejemplos o de la experiencia en un asombroso remedo de lo que hacen los seres vivos en general y los seres humanos en particular.

Me encuentro leyendo el libro 'Building Applications with AI Agents' de Michael Albada , que me está gustando mucho por cierto, y no he podido dejar de fijarme con mucha atención en la explicación que aporta en el capítulo dedicado al aprendizaje en sistemas agénticos y, en especial, a los denominados métodos no paramétricos de aprendizaje.


Métodos no paramétricos


Es bien sabido que el aprendizaje durante el entrenamiento de modelos de machine learning se produce, en la inmensa mayoría de los casos, mediante el ajuste de los parámetros del modelo.

Y es bien sabido que los modelos de IA generativa se basan en formas más o menos sofisticadas de redes neuronales donde, en general aunque no únicamente, los parámetros que se ajustan son los pesos de las conexiones entre neuronas.

Sin embargo, una propiedad que podemos comprobar casi como meros usuarios de ChatGPT o Claude, es que estos sistemas son capaces también de aprender sin un 're-entrenamiento' explícito o, por mejor decir, sin necesidad de ajustar sus parámetros.

Y es a estos métodos no paramétricos a los que quiero referirme en este post. 

En concreto, en la obra citada más arriba, se nos hablan de tres:

  • Aprendizaje mediante ejemplos
  • Reflexión
  • Aprendizaje mediante la experiencia 

Veamos estos tres tipos brevemente.


Aprendizaje mediante ejemplos: 'few-shot prompting' estático y dinámico


Esta primera forma es muy conocida y está abundantemente explicada y documentada. Se trata, simplemente, de proporcionar en el propio 'prompt' ejemplos de cómo se realiza la tarea. Estaríamos hablando, pues, de la técnica conocida como 'few-shot prompting'.

Sin embargo, en ese formato, en que los ejemplos se incluyen en el propio 'prompt', hablamos de un 'few-shot prompting estático , donde realmente, es el usuario el que 'manda'.

Existe una variante muy interesante que es el 'few-shot prompintg' dinámico. En este caso, se dispone de una base de datos vectorial (como las que se utilizan en la técnica de RAG 'Retrieval Augmented Generation' donde almacenamos los ejemplos de que disponemos. En este caso, ante un 'prompt', es el agente el que busca el o los ejemplos más adecuados en esa base de datos vectorial, usando mecanismos de búsqueda semántica (basada en significado no en coincidencia exacta de palabras clave), de la misma forma de nuevo, que se hace en RAG.

De hecho, creo que no sería incorrecto considerar que este 'few-shot promting dinámico es una forma particular de RAG.

Además, entiendo que, una vez que se dispone de esa base de datos de ejemplos, ésta puede ser enriquecida por el propio agente (o una comunidad de agentes), con lo cual el efecto aprendizaje es mucho más real, mas dinámico y evolutivo.


Reflexión


Siempre me ha llamado la atención este mecanismo de reflexión ('reflection'), identificado mediante un nombre que me resulta misterioso en la medida en que emula en ese nombre, evidentemente de forma intencionada, a una capacidad cognitiva humana tan profunda como es la reflexión.

Sin embargo, cuando se entiende bien, no es tan mágico (siempre que no consideremos casi mágico, claro, el propio funcionamiento de los grandes modelos de lenguaje.

Explicado como reflexión ('reflection') suena muy espectacular y sofisticado y, en cierto sentido lo es, pero lo es en la medida en que un gran modelo de lenguaje es realmente sofisticado porque, disponiendo de un buen modelo de lenguaje, el mecanismo de reflexión no es tan complejo

Lo que se hace es que el sistema agentico hace auto-crítica ('self-critique') ante un intento fallido de realizar una tarea. Para ello, claro, tiene que en primer lugar detectar que la tarea no se ha realizado correctamente (para esto, en algunos casos, podría tener ayuda externa en forma de feedback humano o medida de algún tipo de sensor, indicador o mensaje de error).

Una vez que ha comprendido que algo no ha ido bien, hace esa crítica y almacena 'sus conclusiones' en una memoria específica en que une esa reflexión con las acciones realizadas y lo observado. 

Y luego, cada vez que el agente va a realizar una nueva acción, busca las últimas 'reflexiones' en esa memoria y adecúa su comportamiento (es como incluir esas reflexiones en el contexto o el prompt... de hecho, eso es lo que hace).

 

Aprendizaje experiencial


El aprendizaje experiencial, en el fondo, es una evolución o ampliación del mecanismo de reflexión pero añadiendo un aprendizaje cruzado entre tareas. Es decir, no se trabaja sólo con las reflexiones de la misma tarea sino también de otras diferentes que se contienen en los denominados 'insights'.

Y existe una, digamos, gestión dinámica en el tiempo de 'insights' en que unos aparecen, otros desaparecen y existe una suerte de votación para que el agente tenga nociones de cuáles son los más relevantes o útiles.


Perplejidad


Sorprende, o al menos a mi lo hace, cómo un mecanismo cognitivo tan sofisticado como es el aprendizaje, se consigue de una forma relativamente sencilla y fácil de entender.

Creo que esto es una demostración de dos cosas: por un lado de la enorme potencia y versatilidad de los grandes modelos de lenguaje y, por otra, del indudable ingenio de las personas que diseñan estos mecanismos.


Siempre nos quedará el 'fine-tuning'


De todas formas, la cosa no acaba a aquí. Si estas formas no paramétricas de que los sistemas agénticos aprendan no son suficientes, siempre nos quedarán los métodos paramétricos, el famoso 'fine-tunning' en que, mediante un entrenamiento adecuadamente dirigido podemos añadir nuevas capacidades o una mejor adecuación a los modelos de lenguaje en que se basan los agentes. 


Conclusiones


Los sistemas agénticos presentan unas notorias capacidades de aprendizaje, sorprendiendo, por un lado, que son relativamente simples de entender e implementar y, por otro, que no precisan en general de un re-entrenamiento, al menos no un re-entrenamiento de los que alteran los parámetros del modelo: Y, por si esto fuera poco, una vez implementadas estas capacidades de aprendizaje, pueden funcionar de manera autónoma.

Increíble ¿verdad?



miércoles, 22 de octubre de 2025

MCP o la reinvención de los conectores para aplicaciones inteligentes basadas en LLM

En este frenético surgir de tecnologías, modelos y aplicaciones alrededor de la inteligencia artificial generativa y, en particular, de los grandes modelos de lenguaje, una llamémosle tecnología que quizá a recibido menos atención fuera de ámbitos especializados, es MCP ('Model Context Protocol').

Tal y como yo lo entiendo, MCP, en el fondo, es una forma de plantear los tradicionales conectores o APIs para una integración, a un tiempo más encilla y más estándar, de todo tipo de aplicaciones externas con agentes o aplicaciones basadas en LLM ('Large Language Model').

En este post no voy a entrar mucho en detalles sobre la arquitectura de MCP (tal vez lo haga en algún otro post) sino, más bien, en esa visión como una nueva expresión de los conectores.


Sobre las APIs


Cualquiera que haya programado, quizá no tanto los que no lo hayan hecho, tiene una idea de lo que es un API ('Application Programming Interface').

¿Qué es un API?

Bueno, cuando hablo de ellas en mi libro 'Robots en la sombra' indico que


Un API no es más que un conjunto conocido y bien definido de acciones que se pueden solicitar a un software, incluyendo la descripción detallada de los datos de entrada y salida esperados y el resultado que se espera.


Se trata de un mecanismo acordado y estandarizado por el que pueden interactuar dos elementos de software diferentes (dos aplicaciones, dos componentes, etc). 

Vistas desde el lado del desarrollador, las APIs se pueden manifestar como un conjunto de funciones en un lenguaje de programación dado o como un conjunto de objetos y sus métodos expresados en ese lenguaje o, por ejemplo, como unos métodos HTTP y sus datos en la URL, o en forma de ficheros de tipo XML o JSON.

A la hora de distribuir ese API, se puede manifestar también de varias formas: una librería que enlazamos a nuestro programa, una librería compartida o unos 'endpoints' HTTP, por ejemplo.

Aunque hoy en día, casi siempre que se menciona un API se está pensando en APIs REST, no tiene por qué ser así, hay muchas otras variantes.


Sobre los conectores


¿Y qué es un conector?

Estrictamente hablando, y en mi opinión, un conector no es más que una forma un poco especial de presentarse un API. Una forma que, en general, está mucho más adaptada al entorno final de desarrollo y que hace mucho más fácil utilizarla.

Hay quien entiende como conector ese mecanismo de integración que permite incorporar la funcionalidad de otro componente o aplicación, sin necesidad de desarrollar código. 

Así, por ejemplo, en soluciones de automatización 'Low code' como los productos RPA ('Robotic Process Automation') o de automatización de flujos, del tipo de UiPath, Power Automate o Make, los conectores se ven como actividades, pasos, etc que puedes incorporar a un flujo de manera gráfica.

Con mucha frecuencia, los conectores se apoyan a su vez, en un API, siendo, en el fondo, una manifestación más sencilla e integrada de ese mismo API.


Una introducción de urgencia a MCP


¿Y qué es MCP? Pues MCP es un protocolo estándar definido por Anthropic hace poco más de un año y que está siendo rápidamente por terceros, incluyendo a la propia OpenAI.

MCP habilita el uso de componentes o aplicaciones externas (que se manifiestan como los llamados servidores MCP) por parte de aplicaciones, típicamente aplicaciones de inteligencia artificial basadas en LLM que implementan el lado cliente MCP. Y, sí, es que MCP sique un esquema cliente-servidor.

El protocolo define una serie acotada de mensajes que se traducen, desde el punto de vista de datos, en objetos JSON siguiendo el estándar JSON-RPC, y desde el punto de vista de transporte, como HTTP (en general para interacciones externas) o stdio (flujos o streams apoyados en 'pipes') para interacciones locales.

Mediante el intercambio de esos mensajes entre cliente y servidor, se consigue la integración funcional.

Una de las grandes ventajas que se busca con MCP es la integración, usando un único estándar, de todo tipo de aplicaciones. Es decir, la aplicación cliente, accede a cualquier servidor MCP casi de la misma forma, lo cual es casi tanto como decir que accede a cualquier aplicación o componente de la misma forma.


MCP como API


Podemos entender MCP como una forma de API, donde el "conjunto bien definido de acciones" de que hablaba en mi definición, son esos mensajes que constituyen el protocolo MCP, expresándose mediante JSON los datos de entrada y salida.


MCP como conector


Pero, en cierto sentido, también podemos considerar MCP, o más bien los servidores MCP, como una forma de conector que ofrece a las aplicaciones basadas en LLM un acceso razonablemente sencillo y 'en su idioma' a todo tipo de recursos externos.

Y es por ello que hablo de una reinvención de los conectores porque, en el fondo, los servidores MCP hacen el papel de conector, pero supone una reinvención porque es un nuevo estándar, porque se adapta muy bien a ser invocado por aplicaciones basadas en LLM y porque ofrece el valor añadido de unificar y estandarizar esa forma de acceso.

Una gran aportación...aunque, en el fondo, sigamos hablando de conectores, los ya casi vetustos conectores.


MCP y las herramientas que usan los agentes


Cuando hablamos de agentes, ya comentamos que éstos pueden acceder o interaccionar con recursos externos mediante las llamadas herramientas ('tools').

Pues bien, MCP es un mecanismo flexible y estándar de proveer a las aplicaciones basadas en LLM de una cantidad ingente de herramientas (todas las que se expongan como servidores MCP). 


Las Apps de ChatGPT


Una de las formas de usar MCP (o los servidores MCP) más llamativas, en parte por ser ofrecida por OpenAI en su ChatGPT, es el mecanismo de las Apps, una capacidad, anunciada muy recientemente por Open AI que permite que el usuario de ChatGPT interaccione con todo tipo de aplicaciones (Google Drive, GMail, Slack, Figma, etc) en lenguaje natural.



Como una suerte de prueba de que estamos hablando, en el fondo, de una forma de conectores, el propio ChatGPT, en su apartado de configuración, se refiere a las Apps realmente como conectores, como se puede ver en la figura:


La configuración de conectores en ChatGPT

Así que tenemos una aplicación basada en LLM, como es el propio ChatGPT, capaz de acceder una multitud de recursos externos (las aplicaciones) mediante el uso interno de MCP como mecanismo de integración entre ChatGPT (el cliente MCP) y las aplicaciones (los servidores MCP).


Conclusiones


MCP es un protocolo estándar que permite a las aplicaciones basadas en LLM (como chatbots o agentes) acceder de manera unificada a todo tipo de recursos y aplicaciones que se exponen como servidores MCP.

De esta forma MCP no sería más que un nuevo planteamiento de API y los servidores MCP un caso especial, y una reinvención de los conectores 'de toda la vida'.


viernes, 26 de septiembre de 2025

Cómo construir agentes de IA según Wisbas y Talukdar

En el momento de publicarse, Abril de 2025, 'Building Agentic AI Systems' probablemente sea uno de los primeros libros serios lanzados al mercado en materia de agentes basados en grandes modelos de lenguaje generativos. Se trata de un libro riguroso, que aborda, con fuerte carga conceptual, los diferentes aspectos de diseñó e implementación de agentes y sistemas basados en agentes, incluyendo los sistemas multiagente.

El libro, se compone de once capítulos agrupados en tres partes, como sigue:
  • 'PART 1: FOUNDATIONS OF GENERATIVE AI AND AGENTIC SYSTEMS': Una parte introductoria tanto a la inteligencia artificial generativa como a los propios agentes, y que se concreta en tres capítulos:

    • 'Chapter 1 - Fundamentals of generative AI:' Hace una introducción muy sencilla a lo que son los modelos generativos, explica brevemente algunos de los enfoques existentes como las redes adversarias, los autocodificadores variacionales o los transformers y repasa algunas problemáticas como la calidad de datos de entrenamiento, los sesgos, el consumo computacional y algunos otros retos de naturaleza ética.

    • 'Chapter 2 - Principles of agentic systems:' Con un enfoque de alto nivel y arquitectura, explica conceptos definitorios de un agente como el auto-gobierno, la agencia y la autonomía. Con ese mismo enfoque explica también las arquitecturas básicas, a saber, deliberativa, reactiva e híbrida, y finaliza aportando conceptos sobre sistemas multiagente.

    • 'Chapter 3 - Essential components of intelligent agents:' Se centra en explicar tres mecanismos fundamentales de los agentes: en primer lugar, la representación del conocimiento mediante redes semánticas, 'frames' o lógica; en segundo lugar los tipos de mecanismos de razonamiento: deductivo, inductivo y abductivo; y, en tercer lugar, mecanismos de planificación y toma de decisiones.

  • 'PART 2: DESIGNING AND IMPLEMENTING GENERATIVE AI-BASED AGENTS': Probablemente, la sección nuclear y más importante desde el punto de vista técnico, con la explicación de los principales elemetos arquitectónicos, de diseño y de implementación. Se divide en cuatro capítulos:

    • 'Chapter 4 - Reflection and introspection in agents:' Explica los mecansimos de reflexión e introspección. Tras aportar conceptos y justificar su importancia, describe cuatro formas de implementación: razonamiento tradicional, meta-razonamiento, auto-explicación y auto-modelado.Finalmente aporta algunos ejemplos y casos de uso.

    • 'Chapter 5 - Enabling tool use and planning in agents:' Aborda la interacción de los agentes con recursos externos mediante herramientas. Primero explica lo que son las herramientas y su papel. Sigue con una descripción de los algoritmos de planificación para luego indicar cómo se integran las herramientas en el razonamiento y la planificación. Finaliza mostrando ejemplos de implementación con los frameworks CrewAI, AutoGen y LangGraph.

    • 'Chapter 6 - Exloring the Coordinator, Worker, and Delegator approach:' Tal y como reza el título, se explica el patrón CWD ('Coordinator', 'Worker', 'Delegator') que implica el uso de varios agentes, asumiendo roles diferentes pero coordinados. Además de detallar el modelo en sí mismo, aporta ideas sobre cómo diseñar los diferentes agentes, los mecanismos de comunicación y coordinación entre ellos y finaliza con algunos consejos de implementación.

    • 'Chapter 7 - Effective agentic system design techniques:' Aborda cuantro elementos de diseño de interés: por un lado, el diseño de las instrucción ('prompts') para los agentes; por otro, el modelado del entorno y el uso de espacios de estados: a continuación, la tipología y uso de memorias; y, para finalizar, el enfoque secuencial o paralelo.

  • 'PART 3: TRUST, SAFETY, ETHICS AND APPLICATIONS': Abandona un poco el núcleo de lo que son los agentes y cómo funcionan y se diseñan para tratar algunos temas de contexto algo diversos, y lo hace con los cuatro capítulos finales:

    • 'Chapter 8 - Building trust in generative AI systems:' Habla de mecanismos que aportan confianza en los agentes desde el punto de vista tanto técnico como ético. Repasa primero algunas técnicas o problemáticas como la trasparencia y explicabilidad, la incertidumbre y los sesgos, la generación de salidas comprensibles y efectivas, el control del usuario y su consentimiento y algún avance en materia de ética y responsabilidad. Finaliza con algúnos consejos sobre cómo implementar algunas de estas técnicas.

    • 'Chapter 9 - Managing safety and ethical considerations:' No sin un cierto solape con el capítulo anterior, se tratan temas de seguridad y éticos. Así, por ejemplo, en lo relativo a seguridad se habla de ataques adversarios, de sesgos y discriminación, de alucinaciones, de violaciones de la privacidad o de riesgos relativos a propiedad intelectual. En la segunda parte del capítulo, salta ya a una visión más ética hablando del diseño centrado en el ser humano, de elementos de responsabilidad o de privacidad y de protección de datos.

    • 'Chapter 10 - Common use cases and applications:' Explica el uso de agentes en cuatro grandes campos, a saber: creación artística, procesamiento del lenguaje y conversaciones, robótica y sistemas de soporte a la decisión.

    • 'Chapter 11 - Conclusions and future outlook:' Una mirada algo más futurista, en que primero se tratan lo que los autores perciben como principales tendencias, luego se explican ideas sobre la inteligencia artificial general, AGI ('Artificial General Intelligence') para acabar con una breve identificación de riesgos y oportunidades.

'Building Agentic AI Systems' es un libro serio y riguroso sobre el emergente campo de los agentes basados en modelos generativos. Aporta una fuerte carga teórica y conceptual y un enfoque más de arquitectura y diseño que de implementación o desarrollo. No obstante, a lo largo del libro de vez en cuando se aportan pequeñas secciones de código, con frecuencia apoyadas en el 'framework' CrewAI.

Aunque quizá hubiera agradecido un poco más de código y, sobre todo, un mayor acercamiento a lo que están haciendo e implementando en materia de agentes organizaciones como OpenAI, Microsoft, Anthropic, etc. creo que se trata de un buen libro, y recomendable para personas a las que interese no sólo el paso directo a la construcción, sino también entender los conceptos que hay detrás.

Anjanava Wisbas

(Fuente: traducción asistida con IA de su Página oficial)

Anjanava Wisbas
Anjan, arquitecto sénior de soluciones especializado en Inteligencia Artificial en AWS, es líder en Inteligencia Artificial y Machine learning, y se centra en la IA generativa, visión artificial, procesamiento del lenguaje natural (NLP) y la seguridad y el alineamiento de la IA.

Con 16 años de experiencia en software y tecnología en la nube y 7 certificaciones de AWS, Anjan destaca en el desarrollo de sistemas basados en IA y la implementación estratégica. Su liderazgo combina la innovación técnica con los objetivos empresariales, ampliando con pasión los límites de la IA en la computación en la nube.

Puedes conocer más del autor visitando su perfil en LinkedIn o siguiéndole en X donde se presenta como @itsrealAJB.

Wrick Talukdar

(Fuente: traducción asistida con IA de su entrada en página oficial)

Wrick Talukdar
Wrick es un distinguido arquitecto de IA/ML y líder de productos con más de dos décadas de experiencia impulsando transformaciones tecnológicas en empresas globales. Reconocido por su experiencia en IA, aprendizaje automático y computación en la nube, ha aprovechado constantemente las tecnologías de vanguardia para ofrecer valor empresarial estratégico a clientes de todo el mundo.

A lo largo de su carrera, Wrick ha liderado iniciativas digitales que han generado importantes ahorros de costes y acelerado el tiempo de comercialización. Cuenta con una trayectoria probada en la creación de equipos de alto rendimiento que ofrecen productos y soluciones innovadores de IA.

Como pensador estratégico, Wrick destaca por alinear la tecnología con los objetivos empresariales, fomentar la colaboración interfuncional y abordar retos complejos con enfoques basados en datos. Su capacidad para unir la experiencia técnica con la visión empresarial le posiciona como un líder clave en el impulso del crecimiento sostenible y la innovación.

Wrick es un profesional certificado TOGAF® de nivel 2 y posee múltiples certificaciones de AWS y Azure en inteligencia artificial y aprendizaje automático.

Más allá de sus logros profesionales, Wrick ha tenido un impacto duradero en la comunidad científica mundial, y sus investigaciones son ampliamente referenciadas y citadas en todo el mundo. Es presidente del IEEE NIC, miembro sénior del IEEE y arquitecto jefe de IA/ML para iniciativas de IA generativa dentro del Comité de Participación Industrial (IEC) del IEEE, donde empodera a los jóvenes profesionales para que avancen en sus carreras a través de la tecnología y la IA generativa. Además, como miembro senior y asesor de la Consumer Technology Society (CTSoc), desempeña un papel clave en la configuración de los estándares tecnológicos y proporciona orientación estratégica en importantes conferencias mundiales, como la ICCE.

Puedes conocer más del autor visitando su perfil en LinkedIn.

Ficha técnica:


EDITORIAL: Packt
AÑO: 2025 
ISBN: 978-8423438402
PAGINAS: 489 

miércoles, 10 de septiembre de 2025

Exactitud vs. flexibilidad en modelos de inteligencia artificial (II): automatización inteligente

Acometo ahora el caso de la automatización, tras abordar en el post anterior el dominio de la analítica inteligente, como uno de los grandes campos de aplicación de la inteligencia artificial y donde también se produce, seguramente más que en el caso de la analítica, esa tensión entre la exactitud de modelos anteriores y la flexibilidad y potencia de los modelos generativos.

Vamos a verlo.


Recordando ideas básicas sobre automatización de procesos


De forma muy sencilla, podemos decir que automatización es la realización por parte de máquinas, de procesos y tareas antes realizadas por personas (u animales).

Aunque existe, y es muy importante, la automatización que involucra elementos físicos (como la automatización que se produce en procesos industriales y, por ejemplo, plantas de fabricación), prefiero centrarme en este post en la automatización de procesos de negocio de oficina u administrativos, donde se trabaja fundamentalmente con información y documentos (todo ello en formato digital), más que con materiales físicos. 

He mencionado la palabra procesos de negocio. ¿Qué es un proceso de negocio? De forma sencilla, en mi libro 'Robots en la sombra', los defino como:


Un conjunto de actividades que, coordinadas, producen un resultado de negocio 


El tratamiento de pedidos de cliente es un proceso de negocio, el tratamiento de reclamaciones también, o la sección de un candidato para incorporarse a una empresa.

Los procesos implican una serie de actividades que se enlazan mediante una lógica que puede incluir incluir simples secuencias, o ramificaciones, basadas o no en condiciones , bucles, etc. Esas actividades atómicas que componen los procesos, es lo que con frecuencia se denomina tareas. En cierto modo, podemos pensar que un proceso se compone de tareas (que es donde realmente 'se hace algo') y elementos que le dan lógica y estructura (las secuencias, ramificaciones y bucles) y que enlazan de alguna forma las actividades o tareas.

En los procesos manuales, las tareas las realizan personas, y las decisiones de lógica, también las adoptan las personas (normalmente de una manera bastante informal y basada en su experiencia).

Cuando automatizamos procesos de negocio, lo que hacemos es sustituir, total o parcialmente a personas por máquinas. En el caso de procesos de negocio de oficina, las sustituimos total o parcialmente por aplicaciones o sistemas de información. Estas aplicaciones ejecutan total o parcialmente, todas o algunas de las tareas y, además, realizan las decisiones lógicas y estructurales acerca de qué actividad hay que hacer a continuación aplicando las famosas secuencias, ramificaciones y bucles. Además, de automatizar las tareas y la lógica, el tercer gran elemento de una automatización de procesos es el almacenamiento y recuperación de información.

No voy a entrar en detalles, pero, aunque hay muchas soluciones de automatización de procesos tradicionales, algunas muy de nicho, las más generalistas son los sistemas empresariales (CRM y ERP) y los sistemas orientados a proceso  como los BPMS ('Business Process Management Systems') o los CMS ('Case Management Systems') sin despreciar la multitud de soluciones 'ad-hoc' hechas a medida por las diferentes organizaciones.


Reglas y flujos


En cualquier caso, en todas esas automatizaciones tradicionales, las tareas siguen procedimientos más o menos fijos y basados en reglas. Y la estructura del proceso, su lógica, también sigue unas reglas reflejadas generalmente en un flujo.

Una gran fortaleza de esta forma de actuar es su eficiencia y también su previsibilidad, y recuerdo que la previsibilidad o, si se prefiere, la repetitividad de un proceso, es un atributo esencial del concepto de calidad.


Automatización inteligente


Dicho de forma muy sencilla, la automatización inteligente no es más que introducir elementos de inteligencia artificial en la automatización. 

Esto se lleva haciendo desde hace unos pocos años, pero hasta ahora los elementos inteligentes se han venido centrando en aspectos particulares.

Así, por ejemplo, una forma de introducir automatización inteligente es, simplemente recurrir a procesamiento de lenguaje natural y a reconocimento y generación de voz para relacionarse con las personas (los típicos chatbots). 

También los robots RPA ('Robotic Process Automation') utilizan, por ejemplo, inteligencia artificial para extraer información de a partir de texto libre contenido en webs, correos y documentos, o variantes de la visión artificial como el OCR para extraer texto de imágenes.

También se ha ido haciendo más común el invocar módulos de inteligencia artificial para, por ejemplo, hacer un análisis de sentimiento, o para tomar una decisión con base en algún modelo de machine learning previamente entrenado.

Pero todas estas formas de incluir inteligencia artificial apenas cambian el hecho de que la estructura del proceso se sigue basando fundamentalmente en reglas y flujos predefinidos, y que la mayor parte de las tareas siguen estando perfectamente procedimentadas.


La irrupción de los modelos generativos


Y en esto surgen y sobre todo, se generalizan, los modelos generativos que, como comentábamos en el post anterior, son enormemente potentes, muy transversales y muy flexibles pero que, a cambio, no siguen unas reglas cerradas y completamente previsibles, a veces 'alucinan' y, en general, no podemos estar del todo seguros de 'lo que van a hacer' y si lo van a hacer de la mejor manera posible, ni siquiera de si lo van a hacer bien.

Y sin embargo, cada vez se utilizan más para automatizar y es previsible que esto se incremente rápidamente, especialmente a medida que los agentes de IA ('Agentic AI') madure y se extiendan estas soluciones.

Y ahí surge la tensión: ¿Cuándo tiene sentido usar una automatización basada en modelos generativos y cuándo una más tradicional basada en reglas y flujos?


La automatización de tareas individuales mediante herramientas generativas


Si nos centramos no en la estructura del proceso de negocio, sino en tareas individuales, resultan claramente aplicables en muchas ocasiones las herramientas generativas y se hace cada vez más el uso de soluciones generativas de tipo chatbot (como ChatGPT, Copilot chat, Gemini, etc) aunque, en este caso, el uso habitual es en modo 'copiloto', es decir, la persona sigue realizando o responsabilizándose de la tarea,  lo que ocurre es que ayudada en buena medida por un asistente generativo. 

Es una forma de automatizar en que aún queda un poquito, menos cada vez pero un poquito, de intervención humana. El que quede un poco de intervención humana resta un puntito de la eficiencia posible, y quizá resta algo más de la optimización de tiempos posible frente a una automatización completa, pero a cambio, protege contra alucinaciones y errores absurdos, y permite mantener bastante el control.


La automatización inteligente de procesos: decisiones y planes


Más comprometido, aunque hacia eso apuntan las tendencias, es cuando queremos usar un modelo generativo para que decida la estructura del proceso, es decir, qué lógica de tareas a seguir, e incluso, qué tareas hay que realizar.

A eso es a lo que apuntan los modelos razonadores y los agentes que se apoyan en esos modelos razonadores. Aplicar esta forma de automatizar procesos es enormemente potente y flexible y proporciona a la automatización una gran capacidad de adaptación a las circunstancias, casi de improvisación, ausente en las automatizaciones tradicionales.

A cambio, la automatización en su conjunto, el proceso, es menos predecible, menos repetible (¿de menor calidad?), puede que no siempre optimice la eficiencia y parece más sujeto a errores, incluso errores absurdos. 

La conveniencia de usar esta forma de automatizar basada en modelos generativos (normalmente razonadores) en lugar de métodos más tradicionales, dependerá en parte de hasta qué punto estos modelos maduren y demuestren que son fiables, que se equivocan poco y que no lo hacen de forma catastrófica. No excluyo la eventual realización de 'fine tunning' o de entrenamiento de modelos especializados en ciertos ámbitos de automatización como forma de conseguir esa fiabilidad.

Pero creo que hay otro factor que es la naturaleza del proceso.


La naturaleza del proceso: 'ad-hoc e investigación


Si el proceso de negocio, ya por su propia naturaleza, tiene unas tareas muy claras, con reglas muy claras, parece que, al menos en cuanto a eficiencia, pueden ser mejores los métodos tradicionales aunque, por ejemplo, no cabe excluir escenarios en que incluso estas soluciones tradicionales se apoyen en algunos aspectos en modelos generativos. Por ejemplo, se puede describir en lenguaje natural la lógica del proceso a un sistema generativo (o un asistente generativo) el cual crea esa lógica en notación BPMN, la cual se incorpora ya un BPMS (y esto se puede hacer de forma trasparente).

Un campo donde sí veo bastante directa y próxima la aplicación con ventaja de soluciones generativas es en el caso de procesos que, por su propia naturaleza, son dinámicos y bastante desestructurados, con una lógica que se construye en tiempo de ejecución. Serían los típicos procesos soportados por herramientas de 'Case Management' y modelados en BPMN como procesos 'ad-hoc' (ej, tratamiento de reclamaciones, diagnóstico de averías, etc) o procesos de recopilación de información e incluso investigación donde, de hecho, los modelos razonadores y, especialmente actuando en modo 'deep research', demuestran ya una gran utilidad.


Conclusiones


Aunque la tendencia a utilizar soluciones inteligentes (y muy especialmente los agentes inteligentes) parece imparable, puede que no siempre sea la mejor opción de automatización de procesos, al menos de momento.

Ya actualmente los modelos generativos o soluciones basadas en modelos generativos, encuentran un gran espacio en la automatización de tareas individuales (fundamentalmente actuando como copilotos o asistentes de personas). Igualmente, parecen tener un campo prometedor y ya parcialmente acometido, para la automatización de procesos con una lógica no del todo estructurada y que se construye dinámicamente en tiempo de ejecución.

Más comprometido puede ser el uso para la automatización de procesos de estructura compleja pero clara y, de forma natural, basada en reglas. En ese caso, todavía se podría conseguir mayor eficiencia y sobre todo fiabilidad con esquemas más tradicionales de automatización, aunque esto puede irse modificando según lo que sean capaces de demostrar los modelos razonadores y los agentes. 

Creo, de todas formas, que hay otro elemento muy importante a tener en cuenta y que afecta tanto a analítica inteligente como a automatización inteligente, pero ese lo reservo para un siguiente post.


Artículos de este blog relacionados


lunes, 25 de agosto de 2025

Hablemos de agentes (y XI): tendencias, retos y oportunidades

Para finalizar con esta larga serie de posts dedicados a los agentes, y basados en el libro 'Building Agentic AI systems' de Anjanava Biswas y Wrick Talukdar, vamos a mirar un poco al futuro, identificando tendencias, retos y oportunidades o, en realidad, mostrando brevemente las que estos autores describen al respecto.

Una tarea, en cierto sentido arriesgado porque el campo de los agentes y la 'Agentic AI', y de los modelos generativos en que se basan, se encuentra en medio de tal efervescencia, de tan acelerada evolución, que cualquier tendencia que se apunte puede ser superada en breve o pueden surgir nuevos campos y direcciones relevantes en cualquier momento.

De todas formas, la fuente en que nos basamos esta publicada en 2025, apenas cuatro meses de la escritura de este post, así que podemos darle un voto de confianza en cuanto a actualidad.

Hecha esta observación comencemos por las líneas de investigación y tendencias.


Investigación y tendencias


Los autores se centran, únicamente, en tres tendencias o líneas de trabajo, a saber:


  • Inteligencia multimodal: que la fuente citada marca como tendencia pero algo a lo que, realmente, ya llevamos asistiendo desde hace un tiempo, no específicamente en el campo de los agentes, sino en general e la IA generativa: Sin embargo, probablemente, continúe mejorando e incluyendo nuevas modalidades o nuevas combinaciones y, entre ellas, interpretación y descripción textual de imágenes, creación de imágenes o vídeos a partir de una descripción, respuesta a comandos vía voz o combinación de entradas multimodales (ejemplo, voz y texto) y creación de una salida adecuada.

  • Comprensión lingüística avanzada: De nuevo un área que, aunque es tendencia, esta sujeta ya desde hace un tiempo a una clara mejoría. Quizá, algunos de los elementos más desafiantes puedan ser la incorporación del humor, la especialización en campos específicos (como medicina) y el incremento de la coherencia.

  • Aprendizaje experiencial: enlazando con los avances en aprendizaje por refuerzo y que pueden proporcionar al agente mucha mayor autonomía. Así, se menciona el aprendizaje autónomo de nuevas habilidades, el comportamiento adaptativo basado en aprendizaje a partir de pasados errores, la aplicación de estas ideas en robótica y videojuegos o la mejora en la capacidad de decisión gestionando la incertidumbre y añadiendo también la explicación de las decisiones adoptadas.


Retos


En cuanto a retos que deben abordar y superar los agentes, se nos identifican cuatro que, en concreto, son los siguientes:


  • Manejo eficiente de grandes volúmenes de datos complejos: Un poco, de la misma forma que en analítica ('business intelligence') la disponibilidad de enormes cantidades de datos incluyendo los no estructurados unida a la exigencia de una respuesta más rápida generó la necesidad del big data, en materia de aprendizaje en algoritmos y agentes, la disponibilidad de enormes cantidades de datos complejos de los que se puede aprender, está llevando un poco al límite las capacidades técnicas actuales. Como alternativas a un aprendizaje, digamos 'masivo', se buscan técnicas como el transfer-learning (adaptando modelos ya pre-entrenados), el uso de ejemplo ejemplos ('few-shot prompting') y, quizá lo más interesante como tendencia y que ocupa el siguiente punto: el meta-aprendizaje.

  • Meta-aprendizaje: Se trata, no tanto de hacer que un algoritmo aprenda a realizar tareas concretas sino de que 'aprenda a aprender'. En la referencia citada se menciona en este sentido MAML, 'Model-Agnostic Meta-Learning' un esquema que aborda diversas tareas como reconocimiento de imágenes o procesamiento de lenguaje.

  • Explicabilidad: El problema de la explicabilidad de los algoritmos es ya un tema en cierto sentido clásico. En los casos en que nos ocupan, además, hablamos de decisiones complejas. Aparte de un eventual problema ético o incluso legal de la carencia de explicabilidad, esa falta de explicación también puede impactar en la confianza de los usuarios en los algoritmos o, en este caso, en los agentes,

  • Fiabilidad y seguridad: En general, y como cualquier sistema, se trabaja para que los agentes sean más fiables y seguros, en el sentido no sólo de fallar menos sino, y sobre todo, de reaccionar adecuadamente ante posibles fallos o imprevistos. Eso conlleva la monitorización continua y la construcción de salvaguardas de todo tipo.


Algunas oportunidades


Finalmente, y aunque no se una forma exhaustiva, sino más bien con intenciones ilustrativas, los autores nos proponen algunas oportunidades sobre cómo hacer evolucionar y usar los agentes

Así, nos proponen, por ejemplo, una interacción con humanos más natural que incluya, aparte de mejoras en el tratamiento del lenguaje verbal, el incluir el reconocimiento de gestos o expresiones en la línea de lo que ya se viene haciendo en la disciplina del Human-Robot Interaction de la que ya nos hemos ocupado y seguiremos ocupando en este blog.

Otra idea sería la de los tutores personalizados, es decir, agentes que 'conocen' a su interlocutor y que adaptan a él, a su nivel de conocimientos, habilidades, necesidades y formas de aprender, los materiales y acciones de formación.


Conclusiones


Como decía en el inicio del post, proporcionar un panorama estable de las tendencias, retos y oportunidades en materia de inteligencia artificial, y más aún, de 'Agentic AI' es un desafío casi imposible puesto que apuntamos a un blanco móvil... y que se mueve, además, a gran velocidad.

No obstante, las tendencias, retos y oportunidades mencionados pueden ofrecer una panorámica, cuando menos, ilustrativa e interesante.


*****


Y con este post cierro esta serie dedicada a hablar de agentes. No quiere ello decir, ni muchísimo menos, que no vaya a tratar el tema de agentes en el futuro. Lo haré, estoy segur, y además seguro que en breve, y seguro también que, en abundancia, pero ya será con otras fuentes y otros enfoques.


Artículos de este blog relacionados