Conteneurs Azure Cognitive Services

Azure Cognitive Services offre plusieurs conteneurs Docker qui vous permettent d’utiliser localement les mêmes API que celles disponibles dans Azure. Grâce à ces conteneurs, Cognitive Services se trouve au plus près de vos données du point de vue de la conformité, de la sécurité et de l’exploitation. La prise en charge des conteneurs est actuellement disponible pour une partie d’Azure Cognitive Services.

La conteneurisation est une méthode de distribution de logiciels dans laquelle une application ou un service, y compris ses dépendances et sa configuration, est packagé en tant qu’image conteneur. L’image conteneur peut être déployée sur un hôte conteneur avec peu ou pas de modifications. Les conteneurs sont isolés les uns des autres et du système d’exploitation sous-jacent, avec une empreinte inférieure à celle d’une machine virtuelle. Vous pouvez instancier des conteneurs à partir d’images conteneurs pour les tâches à court terme et les supprimer quand vous n’en avez plus besoin.

Fonctionnalités et avantages

  • Infrastructure immuable : Permettez aux équipes DevOps de tirer parti d’un ensemble cohérent et fiable de paramètres système connus, tout en étant en mesure de s’adapter aux changements. Les conteneurs offrent la flexibilité nécessaire pour évoluer dans un écosystème prévisible et éviter la dérive de configuration.
  • Contrôle des données : Choisissez l’endroit où vos données sont traitées par Cognitive Services. Cela peut être important si vous ne pouvez pas envoyer de données au cloud, mais que vous avez besoin d’accéder aux API Cognitive Services. Cohérence de la prise en charge dans les environnements hybrides : entre les données, la gestion, l’identité et la sécurité.
  • Contrôle des mises à jour du modèle : Flexibilité dans le contrôle de version et la mise à jour des modèles déployés dans leurs solutions.
  • Architecture portable : Permet la création d’une architecture d’application portable qui peut être déployée dans le cloud, localement et en périphérie. Les conteneurs peuvent être déployés directement sur Azure Kubernetes Service, sur Azure Container Instances ou sur un cluster Kubernetes déployé sur Azure Stack. Pour plus d’informations, consultez Déployer Kubernetes sur Azure Stack.
  • Débit élevé / faible latence : fournir aux clients la possibilité de mettre à l’échelle pour des exigences de débit élevé et de faible latence en permettant l’exécution de Cognitive Services physiquement proche de leur logique d’application et de leurs données. Les conteneurs ne limitent pas les transactions par seconde (TPS) et peuvent être configurés pour effectuer un scale-up ou un scale-out afin de gérer la demande si vous fournissez les ressources matérielles nécessaires.
  • Scalabilité : Avec la popularité croissante des logiciels d’orchestration de conteneur et de conteneurisation, comme Kubernetes, la scalabilité se retrouve au premier plan des avancées technologiques. Fort d’une base de cluster scalable, le développement d’applications satisfait à la haute disponibilité.

Conteneurs dans Azure Cognitive Services

Les conteneurs Azure Cognitive Services fournissent l’ensemble suivant de conteneurs Docker, chacun contenant un sous-ensemble de fonctionnalités provenant des services d’Azure Cognitive Services. Vous trouverez des instructions et des emplacements d’images dans les tableaux ci-dessous. Une liste d’images conteneur est également disponible.

Notes

Consultez Installer et exécuter des conteneurs Form Recognizer pour les instructions de conteneur et les emplacements d’images Applied AI Services Form Recognizer.

Conteneurs de décisions

Service Conteneur Description Disponibilité
Détecteur d’anomalies Détecteur d’anomalies (image) L’API Détecteur d’anomalies vous permet de surveiller et de détecter des anomalies dans vos données de série chronologique grâce à l’apprentissage automatique. Mise à la disposition générale

Conteneurs de langues

Service Conteneur Description Disponibilité
LUIS LUIS (image) Charge un modèle Language Understanding entraîné ou publié, également connu sous le nom d’application LUIS, dans un conteneur docker et fournit l’accès aux prédictions de requête à partir des points de terminaison d’API du conteneur. Vous pouvez collecter les journaux d’activité de requêtes du conteneur et les charger sur le portail LUIS pour améliorer la précision de prédiction de l’application. En disponibilité générale.
Ce conteneur peut également s’exécuter dans des environnements déconnectés.
Service Language Extraction de phrases clés (image) Extraire des expressions clés pour identifier les points principaux. Par exemple, pour le texte d’entrée « Le repas était délicieux et le personnel adorable », l’API renvoie les principaux points de discussion : « repas » et « personnel adorable ». En disponibilité générale.
Ce conteneur peut également s’exécuter dans des environnements déconnectés.
Service Language Détection de la langue du texte (image) Détecter la langue (parmi 120 langues maximum) dans laquelle le texte d’entrée est rédigé et générer un code de langue unique pour chaque document envoyé dans la demande. Le code de langue est associé à un score indiquant la puissance de l’analyse. En disponibilité générale.
Ce conteneur peut également s’exécuter dans des environnements déconnectés.
Service Language Analyse des sentiments (image) Analyser le texte brut pour obtenir des indices sur un sentiment positif ou négatif. Cette version d’Analyse des sentiments renvoie des étiquettes de sentiment (par exemple, positif ou négatif) pour chaque document et phrase qu’elle contient. En disponibilité générale.
Ce conteneur peut également s’exécuter dans des environnements déconnectés.
Service Language Analyse de texte pour la santé Extraire et étiqueter des informations médicales à partir de textes cliniques non structurés. Mise à la disposition générale
Translator Translator Traduisez du texte en plusieurs langues et dialectes. Préversion contrôlée - Demander l’accès.
Ce conteneur peut également s’exécuter dans des environnements déconnectés.

Conteneurs Speech

Notes

Pour utiliser des conteneurs Speech, vous devez remplir un formulaire de requête en ligne.

Service Conteneur Description Disponibilité
API Speech Service Reconnaissance vocale (image) Retranscrit une voix en un texte de façon continue et en temps réel. En disponibilité générale.
Ce conteneur peut également s’exécuter dans des environnements déconnectés.
API Speech Service Reconnaissance vocale personnalisée (image) Retranscrit une voix en un texte de façon continue et en temps réel à l’aide d’un modèle personnalisé. Mise à la disposition générale
API Speech Service Synthèse vocale (image) Convertit le texte en paroles naturelles. Mise à la disposition générale
API Speech Service Synthèse vocale personnalisée (image) Convertit le texte en paroles naturelles à l’aide d’un modèle personnalisé. Préversion contrôlée
API Speech Service Synthèse vocale neuronale (image) Convertit du texte en parole naturelle grâce à la technologie de réseau neuronal profond qui permet d’obtenir une parole synthétisée plus naturelle. En disponibilité générale.
conteneur peut également s’exécuter dans des environnements déconnectés.
API Speech Service Détection de langue vocale (image) Détermine la langue de l’audio parlé. Préversion contrôlée

Conteneurs de vision

Service Conteneur Description Disponibilité
Vision par ordinateur Lire OCR (image) Le conteneur Read OCR vous permet d’extraire du texte imprimé et manuscrit à partir d’images et de documents avec la prise en charge des formats de fichier JPEG, PNG, BMP, PDF et TIFF. Pour plus d’informations, consultez la documentation sur l’API Read. En disponibilité générale. Ce conteneur peut également s’exécuter dans des environnements déconnectés.
Analyse spatiale Analyse spatiale (image) Analyser le flux vidéo en temps réel afin de comprendre les relations spatiales entre les personnes, leurs déplacements et les interactions avec des objets dans des environnements physiques. Préversion

En outre, certains conteneurs sont pris en charge dans l’offre de ressources à plusieurs services de Cognitive Services. Vous pouvez créer une ressource Cognitive Services tout-en-un et utiliser la même clé de facturation entre les services pris en charge pour les services suivants :

  • Vision par ordinateur
  • LUIS
  • Service Language

Prérequis

Vous devez respecter les prérequis suivants avant d’utiliser des conteneurs Azure Cognitive Services :

Moteur Docker : le moteur Docker doit être installé localement. Docker fournit des packages qui configurent l’environnement Docker sur macOS, Linux et Windows. Sur Windows, vous devez configurer Docker pour prendre en charge les conteneurs Linux. Les conteneurs Docker peuvent également être déployés directement sur Azure Kubernetes Service ou sur Azure Container Instances.

Vous devez configurer Docker pour permettre aux conteneurs de se connecter à Azure et de lui envoyer des données de facturation.

Connaissance de Microsoft Container Registry et de Docker : vous devez avoir une compréhension élémentaire des concepts de Microsoft Container Registry et de Docker, notamment les registres, dépôts, conteneurs et images conteneur, ainsi qu’une maîtrise des commandes docker de base.

Pour apprendre les principes de base de Docker et des conteneurs, consultez la vue d’ensemble de Docker.

Les conteneurs individuels peuvent aussi avoir leurs propres exigences, notamment sur le serveur et l’allocation de mémoire.

Sécurité des conteneurs Azure Cognitive Services

Quand vous développez des applications, la sécurité doit être l’un de vos principaux soucis. L’importance que vous accordez à la sécurité est un indicateur de réussite. Quand vous concevez une solution logicielle qui comprend des conteneurs Cognitive Services, il est essentiel de comprendre les limitations et les capacités disponibles. Pour plus d’informations sur la sécurité réseau, voir Configurer des réseaux virtuels Azure Cognitive Services.

Important

Par défaut, l’API du conteneur Cognitive Services n’est pas sécurisée. Cela est dû au fait que le conteneur s’exécute le plus souvent dans le cadre d’un pod qui est protégé de l’extérieur par un pont réseau. Toutefois, il est possible d’activer l’authentification, celle-ci fonctionnant de la même façon que l’authentification utilisée lors de l’accès aux services Cognitive Services basés sur le cloud.

Le diagramme ci-dessous illustre l’approche non sécurisée par défaut :

Container security

Une autre approche sécurisée pour les consommateurs de conteneurs Cognitive Services consiste à ajouter un composant frontal à un conteneur afin de maintenir le point de terminaison de conteneur privé. Prenons l’exemple d’un scénario dans lequel nous utilisons Istio comme passerelle d’entrée. Istio prend en charge HTTPS/TLS et l’authentification par certificat client. Dans ce scénario, le composant frontal Istio expose l’accès au conteneur et présente le certificat client qui est préalablement approuvé avec Istio.

Nginx est un autre choix populaire dans la même catégorie. Istio et Nginx jouent le rôle de maillage de service et offrent des fonctionnalités supplémentaires, notamment l’équilibrage de charge, le routage et le contrôle du débit.

Mise en réseau de conteneurs

Les conteneurs Cognitive Services sont requis pour envoyer des informations relatives aux compteurs à des fins de facturation. Si vous n’ajoutez pas à la liste verte les différents canaux réseau sur lesquels s’appuient les conteneurs Cognitive Services, le conteneur ne fonctionnera pas.

Ajouter à la liste verte les domaines et ports Cognitive Services

L’hôte doit ajouter à la liste verte le port 443 et les domaines suivants :

  • *.cognitive.microsoft.com
  • *.cognitiveservices.azure.com

Désactiver l’inspection approfondie des paquets

L’inspection approfondie des paquets est un type de traitement des données qui inspecte en détail les données envoyées sur un réseau informatique et prend généralement une mesure en bloquant, en reroutant ou en enregistrant ces données en conséquence.

Désactivez l’inspection approfondie des paquets sur les canaux sécurisés que les conteneurs Cognitive Services créent sur des serveurs Microsoft. Dans le cas contraire, le conteneur ne fonctionnera pas correctement.

Exemples de développement

Des exemples de développement sont disponibles sur notre dépôt GitHub.

Étapes suivantes

En savoir plus sur les recettes de conteneur que vous pouvez utiliser avec Cognitive Services.

Installer et explorer les fonctionnalités fournies par les conteneurs dans Azure Cognitive Services :