Flujos de trabajo agente: Cumplimiento de tareas (versión preliminar)

Asegúrese de que los agentes de inteligencia artificial se alinean de forma coherente con las instrucciones de usuario y los objetivos de tarea. La señal de adhesión de tareas identifica discrepancias, como invocaciones de herramientas desalineadas, entrada o salida de herramientas incorrectas en relación con la intención del usuario e incoherencias entre las respuestas y la entrada del cliente. Esta funcionalidad permite a los desarrolladores del sistema mitigar proactivamente las acciones desalineadas bloqueando o escalando el problema para la intervención humana.

Los objetivos principales de la característica de adhesión de tareas son:

  • Para detectar acciones de herramientas que no están bien alineadas con los objetivos del usuario o con la intención de entrada, o bien entradas o salidas de herramientas incorrectas en relación con la intención del usuario, o incoherencias entre las respuestas del agente y la entrada del cliente.
  • Para proporcionar razonamiento cuando las llamadas a herramientas están mal alineadas.
  • Para proporcionar una señal para el bloqueo de invocación de herramientas de bajada y la escalación a la revisión de human-in-the-loop (HITL) cuando la alineación de tareas está en riesgo.
  • Para promover la confianza del usuario en sistemas agente mediante el refuerzo de la coherencia del comportamiento, la transparencia y el control.

Requisitos previos

  • Una suscripción Azure: Crear una gratuita
  • Una vez que tenga la suscripción de Azure, cree un recurso de seguridad de contenido en el portal de Azure para obtener la clave y el punto de conexión. Escriba un nombre único para el recurso, seleccione la suscripción y seleccione un grupo de recursos, una región y un plan de tarifa admitido. A continuación, seleccione Crear.
    • El recurso tarda unos minutos en implementarse. Una vez finalizado, seleccione Ir al recurso. En el panel izquierdo, en Administración de recursos, seleccione Clave de suscripción y Punto de conexión. El punto de conexión y cualquiera de las claves se usan para llamar a las API.
  • cURL instalado.

Solicitud

Nota

Para obtener un ejemplo de escudo de aviso, consulte escudos de aviso.

Versión de LA API:2024-12-15-preview

Campos de la dirección URL

Nombre Obligatorio Descripción Tipo
Punto de conexión Dirección URL base de la API de Seguridad del Contenido. Reemplace <endpoint> por el punto de conexión proporcionado para el servicio Azure. Cadena
Versión de API Versión de la API que se va a usar. Para esta característica, la versión es 2024-12-15-preview. Ejemplo: <endpoint>/contentsafety/agent:analyzeTaskAdherence?api-version=2024-12-15-preview Cadena

Parámetros en el cuerpo de la solicitud

Nombre Obligatorio Descripción Tipo
herramientas Lista de herramientas que definen funciones que se van a usar en la tarea. Cada herramienta incluye un tipo (por ejemplo, "función") y detalles sobre la función, incluido su nombre y descripción. Matriz de objetos JSON
mensajes Lista de mensajes intercambiados entre el usuario, el asistente y las herramientas. Cada mensaje incluye el origen (por ejemplo, "Preguntar", "Finalización"), rol (por ejemplo, "Usuario", "Asistente", "Herramienta"), contenido (texto del mensaje) y, opcionalmente, toolCalls o toolCallId. Matriz de objetos JSON

Esquema del cuerpo de la solicitud de ejemplo

Las tablas siguientes son descripciones de los campos clave del cuerpo de la solicitud:

campo de herramientas
Nombre Obligatorio Descripción Tipo
tipo Tipo de herramienta que se va a usar. Para esta característica, es "función" Cadena
function.name Nombre de la función. Por ejemplo, "read_emails" Cadena
descripción de la función Una breve descripción de lo que hace la función. Por ejemplo, "Lee los correos electrónicos del usuario" Cadena
campo de mensajes
Nombre Obligatorio Descripción Tipo
origen Origen del mensaje. Valores posibles: "Prompt", "Completion" Cadena
rol Rol asociado al mensaje. Valores posibles: "Usuario", "Asistente", "Herramienta" Cadena
contenido Contenido del mensaje. Por ejemplo, "Resumir mis correos electrónicos" Cadena o matriz
toolCalls No Lista de llamadas de herramienta realizadas por el agente, incluido el tipo (por ejemplo, "función"), function.name, function.arguments y un identificador único. Matriz de objetos JSON
toolCallId No (Para mensajes de herramientas) Identificador de la llamada a la herramienta a la que se responde. Coincide con el identificador proporcionado en la llamada a la herramienta del agente. Cadena

Respuesta de API

Después de enviar su petición, recibirá datos JSON que reflejan el análisis realizado por Adherencia de Tareas. Estos datos marcan posibles vulnerabilidades dentro del flujo de trabajo del agente. Este es el aspecto de una salida típica:

{
  "taskRiskDetected": true,
  "details": "Agent attempts to share a document externally without user request or confirmation."
}
Nombre Descripción Tipo
riesgoDeTareaDetectado Contiene los resultados de detección de riesgo del input. Boolean
detalles Devuelve el razonamiento, cuando se detecta un riesgo Cadena

Un valor de true para taskRiskDetected significa un riesgo detectado, en cuyo caso se recomienda revisar y tomar medidas, como bloquear la solicitud de invocación de la herramienta o la intervención humana en el proceso.

Requisitos previos

Una cuenta de Azure. Si no tiene una, puede crear una de forma gratuita. Un recurso de inteligencia artificial Azure.

Configuración y uso de adherencia a tareas

Siga estos pasos para usar la página Probar Seguridad del Contenido:

  1. Diríjase a Fundición de IA de Azure y navegue hasta su proyecto o centro. A continuación, seleccione la pestaña Guardrails + controls (Límites de protección y controles ) en el panel de navegación izquierdo y seleccione la pestaña Pruébelo.
  2. En la página Pruébelo , puede experimentar con varias características de protección y controles, como el contenido de texto e imagen, usando umbrales ajustables para filtrar por contenido dañino.
  3. Vaya a Flujo de trabajo agente y seleccione Cumplimiento de tareas.
  4. Puede seleccionar uno de los ejemplos con llamadas a herramientas de agente alineadas o mal alineadas o crear su propia para probar el cumplimiento de tareas.
  5. Seleccione Ejecutar prueba. Adherencia a la tarea devuelve la marca de riesgo de cada muestra y, si se detecta un riesgo, devuelve un motivo.

Escenarios de usuario

Atención al cliente

Escenario: Un asistente de soporte al cliente integrado en una plataforma empresarial ayuda a los usuarios a comprobar el uso de datos, solucionar problemas y administrar la configuración de la cuenta. Para mantener una automatización precisa, el sistema incorpora cumplimiento de tareas para validar los planes del agente antes de ejecutar llamadas a herramientas de back-end.

Usuario: Usuarios finales, agentes de soporte técnico y equipos de experiencia del cliente.

Acción: Un usuario le indica al bot de chat: "¿Puede comprobar cuántos datos he usado este mes?" El asistente planea invocar una change_data_plan() herramienta. Cumplimiento de tareas detecta una desalineación entre la intención del usuario (solicitud de información) y la acción propuesta (cambio de suscripción). La invocación de la herramienta se puede bloquear y el sistema detiene la ejecución o pide al usuario que lo revise.

Recursos humanos

Escenario: Un asistente empresarial automatiza flujos de trabajo rutinarios relacionados con recursos humanos, como la reserva de vacaciones, el envío de gastos y la comprobación de detalles de política. Adherencia a las tareas garantiza que las acciones del agente permanezcan dentro del ámbito previsto y no tomen atajos no deseados.

Usuario: Empleados, asociados empresariales de RR. HH. y equipos de automatización de flujos de trabajo.

Acción: Un empleado escribe: "Quiero saber cuántas vacaciones anuales he dejado". El agente planea invocar apply_leave(). Adherencia a tareas identifica un desajuste de tareas: el usuario solicitó información, no iniciar un proceso. La ejecución está bloqueada; el agente reformula o solicita confirmación.

Herramientas de productividad

Escenario: Un asistente de productividad insertado en una plataforma de correo electrónico ayuda a los profesionales a conectarse a bases de datos y a redactar, revisar y enviar mensajes. La adhesión de tareas se usa para distinguir entre escribir un borrador y ejecutar un comando de envío, especialmente en los casos en los que la intención del usuario es ambigua.

Usuario: Trabajadores del conocimiento, asistentes ejecutivos y equipos de cumplimiento de TI.

Acción: El usuario solicita: "Escriba un correo electrónico al cliente sobre la fecha límite perdida". El agente genera un mensaje y planea invocar send_email(). Adherencia a tareas señala el plan como potencialmente prematuro; no hay ninguna instrucción explícita que enviar. En su lugar, el sistema bloquea la llamada a la herramienta deseada y solicita la revisión del usuario.

Cumplimiento de tareas: uso de herramientas alineadas frente a desalineadas

La señal de la API de cumplimiento de tareas ayuda a los desarrolladores y a los propietarios de la plataforma a comprender cuándo la invocación de herramientas de un agente coincide o se desvía de la intención del usuario.

Ejemplos

Clasificación Descripción Ejemplo
Alineado El agente recupera la información solicitada sin realizar ninguna acción no deseada. Usuario: "¿Me puedes mostrar mis eventos de calendario recientes?"
Herramienta planeada:get_calendar_events()
✅ El agente recupera eventos según lo solicitado.

Salida:
{ "taskRiskDetected": false }
Desalineado El agente intenta modificar la configuración del usuario cuando solo se realizó una solicitud de información. Usuario: "¿Me puedes mostrar mis eventos de calendario recientes?"
Herramienta planeada:clear_calendar_events()
❌ El agente se prepara para eliminar datos.

Salida:
{ "taskRiskDetected": true, "details": "Planned action deletes calendar events, but user only requested to view them."}
Alineado El agente inicia un flujo de creación de documentos después de que el usuario solicite generar un nuevo documento. Usuario: "Cree un nuevo documento de propuesta de proyecto para el cliente".
Herramienta planeada:create_document()
✅ Coincide con la solicitud de tarea del usuario.

Salida:
{ "taskRiskDetected": false}
Desalineado El agente comparte el documento con colaboradores externos sin instrucciones de usuario. Usuario: "Cree un nuevo documento de propuesta de proyecto para el cliente".
Herramienta planeada:share_document()
❌ No hay instrucciones de usuario para compartir.

Salida:
{ "taskRiskDetected": true, "details": "Agent attempts to share a document externally without user request or confirmation."}

Limitaciones

Disponibilidad del idioma

La adhesión de tareas se ha probado en texto en inglés; sin embargo, la característica puede funcionar en muchos otros idiomas, aunque la calidad puede variar. En todos los casos, se recomienda probar el caso de uso y la aplicación para asegurarse de que funciona para sus escenarios.

Limitación de longitud de texto

Actualmente, la API de cumplimiento de tareas tiene limitaciones de longitud de entrada. La longitud máxima del texto es de 100 000 caracteres. Si la longitud de entrada supera esta limitación, recibirá un error.

Disponibilidad de regiones y procesamiento de datos

Aunque la adherencia a tareas se puede habilitar en todas las regiones de Seguridad del contenido de Azure AI, los datos se pueden enrutar y procesar en otras regiones de EE. UU. y UE fuera de la Geo especificada.