Nous avons récemment annoncé un aperçu de la prise en charge de Docker pour Microsoft Azure Cognitive Servicesavec un ensemble initial de conteneurs couvrant Computer Vision , Face API et Text Analytics . Aujourd'hui, nous sommes heureux d'ajouter un support pour notre service de compréhension de la langue . Language Understanding applique l'intelligence d'apprentissage automatique personnalisée au texte en langage naturel et à la conversation d'un utilisateur pour prévoir le sens général et extraire des informations pertinentes et détaillées. Language Understanding peut être utilisé pour créer des applications conversationnelles qui communiquent avec les utilisateurs en langage naturel pour mener à bien une tâche.
L'exécution du langage dans un conteneur résout quelques problèmes clés rencontrés par les développeurs d'intelligence artificielle. L'un de ces problèmes concerne le contrôle du mode et du lieu d'utilisation de leurs données, que ce soit localement, dans le cloud ou sur site. Ce type de flexibilité est vraiment utile pour de nombreuses entreprises avec lesquelles nous discutons tous les jours.
Un autre avantage est de contrôler la mise à l’échelle, qu’il s’agisse de l’augmentation ou de la réduction, ce qui est particulièrement important lorsque les modèles d’IA sont mis à jour régulièrement. En contrôlant la mise à l'échelle, vous planifiez la bande passante appropriée en fonction de vos besoins. Par conséquent, vous pouvez exécuter l'IA juste à côté de la logique de votre application et être très rapide et évolutif, le tout avec la fiabilité et la qualité fournies par un conteneur.
Dans ce blog, nous décrivons comment commencer à utiliser Language Understanding en s'exécutant dans un conteneur Docker sur votre boîte de développement locale. Si vous débutez dans Docker et que vous avez besoin d’aide pour vous configurer sur un ordinateur local, consultez l’article de blog précédemment publié, intitulé « Exécution des conteneurs de Cognitive Service ». Vous pouvez également trouver beaucoup plus d’informations sur la documentation , ainsi que des exemples. pour savoir comment utiliser les conteneurs Cognitive Service .
L’image Language Understanding Docker est disponible directement à partir de Docker Hub. Pour le télécharger, exécutez simplement Docker Pull :
docker pull mcr.microsoft.com/azure-cognitive-services/luisVous pouvez également utiliser Docker Pull pour rechercher des images mises à jour.
Comme pour les autres conteneurs Cognitive Services, pour exécuter un conteneur Language Understanding localement, vous devez configurer un service Language Understanding dans le portail Azure pour obtenir une clé d'API et un point de terminaison de facturation valides. Ces valeurs doivent être transmises en tant qu'arguments de ligne de commande lorsque vous démarrez le conteneur. Si vous ne possédez pas encore de service de compréhension du langage, ouvrez la lame Cognitive Services , puis sélectionnez Ajouter et créez-en un. Vous pouvez obtenir la clé API et le noeud final à partir de la page Mise en route ou Vue d'ensemble . Dans ce cas, nous l'obtenons à partir de la page Mise en route :
Compréhension du langage vous permet de créer un modèle de langage, également appelé application Compréhension du langage. Cette application est adaptée à un domaine ou à un domaine spécifique que vous souhaitez couvrir. Par exemple, vous souhaiterez peut-être créer une application qui sache commander des laits frappés. Dans ce cas, l'arôme, les garnitures et la taille peuvent être des concepts que vous souhaitez gérer. Nous n'entrerons pas dans la création d'une application de compréhension de la langue ici, mais n'hésitez pas à consulter les nombreux didacticiels de la documentation, par exemple, « Créer une application personnalisée pour déterminer les intentions de l'utilisateur ».
Ici, nous utilisons simplement une application vide sans aucune intention ni entité. Pour créer une application de compréhension de la langue vide, accédez au portail de compréhension de la langue et créez une application. Ça devrait ressembler à ça:
Une fois que vous avez l’application de compréhension de la langue vide, sélectionnez train , puis publiez pour que le modèle soit disponible au téléchargement:
Une fois l’application Language Understanding créée, vous devez la télécharger pour pouvoir l’utiliser avec le conteneur Language Understanding local. Pour ce faire, accédez à Mes applications dans le portail Language Understanding, sélectionnez l'application Language Understanding vide, puis sélectionnez Exporter / Exporter pour conteneur (GZIP):
Créez un dossier vide dans votre répertoire racine appelé input et copiez le fichier d'application Language Understanding dans ce dossier. Si vous êtes sur une machine Windows, cela ressemblera à ceci:
Nous sommes maintenant prêts à lancer le conteneur local Language Understanding à l'aide de docker run . La particularité ici est de monter le dossier d’entrée pour que le conteneur puisse le lire. Pour ce faire, nous utilisons l’ option --mount avec docker run . Avec le dossier nommé C: \ input , la commande ressemble à ceci:
docker run --rm -it -p 5000: 5000 --mount type=bind,src=C:\input,target=/input mcr.microsoft.com/azure-cognitive-services/luis eula=accept apikey=<apikey> billing=<endpoint>Il existe de nombreuses autres manières de monter des dossiers. Consultez la documentation sur les options de Dockerpour tout ce que vous pouvez faire avec Docker, en plus des options de configuration disponibles pour le conteneur Language Understanding .
Comme pour tous les conteneurs Cognitive Service, vous pouvez maintenant diriger votre navigateur vers http: // localhost: 5000 / swagger pour inspecter l'API et essayer des solutions. Vous pouvez également appeler le conteneur par programmation. Pour plus d'informations, consultez les différents exemples disponibles sur GitHub . En sélectionnant Essayer, vous obtenez la liste des paramètres nécessaires pour soumettre une demande locale au conteneur.
Pour l'ID d'application, vous utilisez la partie GUID du nom de l'application Language Understanding. Dans l'exemple ci-dessus, il s'agit du GUID commençant par 2ccdc110 . Entrez du texte, tel que «Hello!» Dans le champ de requête et sélectionnez Exécuter:
Puisque l'application de compréhension de la langue est vide, nous récupérons l' intention Aucune . Cela signifie que l'application ne l'a pas compris mais nous pouvons maintenant construire un meilleur modèle et essayer à nouveau.