Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Microsoft Teams presenta desafíos únicos de implementación para los agentes de Copilot Studio debido a su ambiente de conversación persistente. A diferencia de las implementaciones basadas en la web, donde las sesiones se reinician automáticamente, Teams mantiene los hilos de conversación indefinidamente, lo que puede provocar un contexto estancado, la expiración de los tokens y contenido en caché obsoleto.
Este artículo proporciona una guía para implementar agentes de Copilot Studio en Teams de forma eficaz. Aprenderás a gestionar sesiones persistentes, a implementar estrategias de depuración y a asegurar un rendimiento fiable durante ciclos de vida extendidos de las conversaciones.
Consideraciones clave abordadas:
- Administración del ciclo de vida de la sesión y gestión de la inactividad
- Técnicas de depuración para conversaciones persistentes
- Control de versiones y estrategias de implementación de actualizaciones
- Patrones de implementación específicos de Teams
Sigue estas prácticas para crear agentes robustos que funcionen de manera consistente en el entorno de Teams mientras ofrecen comentarios claros a los usuarios sobre cambios de estado y comportamientos del sistema.
Por qué la implementación en Teams es diferente
Las conversaciones en Teams persisten durante varios días sin reinicio automático. A diferencia de las sesiones de chat en web, el evento ConversationStart solo se activa la primera vez que se añade un agente. Reinstalar la aplicación no reactiva este evento.
La persistencia en Teams genera varios riesgos:
- Contexto obsoleto: el historial de conversaciones permanece a menos que se borre.
- Expiración de tokens: los conectores pueden expirar durante sesiones largas.
- Límites de contexto: los mensajes acumulados pueden exceder los límites del modelo.
- Almacenamiento en caché de actualizaciones: los usuarios pueden continuar interactuando con lógica obsoleta.
Una gestión proactiva del estado y una guía clara para el usuario son esenciales.
Gestionar el ciclo de vida de la sesión
Administre el ciclo de vida de la sesión con la gestión de la inactividad.
Implementar reinicios por inactividad
Crea un nuevo tema y selecciona el desencadenador El usuario está inactivo durante un tiempo para iniciar el flujo de restablecimiento tras un periodo de inactividad del usuario. Obtén más información en Desencadenador por inactividad sobre patrones específicos de Teams, incluyendo variables de guardia y el modelo de conversación persistente.
- Agrega el desencadenador por inactividad y establece un período de espera (p. ej., 15 minutos).
- Agrega uno o más nodos de Borrar valores de variables para eliminar las variables de sesión y el historial de conversaciones, y así prevenir el desbordamiento de contexto.
- Termina la conversación y marca la sesión como resuelta.
Este enfoque previene el desbordamiento de contexto y garantiza un comportamiento predecible cuando un usuario regresa.
Proporcionar orientación después del reinicio
Después de borrar el estado, envía un mensaje explicando lo sucedido. Por ejemplo: “Parece que a nuestra conversación se le agotó el tiempo, así que estoy aclarando el contexto previo por seguridad. Di 'hola' para reiniciarla”.
Ya que ConversationStart solo se activa una vez, la primera vez que se agrega un agente, el tema Saludo se convierte en el punto de inicialización efectivo. Solicitar al usuario que diga “hola” garantiza que la lógica de inicio se ejecute correctamente.
Ofrecer un comando de reinicio de autoservicio
Incluye un mensaje que informe a los usuarios que pueden escribir un comando específico: “Si algo parece estar mal, intenta escribir /debug clearstate para refrescar mi estado”.
Este comando realiza un reinicio completo de la conversación:
- Borra el estado de conversación
- Elimina la información de conector almacenada en caché
- Vuelve a autenticar conectores
- Carga la última versión del agente
Usa este comando cuando:
- El bot parece estar “atascado” con información desactualizada
- La autenticación del conector ha expirado
- Después de las actualizaciones de la lógica del bot
- Cuando el comportamiento parece inconsistente
Aumenta la transparencia y mejora la depuración
Para aumentar la transparencia y mejorar la depuración de los agentes implementados en Teams, use el desencadenador OnKnowledgeRequested.
Usa OnKnowledgeRequested para revelar consultas reescritas
Copilot Studio reescribe las consultas de los usuarios antes de realizar la recuperación. Si habilitas el desencadenador OnKnowledgeRequested, puedes:
- Diagnosticar errores de coincidencia de intenciones
- Entender cómo se reescriben las consultas
- Aumentar la confianza del usuario durante la depuración
Nota
Puede configurar el desencadenador OnKnowledgeRequested solo en la vista de código usando YAML. No hay compatibilidad con el diseñador visual.
Agrega un mensaje que muestre tanto las consultas de palabras clave como las semánticas generadas. Por ejemplo:
kind: AdaptiveDialog
beginDialog:
kind: OnKnowledgeRequested
id: main
actions:
- kind: SendActivity
id: sendActivity_debug
activity: |-
**Debug**: sending this lexical query "{System.KnowledgeSearchQuery}"
**Debug**: sending this semantic query "{System.SearchQuery}"
inputType: {}
outputType: {}
Esta consulta proporciona acceso de solo lectura a la consulta de búsqueda refinada (reescritura de la consulta) que el orquestador generó a partir de la pregunta del usuario.
Ventajas:
- Ayuda a depurar desajustes de intención.
- Muestra a los usuarios lo que busca el agente.
- Genera confianza en las acciones del agente.
- Ayuda a los creadores durante las pruebas.
Control de versiones y fiabilidad de las actualizaciones
Administrar las versiones del agente y garantizar que los usuarios interactúen con la lógica más reciente es especialmente importante en un entorno persistente como Teams.
Mostrar la versión del bot en bienvenida o en un tema específico
Incluye un identificador de versión usando el tema Saludo o un tema de versión dedicado:
Contoso Helpdesk Bot – Version 1.3 (Nov 2025)
Actualiza este valor con cada publicación para ayudar a usuarios y equipos de soporte a verificar qué versión está activa. Actualizar los metadatos de la versión también refresca el contenido en caché. Al cambiar el nombre o la descripción del agente, Teams lo carga como una actualización nueva.
Habilita la opción “Forzar la versión más reciente” al publicar
La opción Forzar la versión más reciente garantiza que Teams cargue la lógica más reciente del agente la próxima vez que el usuario envíe un mensaje. Esta configuración también ayuda a invalidar las versiones en caché. Sin embargo, forzar una actualización interrumpe cualquier conversación en curso.
Consideraciones específicas de implementación en Teams
Teams tiene comportamientos únicos que requieren atención especial.
Trata el tema Saludo como lógica de inicio
Como ConversationStart solo se activa una vez, cuando se añade un agente por primera vez:
- Coloca la lógica de inicialización en Saludo.
- Agrega instrucciones claras en la descripción de la aplicación de Teams.
- Recuerda a los usuarios: “Después de un periodo de inactividad, escribe 'hola' para iniciar una nueva conversación”.
Optimiza los desencadenadores y las alternativas
Los usuarios de Teams interactúan de manera natural e impredecible. Asegúrate de que tu bot:
- Gestione múltiples variaciones de saludo.
- Incluya la gestión de despedidas.
- Proporcione múltiples expresiones de ejemplo.
- Ofrezca respuestas de respaldo amables y útiles.
- Utilice palabras clave para guiar a los usuarios hacia temas relevantes.
- Use
OnKnowledgeRequestedpara ayudar a diagnosticar intenciones perdidas. - Redirija a temas relevantes según palabras clave.
- Invite a los usuarios a reformular si el bot realmente está atascado.
Valide el comportamiento de autenticación de los conectores
Cuando uses conectores (ServiceNow, Outlook y otros), prueba lo siguiente:
- Comportamiento de la tarjeta de inicio de sesión inicial.
- ¿Qué ocurre cuando el token caduca y cómo se renueva automáticamente?
- Cómo funcionan los flujos de invalidación forzada y reconsentimiento.
Sugerencia
Los conectores pueden no actualizar los tokens durante sesiones prolongadas. Usa reinicios de inactividad o /debug clearstate para reactivar OAuth cuando sea necesario. Comunica este comando a los equipos de soporte y usuarios para una solución de problemas rápida.
Pruebas en condiciones reales
Dado que Teams conserva el estado entre sesiones, las pruebas deben reflejar la experiencia real del usuario:
- Realiza las implementaciones mediante Mostrar solo para mí.
- Prueba escenarios de larga duración (retomando la sesión tras varias horas de inactividad).
- Publica actualizaciones y confirma que el agente cambia de versión.
- Valida el renderizado de tarjeta adaptable tanto en escritorio como en móvil.
- Prueba acciones en diversos contextos conversacionales.
Lista de comprobación de la implementación
| ¿Ha acabado? | Tarea |
|---|---|
| ✓ | Desencadenador de inactividad configurado para borrar el historial de conversaciones |
| ✓ | Los mensajes al usuario explican los reinicios y orientan sobre cómo reiniciar |
| ✓ |
/debug clearstate documentado para usuarios |
| ✓ |
OnKnowledgeRequested habilitado para la transparencia durante el desarrollo |
| ✓ | Identificador de versión incluido en las respuestas |
| ✓ | Forzar la versión más reciente habilitado según corresponda |
| ✓ | El tema de bienvenida incluye la lógica de inicialización |
| ✓ | El comportamiento de reserva es fácil de usar |
| ✓ | Autenticación del conector probado en términos de expiración y renovación |
| ✓ | Pruebas en Teams bajo condiciones reales completadas |
Puntos clave de aprendizaje
- Gestiona el ciclo de vida de la sesión configurando los disparadores de inactividad y utilizando opciones de limpieza de estado cuando sea apropiado.
- Mejora la transparencia al revelar la actividad del sistema mediante reescrituras de consultas y mensajes relacionados con el estado.
- Considera los comportamientos específicos de Teams, como la administración de saludos manuales y la gestión de la memoria persistente.
- Mantiene la fiabilidad del agente implementando prácticas de control de versiones y forzando actualizaciones cuando sea necesario.
- Fomenta la autonomía del usuario proporcionando comandos de autoservicio para la solución de problemas y alternativas de recuperación guiada.