Cómo funciona Azure Bot Service

Completado

En esta unidad, explorará el uso de Bot Framework Composer para ayudarle a diseñar bots en un diseñador visual interactivo. Aprenderá a ampliar el bot con funcionalidades de IA y lenguaje dentro de Bot Framework Composer y a comprender los aspectos básicos de creación de un bot, la ampliación de las funcionalidades del bot y la publicación de un bot en Azure Bot Service.

¿Cuál es la arquitectura de un paquete de bot?

Azure Bot Service y Bot Framework admiten el proceso completo de creación de bots. El proceso admitido incluye tareas de diseño, compilación, prueba y publicación.

Los desarrolladores de bots usan Bot Framework Composer para crear un paquete de bot. Este paquete contiene la lógica del bot y detalles sobre las conexiones y las integraciones del bot, incluidos los canales de entrada y la autenticación. El paquete de bot también contiene cualquier código de bot personalizado. El paquete de bot se hospeda en Azure Bot Service. Se puede pensar que un bot de Azure es una aplicación web de Azure con algunas características adicionales que proporcionan el punto de conexión principal para la interacción del bot. A través Bot Service, los usuarios pueden interactuar con el bot. Mientras tanto, se pueden administrar las interacciones REST entrantes y salientes para canales externos y otras integraciones.

Nota:

El paquete de bot también se puede usar con el SDK de Bot Framework en Visual Studio o Visual Studio Code.

Diagram of the Azure Bot Service architecture.

Consideración del tipo de bot que se va a crear

Antes de compilar el bot, debe decidir qué tipo de bot va a crear. Mientras lo decide, plantéese las siguientes preguntas:

  • ¿Para qué usará el bot? Determine qué tipo de bot quiere compilar. El planeamiento ayuda a definir las funcionalidades que quiere implementar.

  • ¿Qué problemas pretende resolver el bot? Tenga claro esto. La solución de problemas para los clientes será uno de los principales aspectos que se deben considerar al crear bots. Otros aspectos serían resolver el problema del usuario mejor, más fácil o más rápido que las experiencias alternativas.

  • ¿Quién usará el bot? Si está diseñando un bot, es seguro suponer que espera que los usuarios lo usen. Los distintos clientes esperarán experiencias de usuario diferentes. Saber quién es su audiencia le ayudará a determinar lo complejo que debe ser el diseño del bot. Considere qué lenguajes se deben implementar para el bot.

    Sugerencia

    Garantizar una experiencia de usuario excelente debe ser su prioridad número uno a la hora de diseñar un bot.

  • ¿Dónde se usará el bot? Debe decidir en qué plataformas se ejecutará el bot. Por ejemplo, un bot diseñado para ejecutarse en un dispositivo móvil podría requerir características como el envío de SMS.

    Importante

    La experiencia de publicación varía de una plataforma a otra.

Desarrollo de la funcionalidad básica del bot en Bot Framework Composer

Puede usar Composer para diseñar, compilar, ampliar y probar un bot. Composer es un lienzo de edición visual para compilar bots. Normalmente, es el punto de partida en el proceso de creación de Azure Bot Service.

Puede usar el diseñador visual de Composer para desarrollar de manera intuitiva la funcionalidad básica del bot. Puede usarlo para:

  • Agregue funcionalidades de reconocimiento del lenguaje natural al bot con QnA Maker. Puede usar funcionalidades como LUIS, QnA o preguntas frecuentes.
  • Cree respuestas de variación de texto y voz para el bot mediante plantillas de generación de lenguaje.
  • Cree bots en varios idiomas.
  • Pruebe directamente dentro de Composer mediante Chat en web.
  • Publique bots para Azure App Service y Azure Functions.
  • Integre servicios externos, como aplicaciones de LUIS y bases de conocimiento de QnA Maker.

Creación de diálogos y flujo de conversación

Los diálogos controlan las conversaciones que tiene un bot con sus usuarios. Los diálogos contienen plantillas de respuesta de generación de lenguaje que definen las respuestas del bot y las instrucciones de cómo hará un bot las tareas, como reservar una cena en un restaurante o crear un elemento de calendario de Outlook.

Muchos diálogos son lineales, con una secuencia simple de preguntas y respuestas. Sin embargo, algunos diálogos también incluyen lógica de conversación avanzada. Esta lógica puede incluir bifurcaciones, bucles y diálogos dinámicos y adaptables basados en el contexto. Estos tipos de diálogos suelen usar datos externos, mantener datos de conversación con estado y realizar las interrupciones necesarias en la conversación.

Inclusión de flujos externos con aptitudes y otros bots

Puede crear flujos de conversación más complejos importando aptitudes de Composer, paquetes NuGet e incluso otros bots de Azure Bot Service en el bot. Puede crear una serie anidada de bots para crear un conjunto más modular y reutilizable de funcionalidad de bot. Puede combinar estos componentes modulares más pequeños en varias combinaciones para proporcionar un conjunto de funcionalidades para diferentes bots primarios. Por ejemplo, podría tener un bot que controle el flujo de conversación en torno a la administración de entradas del calendario, con entradas y respuestas como "¿Cuándo es mi próxima reunión?" o "¿Necesita una sala de reuniones?". Al empaquetar el bot como una aptitud, puede integrar fácilmente la aptitud (y la funcionalidad de control de conversaciones del calendario asociada) en cualquier otro bot que cree.

Uso de tarjetas, imágenes y botones para mejorar la conversación

Puede usar varios métodos visuales e interactivos para mejorar la conversación de los usuarios del bot. Use tarjetas para crear contenido basado en texto enriquecido, imágenes y botones para proporcionar una experiencia más interactiva que el texto sin formato. Composer ofrece varios tipos de tarjetas, como miniaturas, inicio de sesión, audio y vídeo.

Ampliación del reconocimiento del lenguaje y la inteligencia con LUIS y QnA Maker

LUIS proporciona procesamiento de lenguaje natural con un sistema completo de administración de entidades e intenciones. Puede integrar aplicaciones LUIS creadas anteriormente o crear otras en Composer para agregar al bot sólidas funcionalidades de reconocimiento del lenguaje natural.

QnA Maker es un servicio basado en la nube. Úselo para extraer pares de preguntas y respuestas de documentos y sitios web existentes al estilo de preguntas frecuentes. Luego, puede importar esa información en una base de conocimiento que los expertos en conocimiento puedan mantener manualmente. Puede integrar el bot con una base de conocimiento de preguntas y respuestas. Esta integración le permite encontrar la respuesta más adecuada para una entrada de lenguaje natural dada.

Prueba del bot con Chat en web

Puede probar la funcionalidad del bot directamente en Composer con Chat en web. Chat en web ejecuta el bot en un entorno de ejecución de bot local, lo que significa que puede probar el bot localmente en la máquina de desarrollo sin publicarlo en Azure. Chat en web presenta funcionalidades completas de depuración, grabación de transcripciones e inspección del estado del bot para probar todos los aspectos de las funcionalidades del bot.

Adición de middleware y ampliación de la funcionalidad del bot con el SDK de Bot Framework

Use Visual Studio, Visual Studio Code o el IDE compatible que prefiera y el SDK de Bot Framework para editar el código fuente del bot y ampliar su funcionalidad. Empaquete y publique los bots como paquetes NuGet. Importe estos paquetes en Composer para facilitar la integración. Puede moverse fácilmente entre Composer y el SDK de Bot Framework a lo largo del ciclo de vida de desarrollo del bot. Esta movilidad garantiza que siempre usará la herramienta más eficaz para cualquier tarea de desarrollo.

Publicación del bot en Azure

Azure Bot Service hospeda la funcionalidad del bot en Azure. Publique bots directamente desde la interfaz de Composer y cree una experiencia de desarrollo completa en esta herramienta.

Azure Bot Service hospeda un bot en un recurso de aplicación web de Azure. Este recurso contiene el código, la lógica y los puntos de conexión REST HTTP básicos para la conectividad con recursos externos. Azure Bot Service también proporciona canales de Bot Service listos para usar. Los canales de Bot Service proporcionan una capa de adaptación que adapta la interacción del bot a otro protocolo de servicio de chat, como Facebook, Slack, Teams, telefonía, etc.

Al publicar desde Composer, el proceso de publicación también puede crear o importar recursos de Azure dependientes. Estos recursos incluyen LUIS, QnA Maker, Azure Cosmos DB, Application Insights y Blob Storage.