Reconocedores en diálogos adaptables: guía de referenciaRecognizers in adaptive dialogs - reference guide

se aplica a: SDK V4APPLIES TO: SDK v4

Los reconocedores permiten al bot comprender la entrada del usuario y un diálogo adaptable puede tener uno o varios reconocedores configurados.Recognizers enable your bot to understand user input and an adaptive dialog can have one or more recognizers configured. Para obtener información adicional sobre los reconocedores, consulte el artículo Language Understanding en la documentación de Composer.For additional information on recognizers see the Language understanding article in the Composer documentation.

RegexRecognizerRegexRecognizer

El reconocedor RegEx permite extraer datos de intención y de entidad de una expresión basándose en patrones de expresiones regulares.The RegEx recognizer gives you the ability to extract intent and entity data from an utterance based on regular expression patterns.

RegexRecognizer consta principalmente de:RegexRecognizer consists primarily of:

  • Intents.Intents. El objeto Intents contiene una lista de objetos IntentPattern, y estos objetos IntentPattern constan de una propiedad Intent, que es el nombre de la intención, y una propiedad Pattern que contiene una expresión regular que se usa para analizar la expresión con el fin de determinar la intención.The Intents object contains a list of IntentPattern objects and these IntentPattern objects consist of an Intent property which is the name of the intent, and a Pattern property that contains a regular expression used to parse the utterance to determine intent.
  • Entities.Entities. El objeto Entities contiene una lista de objetos EntityRecognizer.The Entities object contains a list of EntityRecognizer objects. El SDK Bot Framework define varias clases para ayudarle a determinar las entidades EntityRecognizer contenidas en una expresión de usuario:The Bot Framework SDK defines several EntityRecognizer classes to help you determine the entities contained in a users utterance:
    • AgeEntityRecognizer
    • ConfirmationEntityRecognizer
    • CurrencyEntityRecognizer
    • DateTimeEntityRecognizer
    • DimensionEntityRecognizer
    • EmailEntityRecognizer
    • EntityRecognizer
    • EntityRecognizerSet
    • GuidEntityRecognizer
    • HashtagEntityRecognizer
    • IpEntityRecognizer
    • MentionEntityRecognizer
    • NumberEntityRecognizer
    • NumberRangeEntityRecognizer
    • OrdinalEntityRecognizer
    • PercentageEntityRecognizer
    • PhoneNumberEntityRecognizer
    • RegExEntityRecognizer
    • TemperatureEntityRecognizer
    • TextEntity
    • TextEntityRecognizer
    • UrlEntityRecognizer

Sugerencia

  • RegexRecognizer emitirá una intención "None" cuando la expresión de entrada no coincida con ninguna intención definida.RegexRecognizer will emit a 'None' intent when the input utterance does not match any defined intent. Puede crear un desencadenador OnIntent con Intent = "None" para controlar este escenario.You can create an OnIntent trigger with Intent = "None" to handle this scenario.
  • RegexRecognizer es útil para pruebas y creación rápida de prototipos.RegexRecognizer is useful for testing and quick prototyping. Para crear bots más sofisticados, se recomienda usar el reconocedor de LUIS.For more sophisticated bots we recommend using the LUIS recognizer.
  • Es posible que le resulte útil la referencia rápida del lenguaje de expresiones regulares (RegEx).You might find the regular expression language (RegEx) Quick Reference helpful.

Reconocedor predeterminadoDefault recognizer

El reconocedor predeterminado se creó para reemplazar los reconocedores siguientes:The default recognizer was created to replace the following recognizers:

  • Ninguno: no use el reconocedor.None - do not use recognizer.
  • Reconocedor de LUIS: para extraer intenciones y entidades de la expresión de un usuario en función de la aplicación de LUIS definida.LUIS recognizer - to extract intents and entities from a user's utterance based on the defined LUIS application.
  • QnA Maker reconocedor: para extraer intenciones de la expresión de un usuario en función de la aplicación QnAMaker definida.QnA Maker recognizer - to extract intents from a user's utterance based on the defined QnAMaker application.
  • Conjunto de reconocedor entrenados: para comparar los resultados del reconocimiento de más de un reconocedor para decidir un ganador.Cross-trained recognizer set - to compare recognition results from more than one recognizer to decide a winner.

Reconocedor de LUISLUIS recognizer

Language Understanding Intelligent Service (LUIS) es un servicio de API basado en la nube que aplica inteligencia de aprendizaje automático personalizado a una conversación o un texto de lenguaje natural de un usuario para predecir el significado global y extraer información pertinente y detallada.Language Understanding Intelligent Service (LUIS) is a cloud-based API service that applies custom machine-learning intelligence to a user's conversational, natural language text to predict overall meaning, and pull out relevant, detailed information. El reconocedor de LUIS permite extraer las intenciones y entidades de una expresión del usuario basándose en la aplicación de LUIS definida, que se entrena de antemano.The LUIS recognizer enables you to extract intents and entities from a users utterance based on the defined LUIS application, which you train in advance.

Sugerencia

La siguiente información le ayudará a obtener más información sobre cómo incorporar reconocimiento del lenguaje (LU) al bot mediante LUIS:The following information will help you learn more about how to incorporate language understanding (LU) into your bot using LUIS:

  • LUIS.ai es un servicio basado en aprendizaje automático que permite crear funcionalidades de lenguaje natural en el bot.LUIS.ai is a machine learning-based service that enables you to build natural language capabilities into your bot.

Reconocedor QnA MakerQnA Maker Recognizer

QnAMaker.ai es uno de los servicios de Microsoft Cognitive Services que permite crear pares de preguntas y respuestas enriquecidas a partir de documentos de contenido existente, direcciones URL, archivos PDF, etc.QnAMaker.ai is one of the Microsoft Cognitive Services that enables you to create rich question-answer pairs from existing content - documents, URLs, PDFs, and so on. Puede integrar el reconocedor QnA Maker en el servicio.You can use the QnA Maker recognizer to integrate with the service.

Nota

El reconocedor QnA Maker emitirá un evento QnAMatch que se puede controlar con un desencadenador OnQnAMatch.QnA Maker Recognizer will emit a QnAMatchevent which you can handle with an OnQnAMatch trigger. Toda la respuesta de QnA Maker estará disponible en la propiedad answer.The entire QnA Maker response will be available in the answer property.

Reconocedor de orquestadorOrchestrator recognizer

Orchestrator es una solución de language understanding optimizada para aplicaciones de inteligencia artificial conversacionales.Orchestrator is a language understanding solution optimized for conversational AI applications. Es un reemplazo de Bot Framework Dispatcher, introducido en 2018.It is a replacement of the Bot Framework Dispatcher, introduced in 2018. Orchestrator Recognizer permite extraer una intención de una expresión de usuario, que se podría usar para enrutar a una aptitud o reconocedor adecuado, como LUIS o QnA Maker.The Orchestrator recognizer enables you to extract an intent from a users utterance, which could be used to route to an appropriate skill or recognizer, such as LUIS or QnA Maker.

Sugerencia

La siguiente información le ayudará a obtener más información sobre cómo incorporar language understanding en el bot mediante Orchestrator:The following information will help you learn more about how to incorporate language understanding into your bot using Orchestrator:

Reconocedor multilingüeMulti-language recognizer

Al compilar un bot multilingüe sofisticado, normalmente tendrá un reconocedor vinculado a un idioma y una configuración regional específicos.When building a sophisticated multi-lingual bot, you will typically have one recognizer tied to a specific language and locale. El reconocedor multilingüe permite especificar fácilmente el reconocedor que se va a usar en función de la propiedad locale de la actividad entrante de un usuario.The Multi-language recognizer enables you to easily specify the recognizer to use based on the locale property on the incoming activity from a user.

Para obtener información, consulte el artículo De soporte técnico multilingüe en la documentación de Composer.For information see the Multilingual support article in the Composer documentation.

Conjunto de reconocedoresRecognizer set

En ocasiones, es posible que tenga que ejecutar más de un reconocedor en cada turno de la conversación.Sometimes you might need to run more than one recognizer on every turn of the conversation. El conjunto de reconocedor hace exactamente eso.The recognizer set does exactly that. Todos los reconocedores se ejecutan en cada turno de la conversación y el resultado es la unión de todos los resultados del reconocimiento.All recognizers are run on each turn of the conversation and the result is a union of all recognition results.

Conjunto de reconocedores con entrenamiento cruzadoCross-trained recognizer set

El conjunto de reconocedores con entrenamiento cruzado compara los resultados del reconocimiento de más de un reconocedor para decidir un ganador.The cross-trained recognizer set compares recognition results from more than one recognizer to decide a winner. Dada una colección de reconocedores, el reconocedor con entrenamiento cruzado hará lo siguiente:Given a collection of recognizers, the cross-trained recognizer will:

  • Promover el resultado del reconocimiento de uno de los reconocedores si el resto de los reconocedores aplazan el reconocimiento a un solo reconocedor.Promote the recognition result of one of the recognizer if all other recognizers defer recognition to a single recognizer. Para aplazar el reconocimiento, un reconocedor puede devolver la intención None o un DeferToRecognizer_recognizerId explícito como intención.To defer recognition, a recognizer can return the None intent or an explicit DeferToRecognizer_recognizerId as intent.
  • Generar un OnChooseIntent evento para permitir que el código elija qué resultado de reconocimiento se va a usar.Raise an OnChooseIntent event to allow your code to choose which recognition result to use. Los resultados de cada reconocedor se devuelven mediante la propiedad turn.recognized.candidates.Each recognizer's results are returned via the turn.recognized.candidates property. Esto permite elegir el resultado más adecuado.This enables you to choose the most appropriate result.

Información adicionalAdditional Information