Rubén Balbastre

Salidas estructuradas en sistemas de agentes

Febrero de 2025

En relación con la última publicación donde hablábamos de los diferentes tipos de agentes, en este presentamos el problema de cómo extraer la respuesta de un agente en el formato deseado. Este tema es común y no es nuevo. Sin embargo, sí que es necesario mencionar que cuando utilizamos sistemas de agentes la solución a este problema es más urgente. En este escrito trataremos brevemente de explicar una forma de abordarlo.

La idea de tener conversaciones entre agentes para solucionar un problema puede plantearse de manera general como:

Una forma sencilla de establecer el fin de la conversación es imponer que se finalice cuando hable el agente que extrae las conclusiones. Esto tiene sentido sí le decimos al agente orquestador que el agente de la conclusiones debe intervenir cuando la conversación entre los N agentes especializados cumple una cierta condición.

La respuesta que extraemos de la conversación será el último mensaje: el mensaje del agente que extrae las conclusiones. Esta salida podemos personalizarla y que venga en el formato tipo diccionario que nosotros queremos. Podemos hacer esto de manera sencilla utilizando la capacidad de los modelos GPT 4 (es posible que cuando leas esto haya otros modelos que lo permitan) y clases de Python que heredan de la librería pydantic.

Todo ello resulta sencillo de implementarlo en Autogen. Dejo aquí unos enlaces de referencia: