Hierarchical Task
El componente Hierarchical Task te permite definir una tarea compleja que será ejecutada por un agente de IA. Debes indicar qué debe hacer la tarea, qué resultado esperas y qué herramientas puede usar. El resultado es un objeto HierarchicalTask
que puede ser pasado a otros componentes del flujo de trabajo.
¿Cómo funciona?
Internamente el componente crea una instancia de HierarchicalTask
con los valores que le proporciones:
- description: texto que explica el propósito y la forma de ejecutar la tarea.
- expected_output: definición clara del resultado que debe producirse.
- tools: lista de recursos o herramientas que el agente puede usar (por defecto se usan las herramientas del agente).
No se llama a ninguna API externa; todo el procesamiento ocurre localmente dentro del entorno de Nappai. El objeto resultante se devuelve como salida para que pueda ser utilizado por componentes posteriores, como un ejecutor de tareas o un visualizador de resultados.
Entradas
-
Tools
Lista de herramientas o recursos que el agente puede usar para ejecutar la tarea. Si no se especifica, se usarán las herramientas por defecto del agente. -
Expected Output
Definición clara del resultado que se espera que produzca la tarea. Esto ayuda al agente a saber cuándo la tarea se ha completado correctamente. -
Description
Texto descriptivo que detalla el propósito de la tarea y cómo debe ejecutarse. Proporciona contexto al agente para que entienda el objetivo.
Salidas
- Task
Tipo de datoHierarchicalTask
. Este objeto contiene toda la información de la tarea y puede ser conectado a componentes que ejecuten o gestionen tareas jerárquicas.
Ejemplo de Uso
Supongamos que quieres crear una tarea que genere un informe mensual de ventas:
-
Description:
Genera un informe mensual de ventas en formato PDF, incluyendo gráficos de tendencia y resumen ejecutivo. -
Expected Output:
Un archivo PDF llamado "Informe_Ventas_Mes_XX.pdf" con los datos solicitados. -
Tools:
DatabaseConnector
(para extraer datos de la base de datos).PDFGenerator
(para crear el archivo PDF).
Con estos valores, el componente devuelve un objeto HierarchicalTask
que puede ser pasado a un componente de ejecución que se encargará de llamar a las herramientas y producir el informe.
Componentes Relacionados
- Agent – El agente que ejecutará la tarea.
- Tool – Representa cada herramienta que puede ser asignada a la tarea.
- Task Executor – Componente que recibe un
HierarchicalTask
y lo ejecuta.
Consejos y Mejores Prácticas
- Sé claro y conciso: Una descripción breve pero completa ayuda al agente a comprender el objetivo sin ambigüedades.
- Define el resultado esperado con detalle: Cuanto más específico sea el
Expected Output
, más fácil será verificar la finalización correcta. - Limita las herramientas: Proporciona solo las herramientas necesarias para evitar que el agente use recursos no deseados.
- Revisa la compatibilidad de herramientas: Asegúrate de que las herramientas seleccionadas estén disponibles y configuradas correctamente en tu entorno.
Consideraciones de Seguridad
- Control de acceso a herramientas: Algunas herramientas pueden acceder a datos sensibles (por ejemplo, bases de datos internas). Asegúrate de que solo los agentes autorizados tengan permiso para usar estas herramientas.
- Validación de salida: Si la tarea genera archivos o datos que se exponen a usuarios externos, valida su contenido para evitar filtraciones de información confidencial.
- Auditoría: Registra la creación y ejecución de tareas para poder rastrear quién solicitó qué y cuándo se ejecutó.