Entidades personalizadas

Completado

Las entidades precompiladas que se abordaron en la unidad anterior cubrirán muchos tipos de información comunes. Sin embargo, es posible que, en ocasiones, las organizaciones requieran reconocimiento del lenguaje en escenarios más específicos. Por ejemplo, supongamos que le han pedido que cree un copiloto para una tienda de actividades al aire libre. Es probable que el copiloto necesite reconocer diferentes tipos de productos para actividades al aire libre. Podría crearse una entidad personalizada denominada Outdoor Store Categories. La entidad podría almacenar todos los productos diferentes para actividades al aire libre que ofrece la tienda. La entidad ayudará a garantizar que cuando alguien escriba un producto de actividades al aire libre, como pescar, esquiar o navegar, el copiloto podrá dirigirlo al lugar correcto.

Para crear entidades personalizadas, vaya a la pestaña Entidades en el panel de navegación lateral y seleccione Nueva entidad personalizada. Cuando crea una entidad personalizada, deberá definir el tipo de entidad que desea crear.

Se pueden crear dos tipos de entidades.

  • Lista cerrada: se utiliza para definir una pequeña lista de elementos, como una lista de tamaños, departamentos o ubicaciones.

  • Expresión regular (Regex): se usa para definir un patrón lógico específico, como un número de identificación, un número de tarjeta de crédito o una dirección IP.

Captura de pantalla de crear una entidad con métodos enumerados

Entidades de lista cerrada

La mejor forma de usar las entidades de lista cerrada es para definir una pequeña lista de elementos que puede resultar útil para interactuar con un cliente, como el ejemplo de la empresa de productos para actividades al aire libre que mencionamos anteriormente. En la imagen a continuación, creamos una entidad personalizada de lista cerrada llamada Outdoor Store Categories. Agregamos una lista de nombres de categorías de productos para actividades al aire libre.

Captura de pantalla de la entidad de lista cerrada

A medida que un usuario interactúa con una sesión de chat, el sistema irá buscando los valores definidos en la lista. Si hemos creado temas específicos para los elementos de la lista, fácilmente, se podría llevar al usuario a uno de esos temas. Por ejemplo, si un usuario escribe Tengo una pregunta sobre béisbol, el sistema identificará el elemento béisbol en la lista y, según la configuración, podría mostrar un tema de béisbol.

Trabajar con coincidencia inteligente

Según los clientes van interactuando con los copilotos, se va viendo que no es raro que escriban algo mal o frases que son ligeramente diferentes de lo que está definido en la entidad. Por ejemplo, un cliente puede escribir sóftbol en lugar de béisbol. Ambos deportes usan el mismo tipo de equipamiento. En términos de categorías de productos, el sóftbol debe considerarse lo mismo que el béisbol. La coincidencia inteligente permite al copiloto aceptar entradas imprecisas del usuario en función de los elementos de la lista que se le dan a la entidad. Es decir, no tiene que encontrar una coincidencia exacta. Cuando la coincidencia inteligente está activada, el copiloto corregirá automáticamente los errores ortográficos y ampliará la lógica de coincidencia semánticamente, como, por ejemplo, hacer coincidir automáticamente sóftbol con béisbol.

Trabajar con sinónimos

La opción de sinónimos es como la coincidencia inteligente, salvo que no es automática como esta. Los sinónimos se especifican manualmente. Expanden la lógica para incluir palabras con significados similares o que se consideran similares por naturaleza. Por ejemplo, no es raro que deportes como el esquí, el snowboard y el senderismo con raquetas de nieve se agrupen porque son todos deportes de nieve. Para acomodar esto en la lista, la categoría de producto Esquí podría tener agregados como sinónimos Snowboard y Senderismo con raquetas de nieve. Si un usuario escribe snowboard o raquetas de nieve, el copiloto entenderá que estos están relacionados con la categoría de esquí. Para otras actividades como Yoga, podrá agregar Pilates. La coincidencia inteligente y los sinónimos funcionan a la perfección para que su copiloto sea aún más inteligente.

Captura de pantalla de la opción Sinónimo

Entidades de expresión regular (RegEx)

Las entidades de expresiones regular (Regex) le permiten definir patrones lógicos que puede usar para buscar correspondencias con una entrada o extraer información de ella. Las entidades Regex son perfectas para establecer correspondencias de patrones complejos según las entradas del usuario o bien, en caso de que necesite incorporar variaciones específicas en cómo los usuarios pueden dar formato o escribir sus entradas 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 copiloto.

Cuando seleccione una entidad Regex, tendrá que definir lo siguiente:

  • Nombre: define el nombre de la entidad Regex.

  • Descripción: descripción opcional que define más detalles sobre la entidad.

  • Patrón: define el patrón que se utilizará para extraer el texto.

Captura de pantalla del patrón de la entidad regrex

En la imagen anterior, estamos creando una entidad de expresión Regex llamada Número de seguimiento. La sintaxis utilizada especifica que el número de seguimiento comenzará con nueve dígitos y terminará con una letra en mayúsculas o minúsculas. (Ejemplo: 100456789A)

Las entidades Regex usan la sintaxis de expresiones regulares .NET.

Puede obtener más información sobre la creación de sintaxis de expresiones regulares .NET en los enlaces a continuación: