Utilizar entidades y rellenar espacios en agentes
Una parte importante de las conversaciones de agente en Copilot Studio es comprensión del lenguaje natural, que es la capacidad de la IA para comprender la intención de un usuario. Por ejemplo, el usuario podría decir "Intenté usar mi regalo tarjeta, pero no funciona" y el agente sabe que debe dirigir al usuario al tema relacionado con el regalo Tarjetas que no funciona, incluso si esa frase exacta no figura como frase desencadenadora.
Un aspecto fundamental del reconocimiento del lenguaje natural es identificar las entidades que se utilizan en un cuadro de diálogo de usuario. Vea el vídeo para comenzar con las entidades.
Una entidad puede concebirse como una unidad de información que representa un determinado tipo de tema del mundo real, como un número de teléfono, código postal, ciudad o el nombre de una persona. Con el conocimiento otorgado por las entidades, un agente puede reconocer de forma inteligente la información relevante de una entrada del usuario y guardarla para su uso posterior.
Entidades precompiladas
Las entidades de los agentes le permiten almacenar información en grupos similares.
De manera estándar, Copilot Studio viene con un conjunto de entidades precompiladas, que representan los tipos de información más utilizados en los diálogos del mundo real, como la edad, los colores, los números y los nombres.
Con el conocimiento otorgado por las entidades, un agente puede reconocer de forma inteligente la información relevante de una entrada del usuario y guardarla para su uso posterior.
Para ayudar a entender esa noción, la entidad Dinero se puede utilizar como ejemplo.
Abra su agente en Copilot Studio y Seleccionar Configuración en la parte superior de la página y luego Entidades en el menú.
Verá la lista de las entidades precompiladas disponibles.
Seleccione la entidad Dinero para abrir el panel de detalles de la entidad.
Aquí puede ver una explicación de esta entidad y las formas en que se puede usar para buscar información relacionada con el dinero o la divisa a partir de la entrada de un usuario.
Por ejemplo, cuando un usuario ingresa "Cuesta 1000 dólares", al usar esta entidad de dinero el agente sabe que "1000 dólares" representa el tipo de información dinero . Cuando agente extrae esta entidad y la guarda en una variable, guarda "1000" como un número aunque la información circundante fuera texto.
Entidades personalizadas
Las entidades preconstruidas cubren los tipos de información más utilizados. En algunas ocasiones, como cuando se construye un agente que cumple un propósito específico, es posible que sea necesario enseñarle al modelo de comprensión del lenguaje de agente el conocimiento específico del dominio.
Por ejemplo, digamos que quieres construir un agente para una tienda de artículos para actividades al aire libre. En este caso, debes enseñarle a agente a reconocer la categoría de producto "outdoor gears" en un diálogo.
Primero, cree una entidad personalizada. En este caso, puedes crear una entidad que le dé a agente el conocimiento de todas las categorías de productos para exteriores.
Abra su agente en Copilot Studio y Seleccionar Configuración en la parte superior de la página y luego Entidades en el menú.
Seleccione Agregar una entidad>Nueva entidad.
Seleccionar el tipo de entidad deseado: una entidad de lista cerrada o una entidad de expresión regular (regex). ... ...
Entidades de lista cerrada
Las entidades de lista cerrada le permiten definir una lista de elementos. Estas entidades se usan mejor para listas pequeñas, que son fáciles de administrar y que tienen etiquetas de elementos simples.
Al seleccionar esta opción al crear una entidad, se muestra un panel donde puede especificar el nombre de la entidad, una descripción opcional e ingresar los elementos que desea incluir en la entidad.
Cuando introduce elementos, puede hacer lo siguiente:
- Seleccionar cada elemento y cambie su nombre.
- Seleccionar el icono de papelera para eliminar el elemento de la lista.
- Seleccione + Sinónimos (o seleccione los sinónimos enumerados si ya se han agregado) para abrir el panel Editar sinónimos.
Puede agregar sinónimos para expandir manualmente la lógica de coincidencia para cada elemento de la lista de la entidad. Por ejemplo, en el elemento "senderismo", puede agregar "senderismo de montaña" y "montañismo" como sinónimos.
Para cada entidad, también puede habilitar la Coincidencia inteligente.
La coincidencia inteligente es parte de la inteligencia respaldada por el modelo de comprensión del lenguaje de agente. Con esta opción habilitada, agente interpretará la entrada del usuario utilizando lógica difusa, basándose en los elementos enumerados en la entidad.
En particular, agente corregirá automáticamente los errores ortográficos y ampliará su lógica de coincidencia semánticamente. Por ejemplo, agente puede hacer coincidir automáticamente "softbol" con "béisbol".
Cuando haya terminado de crear o editar su entidad, seleccione Guardar para guardar y volver a la lista de entidades. Seleccione Cerrar para descartar sus cambios (se le dará la opción de volver a editar la entidad en caso de que haya seleccionado accidentalmente la opción incorrecta).
Entidades de expresión regular (regex)
Las entidades de expresión regular (regex) le permiten definir patrones lógicos que puede usar para hacer coincidir y extraer información de una entrada. Las entidades regex son excelentes para la comparación de patrones complejos frente a la entrada de un usuario, o si necesita permitir variaciones específicas en cómo un usuario puede formatear o introducir su entrada en una conversación.
Por ejemplo, podría usar una entidad Regex para identificar elementos como un identificador de seguimiento, un número de licencia, un número de tarjeta de crédito o una dirección IP en una cadena que escribe el usuario en el agente.
Al seleccionar esta opción al crear una entidad, se mostrará un panel donde puede especificar el nombre de la entidad, una descripción opcional e introducir el patrón de regex que debería usarse para hacer coincidir y extraer artículos de entidad desde la entrada.
Una entidad regex de Copilot Studio usa la Sintaxis de expresiones regulares .NET.
De forma predeterminada, la coincidencia de patrones distingue entre mayúsculas y minúsculas, para que no distinga entre mayúsculas y minúsculas, utilice la opción de expresión regular (?i)
en su cadena de patrón. Se incluyen algunos ejemplos básicos en el panel de entidades de expresiones regulares, y se puede encontrar información adicional sobre la sintaxis y más ejemplos en el tema Lenguaje de expresiones regulares - Referencia rápida.
Si necesita hacer que la expresión regular se adapte a varios patrones, puede usar el operador de alternancia |
para concatenar expresiones regulares. Por ejemplo, puede combinar dos patrones regex para buscar tanto el formato antiguo como el nuevo de un código de id. de producto.
Cuando haya terminado de crear o editar su entidad, seleccione Guardar para guardar y volver a la lista de entidades. Seleccione Cerrar para descartar sus cambios (se le dará la opción de volver a editar la entidad en caso de que haya seleccionado accidentalmente la opción incorrecta).
Usar entidades en una conversación
Ahora que has hecho el trabajo de darle a Listo el conocimiento sobre equipamiento para actividades al aire libre creando esa entidad de categoría de producto y algunas otras entidades personalizadas, puedes comenzar a usarlas al construir una conversación agente.
Vaya a la página Temas correspondiente al agente que desea editar.
Abra el tema de una entidad que desee recopilar.
Seleccione el icono Agregar nodo y, a continuación, seleccione Formular una pregunta.
En Identificar, seleccione la entidad que ha creado en Entidades personalizadas.
Opcionalmente, también puede seleccionar elementos para mostrar como botones. Por ejemplo, si desea mostrar algunas categorías como botones para que los usuarios puedan elegirlas cómodamente como entrada, puede elegir Seleccionar opciones para el usuario y luego seleccionarlas de la lista que contiene los elementos que agregó cuando creó la entidad personalizada.
Nombre la variable para la salida de la respuesta del usuario, si es necesario.
Llenado de ranuras
El Llenado de ranuras es un concepto de comprensión del lenguaje natural que significa guardar una entidad extraída en un objeto. Sin embargo, en Copilot Studio, el llenado de ranuras significa colocar el valor de la entidad extraída en una variable.
Seguiremos utilizando como ejemplo el tema de las actividades de acampada, que se activa al escribir "Quiero hacer algo" en el chat de prueba.
El tema se activa correctamente y el agente solicita el tipo de actividad, mostrando también las opciones de botón especificadas al crear el nodo Hacer una pregunta . En el árbol de diálogo, el seguimiento entre temas también muestra que agente se está ejecutando en el nodo de pregunta que acaba de editar.
Un usuario puede usar las opciones predefinidas seleccionando uno de los botones. Alternativamente, también pueden escribir algo como "trekking" y ver que se asigna a "senderismo", ya que esas palabras se definieron como sinónimos.
En el seguimiento entre temas, se muestra que el cuadro de diálogo se ha enrutado correctamente a la ruta en la que el valor de la categoría del producto es "senderismo". Puede inspeccionar el valor de la variable desde la ventana de observación de variable en la parte inferior del lienzo de creación. En la ventana de observación, se muestra que el valor de la variable es "senderismo".
Esencialmente, el llenado de ranuras se ha realizado al insertar la entidad extraída "senderismo" en la variable VarCampType
.
También puede usar lo que se conoce como "llenado de ranuras proactivo", donde el usuario puede especificar múltiples piezas de información que se asignan a múltiples entidades. El agente es capaz de entender qué información pertenece a qué entidad automáticamente. En los casos en que no esté seguro de la asignación prevista, solicitará al usuario que sea más específico al proporcionar opciones.
En este ejemplo, el usuario escribió "Estoy aburrido, pero me gusta el montañismo". Este mensaje incluye una frase desencadenadora de que el usuario desea ayuda con actividades al aire libre y también proporciona una segunda información: "montañismo", que es un sinónimo de senderismo definido por la entidad. En este caso, agente rellena tanto la entidad para elegir una actividad al aire libre como para el tipo de actividad.
Al rastrear entre temas, puede ver que agente toma esta entrada del usuario y omite de manera inteligente el nodo de pregunta que pregunta por el tipo de actividad.
Agente siempre escucha activamente la entrada del usuario, recordando la información con anticipación para poder omitir pasos innecesarios según corresponda.
Reiniciemos las pruebas nuevamente e intentemos otro caso. En esta ronda, puede agregar un par de nodos de pregunta más solicitando cosas como de cuánto tiempo dispone para la actividad (utilizando la entidad Duración) así como el rango de precios (utilizando la entidad Dinero).
Esta vez, cuando se presenta la pregunta sobre la categoría del producto, en lugar de decirle a agente solo la categoría del producto, el usuario puede decir "Quiero comprar un par de botas de montaña bajo $100". En este ejemplo, el agente no solo puede enrutar al camino correcto de la categoría de productos de excursionismo, sino que también llena activamente los espacios que solicitan el tipo de equipo de senderismo y la información del rango de precios objetivo.
El llenado proactivo de ranuras se puede controlar manualmente a nivel de nodo. Si desea formular siempre la pregunta dentro de un nodo específico, independientemente de si la ranura se ha llenado con las respuestas de los usuarios anteriores, puede deshabilitar la opción Saltar pregunta para ese nodo de pregunta. Realice los siguientes pasos para desactivar la opción Omitir pregunta.
Selecciona el icono Más (…) del nodo Pregunta y luego seleccione Propiedades. Aparece el panel de Propiedades de pregunta.
En el panel Propiedades de la pregunta, seleccione Comportamiento de la pregunta.
En el panel Comportamiento de la pregunta, en Omitir pregunta, seleccione Preguntar cada vez y luego seleccione Guardar en la parte superior de la página.