Que sont les conteneurs Azure AI ?

Azure AI services fournit plusieurs conteneurs Docker qui vous permettent d’utiliser localement les mêmes API que celles disponibles dans Azure. Grâce à ces conteneurs, Azure AI 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 un sous-ensemble d’Azure AI services.

La mise en conteneur est une méthode de distribution de logiciels dans laquelle une application ou un service, y compris les dépendances et la 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 Azure AI services. Cela peut être important si vous ne pouvez pas envoyer de données sur le cloud, mais que vous avez besoin d’accéder aux API Azure AI 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 aux services d’Azure AI services de s’exécuter physiquement à proximité 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 AI services

Les conteneurs Azure AI fournissent l’ensemble suivant de conteneurs Docker, chacun contenant un sous-ensemble de fonctionnalités provenant des services d’Azure AI services. Vous trouverez des instructions et des emplacements d’images dans les tableaux ci-dessous.

Notes

Consultez Installer et exécuter des conteneurs d’Intelligence documentaire pour obtenir des instructions sur les conteneurs d’Azure AI d’Intelligence documentaire et leurs emplacements d’images.

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 l’intégrité (image) Extraire et étiqueter des informations médicales à partir de textes cliniques non structurés. Mise à la disposition générale
Service Language Reconnaissance d’entité nommée (image) Extraire des entités nommées du texte. En disponibilité générale.
Ce conteneur peut également s’exécuter dans des environnements déconnectés.
Service Language Reconnaissance d’entité nommée personnalisée (image) Extrayez des entités nommées à partir du texte à l’aide d’un modèle personnalisé que vous créez avec vos données. Disponibilité générale
Service de language Résumé (image) Résumez un texte provenant de différentes sources. Préversion publique.
Ce conteneur peut également s’exécuter dans des environnements déconnectés.
Translator Traducteur (image) Traduisez du texte en plusieurs langues et dialectes. En disponibilité générale. Contrôle - Demandez l’accès.
Ce conteneur peut également s’exécuter dans des environnements déconnectés.

Conteneurs Speech

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
Ce conteneur peut également s’exécuter dans des environnements déconnectés.
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.
Ce conteneur peut également s’exécuter dans des environnements déconnectés.
API Speech Service Identification de la langue parlée (image) Détermine la langue de l’audio parlé. Aperçu

Conteneurs de vision

Service Conteneur Description Disponibilité
Azure AI Vision 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 la ressource multiservice d’Azure AI services. Vous pouvez créer une ressource Azure AI services unique tout-en-un et utiliser la même clé de facturation entre les services pris en charge pour les services suivants :

  • Azure AI Vision
  • LUIS
  • Service Language

Prérequis

Vous devez respecter les prérequis suivants avant d’utiliser les conteneurs Azure AI :

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 AI 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 Azure AI, il est essentiel de comprendre les limites et les capacités disponibles. Pour plus d’informations sur la sécurité réseau, consultez Configurer des réseaux virtuels Azure AI services.

Important

Par défaut, l’API du conteneur Azure AI 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, les utilisateurs peuvent construire leur propre infrastructure d’authentification pour se rapprocher des méthodes d’authentification utilisées lors de l’accès aux services Azure AI services basés sur le cloud.

Le diagramme qui suit illustre l’approche non sécurisée par défaut :

Container security

À titre d'exemple d'une approche alternative et sécurisée, les consommateurs de conteneurs Azure AI pourraient augmenter un conteneur avec un composant frontal, en maintenant le point de terminaison du 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 Azure AI sont obligatoires pour envoyer des informations de mesures à des fins de facturation. L'impossibilité d’établir une liste d'autorisation des différents canaux réseau sur lesquels les conteneurs Azure AI s'appuient empêchera le conteneur de fonctionner.

Établissez une liste d'autorisation des domaines et ports Azure AI services

L’hôte doit établir une liste d'autorisation pour 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 (DPI) 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 les bloquant, en les réacheminant ou en les enregistrant en conséquence.

Désactivez l’inspection approfondie des paquets sur les canaux sécurisés que les conteneurs Azure AI 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 Azure AI services.

Installer et explorer les fonctionnalités fournies par les conteneurs dans Azure AI services :