Qu’est-ce que le service Language Understanding (LUIS) ?What is Language Understanding (LUIS)?

Importante

La sécurité TLS 1.2 est maintenant appliquée pour toutes les requêtes HTTP adressées à ce service.TLS 1.2 is now enforced for all HTTP requests to this service. Pour plus d’informations, consultez Sécurité Azure Cognitive Services.For more information, see Azure Cognitive Services security.

Language Understanding (LUIS) est un service d’IA conversationnelle qui applique une intelligence de machine learning personnalisée au texte en langage naturel des conversations d’un utilisateur afin d’en prédire le sens général et d’en extraire des informations détaillées pertinentes.Language Understanding (LUIS) is a cloud-based conversational AI 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.

Une application cliente pour LUIS est une application de conversation qui communique avec un utilisateur en langage naturel pour accomplir une tâche.A client application for LUIS is any conversational application that communicates with a user in natural language to complete a task. Des applications de réseaux sociaux, des chatbots d’IA et des applications vocales pour poste de travail sont des exemples d’applications clientes.Examples of client applications include social media apps, AI chatbots, and speech-enabled desktop applications.

Image conceptuelle de 3 applications clientes fonctionnant avec Cognitive Services Language Understanding (LUIS)Conceptual image of 3 client applications working with Cognitive Services Language Understanding (LUIS)

Utiliser LUIS dans un bot conversationnelUse LUIS in a chat bot

Une fois l’application Azure LUIS publiée, une application cliente envoie des énoncés (textes) à l’API du point de terminaison de traitement du langage naturel LUIS et reçoit les résultats sous forme de réponses JSON.Once the Azure LUIS app is published, a client application sends utterances (text) to the LUIS natural language processing endpoint API and receives the results as JSON responses. Un bot conversationnel est un exemple d’application cliente courante pour LUIS.A common client application for LUIS is a chat bot.

Image conceptuelle de LUIS fonctionnant avec un bot conversationnel pour prédire le texte de l’utilisateur avec une compréhension du langage naturel (NLP)Conceptual imagery of LUIS working with Chat bot to predict user text with natural language understanding (NLP)

ÉtapeStep ActionAction
11 L’application cliente envoie l’énoncé de l’utilisateur (texte dans ses propres mots), « I want to call my HR rep » (Je souhaite contacter mon représentant des ressources humaines),The client application sends the user utterance (text in their own words), "I want to call my HR rep." au point de terminaison LUIS sous la forme d’une requête HTTP.to the LUIS endpoint as an HTTP request.
22 LUIS vous permet de concevoir vos modèles de langage personnalisés pour ajouter de l’intelligence à votre application.LUIS enables you to craft your custom language models to add intelligence to your application. Les modèles de langage formés par apprentissage automatique prennent le texte d’entrée non structuré de l’utilisateur et retournent une réponse au format JSON, avec une intention principale, HRContact.Machine learned language models take the user's unstructured input text and returns a JSON-formatted response, with a top intent, HRContact. La réponse minimale du point de terminaison JSON contient l’énoncé de la requête, ainsi que l’intention présentant le score le plus élevé.The minimum JSON endpoint response contains the query utterance, and the top scoring intent. Elle peut également extraire des données telles que l’entité Type de contact.It can also extract data such as the Contact Type entity.
33 L’application cliente utilise la réponse JSON pour prendre des décisions concernant la manière dont les requêtes de l’utilisateur doivent être traitées.The client application uses the JSON response to make decisions about how to fulfill the user's requests. Ces décisions peuvent inclure un arbre de décision dans le code de l’infrastructure de bots, ainsi que des appels d’autres services.These decisions can include decision tree in the bot framework code and calls to other services.

L’application LUIS offre l’intelligence nécessaire pour permettre à l’application cliente d’effectuer des choix pertinents.The LUIS app provides intelligence so the client application can make smart choices. LUIS ne fournit pas ces choix.LUIS doesn't provide those choices.

Compréhension du langage naturelNatural language understanding (NLU)

LUIS fournit une fonctionnalité d’intelligence artificielle (IA) appelée « compréhension du langage naturel », qui est un sous-ensemble de l’IA du traitement en langage naturel.LUIS provides artificial intelligence (AI) in the form of NLU, a subset of natural language processing AI.

Votre application LUIS contient un modèle de langage naturel propre à un domaine.Your LUIS app contains a domain-specific natural language model. Vous pouvez démarrer l’application LUIS avec un modèle de domaine prédéfini, créer votre propre modèle ou fusionner les éléments d’un domaine prédéfini avec vos propres informations personnalisées.You can start the LUIS app with a prebuilt domain model, build your own model, or blend pieces of a prebuilt domain with your own custom information.

  • Modèle prédéfini LUIS dispose de nombreux modèles de domaine prédéfinis, incluant des intentions, des énoncés et des entités prédéfinies.Prebuilt model LUIS has many prebuilt domain models including intents, utterances, and prebuilt entities. Vous pouvez utiliser les entités prédéfinies sans avoir à utiliser les intentions ni les énoncés du modèle prédéfini.You can use the prebuilt entities without having to use the intents and utterances of the prebuilt model. Les modèles de domaines prédéfinis intègrent l’ensemble de la conception à votre intention et constituent un excellent moyen de commencer à utiliser LUIS rapidement.Prebuilt domain models include the entire design for you and are a great way to start using LUIS quickly.

  • Le modèle personnalisé LUIS vous offre plusieurs façons d’identifier vos propres modèles personnalisés, notamment les intentions et les entités.Custom model LUIS gives you several ways to identify your own custom models including intents, and entities. Les entités incluent des entités issues du machine learning, des entités spécifiques ou littérales et une combinaison des deux.Entities include machine-learning entities, specific or literal entities, and a combination of machine-learning and literal.

Découvrez plus d’informations sur l’l’IA de traitement en langage naturel et sur la partie LUIS de la compréhension du langage naturel.Learn more about NLP AI, and the LUIS-specific area of NLU.

Étape 1 : Concevoir et générer votre modèleStep 1: Design and build your model

Concevez votre modèle avec des catégories d’intentions utilisateur appelées intentions .Design your model with categories of user intentions called intents. Chaque intention nécessite des exemples d’énoncés utilisateur.Each intent needs examples of user utterances. Chaque énoncé peut fournir diverses données qui doivent être extraites à l’aide d’entités de machine learning.Each utterance can provide data that needs to be extracted with machine-learning entities.

Exemple d’énoncé d’un utilisateurExample user utterance IntentionnelIntent Données extraitesExtracted data
Book a flight to Seattle? RéserverVolBookFlight SeattleSeattle
When does your store open? StoreHoursAndLocationStoreHoursAndLocation ouvertopen
Schedule a meeting at 1pm with Bob in Distribution ScheduleMeetingScheduleMeeting 13h, Bob1pm, Bob

Créez le modèle à l’aide des API de création, du portail LUIS, ou des deux.Build the model with the authoring APIs, or with the LUIS portal, or both. Découvrez comment créer un modèle avec le portail et les bibliothèques de client des SDK.Learn more how to build with the portal and the SDK client libraries.

Étape 2 : Obtenir une prédiction de requêteStep 2: Get the query prediction

Une fois que vous avez entraîné et publié le modèle de votre application sur le point de terminaison, l’application cliente (par exemple, un chatbot) envoie les énoncés à l’API du point de terminaison de prédiction.After your app's model is trained and published to the endpoint, a client application (such as a chat bot) sends utterances to the prediction endpoint API. L’API applique le modèle à l’énoncé d’analyse et répond avec les résultats de prédiction au format JSON.The API applies the model to the utterance for analysis and responds with the prediction results in a JSON format.

La réponse minimale du point de terminaison JSON contient l’énoncé de la requête, ainsi que l’intention présentant le score le plus élevé.The minimum JSON endpoint response contains the query utterance, and the top scoring intent. Elle peut également extraire des données telles que l’entité Contact Type et ke sentiment général ci-après.It can also extract data such as the following Contact Type entity and overall sentiment.

{
    "query": "I want to call my HR rep",
    "prediction": {
        "topIntent": "HRContact",
        "intents": {
            "HRContact": {
                "score": 0.8582669
            }
        },
        "entities": {
            "Contact Type": [
                "call"
            ]
        },
        "sentiment": {
            "label": "neutral",
            "score": 0.5
        }
    }
}

Étape 3 : Améliorer la prédiction du modèleStep 3: Improve model prediction

Une fois que votre application LUIS est publiée et reçoit des énoncés utilisateur réels, LUIS fournit un apprentissage actif des énoncés de point de terminaison pour améliorer la précision de la prédiction.After your LUIS app is published and receives real user utterances, LUIS provides active learning of endpoint utterances to improve prediction accuracy. Passez en revue ces suggestions dans le cadre de vos tâches de maintenance et de votre cycle de développement.Review these suggestions as part of your regular maintenance work in your development lifecycle.

Outils et cycle de vie de développementDevelopment lifecycle and tools

LUIS offre différents outils, un contrôle de version et des fonctionnalités de collaboration avec d’autres auteurs LUIS à intégrer au cycle de vie de développement complet.LUIS provides tools, versioning, and collaboration with other LUIS authors to integrate into the full development life cycle.

En tant qu’API REST, Language Understanding (LUIS) est utilisable avec n’importe quel produit, service ou infrastructure avec une requête HTTP.Language Understanding (LUIS), as a REST API, can be used with any product, service, or framework with an HTTP request. LUIS fournit également des bibliothèques de client (SDK) pour plusieurs langages de programmation.LUIS also provides client libraries (SDKs) for several top programming languages. En savoir plus sur les ressources de développement fournies.Learn more about the developer resources provided.

Outils simplifiant et accélérant l’utilisation de LUIS avec un bot :Tools to quickly and easily use LUIS with a bot:

  • LUIS CLI Le package NPM offre des fonctions de création et de prédiction avec un outil en ligne de commande autonome ou sous forme d’importation.LUIS CLI The NPM package provides authoring and prediction with as either a stand-alone command-line tool or as import.
  • LUISGen LUISGen est un outil permettant de générer un code source C# et Typescript fortement typé à partir d’un modèle LUIS exporté.LUISGen LUISGen is a tool for generating strongly typed C# and typescript source code from an exported LUIS model.
  • Dispatch permet d’utiliser plusieurs applications LUIS et QnA Maker à partir d’une application parente à l’aide du modèle de répartiteur.Dispatch allows several LUIS and QnA Maker apps to be used from a parent app using dispatcher model.
  • LUDown LUDown est un outil en ligne de commande facilitant la gestion des modèles de langage pour votre bot.LUDown LUDown is a command-line tool that helps manage language models for your bot.

Intégration à un botIntegrate with a bot

Utilisez Azure Bot Service avec Microsoft Bot Framework pour créer et déployer un chatbot.Use the Azure Bot service with the Microsoft Bot Framework to build and deploy a chat bot. Concevez et développez des applications avec l’outil d’interface graphique Composer ou avec des exemples de bots fonctionnels conçus pour les principaux scénarios de bot.Design and develop with the graphical interface tool, Composer, or working bot samples designed for top bot scenarios.

Intégration à d’autres services Cognitive ServicesIntegrate with other Cognitive Services

Autres services Cognitive Services utilisés avec LUIS :Other Cognitive Services used with LUIS:

  • QnA Maker permet à différents types de textes de se combiner en une question et de répondre à la base de connaissances.QnA Maker allows several types of text to combine into a question and answer knowledge base.
  • Speech convertit les requêtes énoncées à voix haute sous forme de texte.Speech service converts spoken language requests into text.

LUIS fournit des fonctionnalités tirées de l’analyse de texte pour vos ressources LUIS existantes.LUIS provides functionality from Text Analytics as part of your existing LUIS resources. Ces fonctionnalités incluent l’analyse des sentiments et l’extraction de phrases clés avec l’entité keyPhrase prédéfinie.This functionality includes sentiment analysis and key phrase extraction with the prebuilt keyPhrase entity.

Apprendre avec les guides de démarrage rapideLearn with the Quickstarts

En savoir plus sur LUIS grâce aux guides de démarrage rapide via le portail et les bibliothèques de client SDK.Learn about LUIS with hands-on quickstarts using the portal and the SDK client libraries.

Déployer localement en utilisant des conteneurs DockerDeploy on premises using Docker containers

Utilisez des conteneurs LUIS pour déployer localement des fonctionnalités d’API.Use LUIS containers to deploy API features on-premises. Ces conteneurs Docker vous donnent la possibilité de rapprocher le service plus près de vos données, ce qui peut être souhaitable pour des raisons de conformité, de sécurité ou opérationnelles.These Docker containers enable you to bring the service closer to your data for compliance, security or other operational reasons.

Étapes suivantesNext steps