Containerunterstützung in Azure Cognitive ServicesContainer support in Azure Cognitive Services

Dank der Containerunterstützung in Azure Cognitive Services können Entwickler die gleichen umfangreichen APIs verwenden wie in Azure und dabei flexibel entscheiden, wo die mit Docker-Containern verbundenen Dienste bereitgestellt und gehostet werden.Container support in Azure Cognitive Services allows developers to use the same rich APIs that are available in Azure, and enables flexibility in where to deploy and host the services that come with Docker containers. Die Containerunterstützung ist derzeit als Vorschauversion für einige Dienste von Azure Cognitive Services verfügbar, einschließlich:Container support is currently available in preview for a subset of Azure Cognitive Services, including parts of:

Die Verwendung von Containern ist ein Ansatz zur Softwareverteilung, bei dem eine Anwendung oder ein Dienst, einschließlich der Abhängigkeiten und der Konfiguration, als Containerimage zusammengepackt wird.Containerization is an approach to software distribution in which an application or service, including its dependencies & configuration, is packaged together as a container image. Das Containerimage kann mit geringer oder ganz ohne Bearbeitung auf einem Containerhost bereitgestellt werden.With little or no modification, a container image can be deployed on a container host. Container sind voneinander und vom zugrunde liegenden Betriebssystem isoliert und nehmen weniger Speicher in Anspruch als ein virtueller Computer.Containers are isolated from each other and the underlying operating system, with a smaller footprint than a virtual machine. Container können für kurzfristige Aufgaben über Containerimages instanziiert und wieder entfernt werden, wenn sie nicht mehr benötigt werden.Containers can be instantiated from container images for short-term tasks, and removed when no longer needed.

Cognitive Services-Ressourcen sind in Microsoft Azure verfügbar.Cognitive Services resources are available on Microsoft Azure. Melden Sie sich beim Azure-Portal an, um Azure-Ressourcen für diese Dienste zu erstellen und zu erkunden.Sign into the Azure portal to create and explore Azure resources for these services.

Features und VorteileFeatures and benefits

  • Kontrolle über Daten: Ermöglichen Sie Kunden, auszuwählen, wo Cognitive Services ihre Daten verarbeitet.Control over data: Allow customers to choose where these Cognitive Services process their data. Dies ist wichtig für Kunden, die keine Daten in die Cloud senden können, aber auf die Cognitive Services-Technologie zugreifen müssen.This is essential for customers that cannot send data to the cloud but need access to Cognitive Services technology. Einheitliche Unterstützung in Hybridumgebungen – für Daten, Verwaltung, Identität und Sicherheit.Support consistency in hybrid environments – across data, management, identity, and security.
  • Kontrolle über Modellaktualisierungen: Bietet Kunden Flexibilität bei der Versionsverwaltung und Aktualisierung der in ihren Lösungen eingesetzten Modelle.Control over model updates: Provide customers flexibility in versioning and updating of models deployed in their solutions.
  • Portable Architektur: Ermöglicht die Erstellung einer portablen Anwendungsarchitektur, die in Azure, lokal und am Edge eingesetzt werden kann.Portable architecture: Enable the creation of a portable application architecture that can be deployed on Azure, on-premises and the edge. Container können direkt für Azure Kubernetes Service, Azure Container Instances oder einen Kubernetes-Cluster mit Bereitstellung in Azure Stack bereitgestellt werden.Containers can be deployed directly to Azure Kubernetes Service, Azure Container Instances, or to a Kubernetes cluster deployed to Azure Stack. Weitere Informationen finden Sie unter Bereitstellen von Kubernetes in Azure Stack.For more information, see Deploy Kubernetes to Azure Stack.
  • Hoher Durchsatz/niedrige Latenz: Bietet Kunden die Möglichkeit, für hohe Durchsatzraten und niedrige Latenzanforderungen zu skalieren, indem Cognitive Services physisch in der Nähe ihrer Anwendungslogik und -daten ausgeführt wird.High throughput / low latency: Provide customers the ability to scale for high throughput and low latency requirements by enabling Cognitive Services to run physically close to their application logic and data. Container erzwingen keine Obergrenzen für die Transaktionen pro Sekunde (TPS) und können für die zentrale und horizontale Skalierung konfiguriert werden, um bei Bedarf die erforderlichen Hardwareressourcen bereitzustellen.Containers do not cap transactions per second (TPS) and can be made to scale both up and out to handle demand if you provide the necessary hardware resources.

Container in Azure Cognitive ServicesContainers in Azure Cognitive Services

Azure Cognitive Services-Container bieten den folgenden Satz von Docker-Containern, von denen jeder eine Teilmenge der Funktionalität von Diensten in Azure Cognitive Services enthält:Azure Cognitive Services containers provide the following set of Docker containers, each of which contains a subset of functionality from services in Azure Cognitive Services:

DienstService Unterstützter TarifSupported Pricing Tier ContainerContainer BESCHREIBUNGDescription
AnomalieerkennungAnomaly detector F0, S0F0, S0 AnomalieerkennungAnomaly-Detector Die Anomalieerkennungs-API bietet Ihnen die Möglichkeit, Anomalien in Zeitreihendaten durch maschinelles Lernen zu überwachen und zu erkennen.The Anomaly Detector API enables you to monitor and detect abnormalities in your time series data with machine learning.
Zugriff anfordernRequest access
Maschinelles SehenComputer Vision F0, S1F0, S1 LesenRead Extrahiert gedruckten Text in Bildern von verschiedensten Objekten mit unterschiedlichen Oberflächen und Hintergründen, wie z.B. Belege, Poster, und Visitenkarten.Extracts printed text from images of various objects with different surfaces and backgrounds, such as receipts, posters, and business cards. Der Container für das Lesen erkennt auch handgeschriebenen Text in Bildern und bietet Unterstützung für PDF, TIFF oder mehrere Seiten.The Read container also detects handwritten text in images and provides PDF/TIFF/multi-page support.

Wichtig: Der Container für das Lesen funktioniert derzeit nur für Englisch.Important: The Read container currently works only with English.
Zugriff anfordernRequest access
Maschinelles SehenComputer Vision F0, S1F0, S1 TexterkennungRecognize Text Extrahiert gedruckten Text in Bildern von verschiedensten Objekten mit unterschiedlichen Oberflächen und Hintergründen, wie z.B. Belege, Poster, und Visitenkarten.Extracts printed text from images of various objects with different surfaces and backgrounds, such as receipts, posters, and business cards.

Wichtig: Der Texterkennungscontainer funktioniert derzeit nur für Englisch.Important: The Recognize Text container currently works only with English.
Zugriff anfordernRequest access
GesichtserkennungFace F0, S0F0, S0 GesichtserkennungFace Erkennt menschliche Gesichter in Bildern und identifiziert zugehörige Attribute wie Gesichtsmerkmale (z.B. Nasen und Augen), Geschlecht, Alter und andere vom Computer vorhergesagte Gesichtsmerkmale.Detects human faces in images, and identifies attributes, including face landmarks (such as noses and eyes), gender, age, and other machine-predicted facial features. Zusätzlich zur Erkennung kann die Gesichtserkennung über eine Zuverlässigkeitsbewertung überprüfen, ob zwei Gesichter in einem oder verschiedenen Bildern identisch sind, oder Gesichter mit einer Datenbank vergleichen, um festzustellen, ob ein ähnliches oder identisches Gesicht bereits vorhanden ist.In addition to detection, Face can check if two faces in the same image or different images are the same by using a confidence score, or compare faces against a database to see if a similar-looking or identical face already exists. Sie kann auch ähnliche Gesichter in Gruppen mit gemeinsamen Gesichtsmerkmalen organisieren.It can also organize similar faces into groups, using shared visual traits.
Zugriff anfordernRequest access
FormularerkennungForm recognizer F0, S0F0, S0 FormularerkennungForm Recognizer Die Formularerkennung wendet Technologien des maschinellen Lernens an, um Schlüssel-Wert-Paare und Tabellen in Formularen zu identifizieren und aus diesen zu extrahieren.Form Understanding applies machine learning technology to identify and extract key-value pairs and tables from forms.
Zugriff anfordernRequest access
LUISLUIS F0, S0F0, S0 LUIS (Image)LUIS (image) Lädt Ihr trainiertes oder veröffentlichtes Language Understanding-Modell (auch als LUIS-App bezeichnet) in einen Docker-Container und ermöglicht den Zugriff auf die Abfragevorhersagen von den API-Endpunkten des Containers.Loads a trained or published Language Understanding model, also known as a LUIS app, into a docker container and provides access to the query predictions from the container's API endpoints. Sie können Abfrageprotokolle vom Container erfassen und wieder in das LUIS-Portal hochladen, um die Vorhersagegenauigkeit der App zu verbessern.You can collect query logs from the container and upload these back to the LUIS portal to improve the app's prediction accuracy.
Spracherkennungsdienst-APISpeech Service API F0, S0F0, S0 SpracherkennungSpeech-to-text Wandelt fortlaufende Sprache in Echtzeit in Text um.Transcribes continuous real-time speech into text.
Zugriff anfordernRequest access
Spracherkennungsdienst-APISpeech Service API F0, S0F0, S0 SprachsyntheseText-to-speech Konvertiert Text in natürlich klingende Sprache.Converts text to natural-sounding speech.
Zugriff anfordernRequest access
TextanalyseText Analytics F0, SF0, S Schlüsselbegriffserkennung (Bild)Key Phrase Extraction (image) Extrahiert die Schlüsselbegriffe, um die wichtigsten Punkte zu ermitteln.Extracts key phrases to identify the main points. Wenn der eingegebene Text beispielsweise „Das Essen war köstlich, und es gab hervorragendes Personal“ lautet, gibt die API die Kernpunkte „Essen“ und „hervorragendes Personal“ zurück.For example, for the input text "The food was delicious and there were wonderful staff", the API returns the main talking points: "food" and "wonderful staff".
TextanalyseText Analytics F0, SF0, S Sprachenerkennung (Bild)Language Detection (image) Erkennt die Sprache von Eingabetexten für bis zu 120 Sprachen und meldet einen einzigen Sprachcode für jedes Dokument, das auf Anforderung gesendet wird.For up to 120 languages, detects which language the input text is written in and report a single language code for every document submitted on the request. Der Sprachcode ist mit einem Wert kombiniert, der die Stärke der Bewertung angibt.The language code is paired with a score indicating the strength of the score.
TextanalyseText Analytics F0, SF0, S Standpunktanalyse (Bild)Sentiment Analysis (image) Analysiert unformatierten Text auf Hinweise auf positive oder negative Stimmungen.Analyzes raw text for clues about positive or negative sentiment. Die API gibt für jedes Dokument eine Bewertung des Standpunkts zwischen 0 und 1 zurück. Hierbei entspricht 1 einer positiven Bewertung.This API returns a sentiment score between 0 and 1 for each document, where 1 is the most positive. Die Analysemodelle sind mithilfe großer Textmengen und Microsoft-Technologien für natürliche Sprache vortrainiert.The analysis models are pre-trained using an extensive body of text and natural language technologies from Microsoft. Für ausgewählte Sprachen kann die API jeden bereitgestellten unformatierten Text analysieren und bewerten und der aufrufenden Anwendung direkt Ergebnisse zurückgeben.For selected languages, the API can analyze and score any raw text that you provide, directly returning results to the calling application.

Darüber hinaus werden einige Container für Ressourcenschlüssel im All-In-One-Angebot von Cognitive Services unterstützt.In addition, some containers are supported in Cognitive Services All-In-One offering resource keys. Sie können eine einzelne All-In-One-Ressource von Cognitive Services erstellen und denselben Abrechnungsschlüssel für alle unterstützten Dienste verwenden:You can create one single Cognitive Services All-In-One resource and use the same billing key across supported services for the following services:

  • Maschinelles SehenComputer Vision
  • GesichtFace
  • LUISLUIS
  • TextanalyseText Analytics

Containerverfügbarkeit in Azure Cognitive ServicesContainer availability in Azure Cognitive Services

Azure Cognitive Services-Container sind über Ihr Azure-Abonnement öffentlich zugänglich, und Docker-Containerimages können entweder aus der Microsoft Container Registry oder dem Docker-Hub abgerufen werden.Azure Cognitive Services containers are publicly available through your Azure subscription, and Docker container images can be pulled from either the Microsoft Container Registry or Docker Hub. Verwenden Sie den Befehl docker pull, um ein Containerimage aus dem entsprechenden Repository herunterzuladen.You can use the docker pull command to download a container image from the appropriate registry.

Wichtig

Derzeit müssen Sie einen Anmeldeprozess abschließen, um auf die folgenden Container zuzugreifen, in denen Sie einen Fragebogen mit Fragen zu Ihnen, Ihrem Unternehmen und dem Anwendungsfall, für den Sie die Container implementieren möchten, ausfüllen und einreichen.Currently, you must complete a sign-up process to access the following containers, in which you fill out and submit a questionnaire with questions about you, your company, and the use case for which you want to implement the containers. Sobald Sie Zugriff und Zugangsdaten erhalten haben, können Sie die Containerimages aus einer privaten Containerregistrierung abrufen, die von Azure Container Registry gehostet wird.Once you're granted access and provided credentials, you can then pull the container images from a private container registry hosted by Azure Container Registry.

Containerrepositorys und -imagesContainer repositories and images

Die folgenden Tabellen stellen eine umfassende Liste der verfügbaren Containerimages dar, die von Azure Cognitive Services geboten werden.The tables below are a comprehensive listing of the available container images offered by Azure Cognitive Services.

Öffentliche „nicht verwaltete“ Vorschau (Containerregistrierung: mcr.microsoft.com)Public "Ungated" (container registry: mcr.microsoft.com)

Die Microsoft-Containerregistrierung hostet alle öffentlich verfügbaren, „nicht verwalteten“ Container für Cognitive Services.The Microsoft Container Registry hosts all of the publicly available "ungated" containers for Cognitive Services.

DienstService ContainerContainer Containerregistrierung/Repository/ImagenameContainer Registry / Repository / Image Name
LUISLUIS LUISLUIS mcr.microsoft.com/azure-cognitive-services/luis
TextanalyseText Analytics SchlüsselwortextraktionKey Phrase Extraction mcr.microsoft.com/azure-cognitive-services/keyphrase
TextanalyseText Analytics SpracherkennungLanguage Detection mcr.microsoft.com/azure-cognitive-services/language
TextanalyseText Analytics StandpunktanalyseSentiment Analysis mcr.microsoft.com/azure-cognitive-services/sentiment

Öffentliche "verwaltete" Vorschau (Containerregistrierung: containerpreview.azurecr.io)Public "Gated" Preview (container registry: containerpreview.azurecr.io)

Die Vorschauversion der Containerregistrierung hostet alle öffentlich verfügbaren, „verwalteten“ Container für Cognitive Services.The Container Preview registry hosts all of the publicly available "gated" containers for Cognitive Services. Diese Container erfordern eine formelle Zugriffsanforderung, um sie zu nutzen.These containers require a formal request for access in order to consume them.

DienstService ContainerContainer Containerregistrierung/Repository/ImagenameContainer Registry / Repository / Image Name
AnomalieerkennungAnomaly detector AnomalieerkennungAnomaly Detector containerpreview.azurecr.io/microsoft/cognitive-services-anomaly-detector
Maschinelles SehenComputer Vision LesenRead containerpreview.azurecr.io/microsoft/cognitive-services-read
GesichtserkennungFace GesichtFace containerpreview.azurecr.io/microsoft/cognitive-services-face
FormularerkennungForm recognizer FormularerkennungForm Recognizer containerpreview.azurecr.io/microsoft/cognitive-services-form-recognizer
<<<<<<< KOPFTEIL Spracherkennungsdienst-API Spracherkennung containerpreview.azurecr.io/microsoft/cognitive-services-speech-to-text Spracherkennungsdienst-API benutzerdefinierte Spracherkennung containerpreview.azurecr.io/microsoft/cognitive-services-custom-speech-to-text Spracherkennungsdienst-API Text-zu-Sprache containerpreview.azurecr.io/microsoft/cognitive-services-text-to-speech Spracherkennungsdienst-API Text-zu-Sprache benutzerdefiniert containerpreview.azurecr.io/microsoft/cognitive-services-custom-text-to-speech ======= Spracherkennungsdienst-API Spracherkennung containerpreview.azurecr.io/microsoft/cognitive-services-speech-to-text Spracherkennungsdienst-API Text-zu-Sprache containerpreview.azurecr.io/microsoft/cognitive-services-text-to-speech Textübersetzung Textübersetzung containerpreview.azurecr.io/microsoft/cognitive-services-translator-text <<<<<<< HEAD Speech Service API Speech-to-text containerpreview.azurecr.io/microsoft/cognitive-services-speech-to-text Speech Service API Custom Speech-to-text containerpreview.azurecr.io/microsoft/cognitive-services-custom-speech-to-text Speech Service API Text-to-speech containerpreview.azurecr.io/microsoft/cognitive-services-text-to-speech Speech Service API Custom Text-to-speech containerpreview.azurecr.io/microsoft/cognitive-services-custom-text-to-speech ======= Speech Service API Speech-to-text containerpreview.azurecr.io/microsoft/cognitive-services-speech-to-text Speech Service API Text-to-speech containerpreview.azurecr.io/microsoft/cognitive-services-text-to-speech Translator Text Translator Text containerpreview.azurecr.io/microsoft/cognitive-services-translator-text

refs/remotes/MicrosoftDocs/masterrefs/remotes/MicrosoftDocs/master

VoraussetzungenPrerequisites

Sie müssen die folgenden Voraussetzungen erfüllen, bevor Sie die Container der Azure Cognitive Services verwenden können:You must satisfy the following prerequisites before using Azure Cognitive Services containers:

Docker-Engine: Die Docker-Engine muss lokal installiert sein.Docker Engine: You must have Docker Engine installed locally. Docker stellt Pakete zur Konfiguration der Docker-Umgebung unter macOS, Linux und Windows zur Verfügung.Docker provides packages that configure the Docker environment on macOS, Linux, and Windows. Unter Windows muss Docker für die Unterstützung von Linux-Containern konfiguriert werden.On Windows, Docker must be configured to support Linux containers. Docker-Container können auch direkt für Azure Kubernetes Service oder Azure Container Instances bereitgestellt werden.Docker containers can also be deployed directly to Azure Kubernetes Service or Azure Container Instances.

Docker muss so konfiguriert werden, dass die Container eine Verbindung mit Azure herstellen und Abrechnungsdaten an Azure senden können.Docker must be configured to allow the containers to connect with and send billing data to Azure.

Kenntnisse von Microsoft Container Registry und Docker: Sie sollten über Grundkenntnisse der Konzepte von Microsoft Container Registry und Docker verfügen, einschließlich Registrierungen, Repositorys, Container und Containerimages, und die grundlegenden docker-Befehle kennen.Familiarity with Microsoft Container Registry and Docker: You should have a basic understanding of both Microsoft Container Registry and Docker concepts, like registries, repositories, containers, and container images, as well as knowledge of basic docker commands.

Eine Einführung in Docker und Container finden Sie in der Docker-Übersicht.For a primer on Docker and container basics, see the Docker overview.

Einzelne Container können auch ihre eigenen Anforderungen haben, wie z.B. Anforderungen an die Server- und Speicherzuordnung.Individual containers can have their own requirements, as well, including server and memory allocation requirements.

Containersicherheit in Azure Cognitive ServicesAzure Cognitive Services container security

Bei der Entwicklung von Anwendungen sollte die Sicherheit im Vordergrund stehen.Security should be a primary focus whenever you're developing applications. Die Bedeutung von Sicherheit ist ein Erfolgskriterium.The importance of security is a metric for success. Wenn Sie eine Softwarelösung entwickeln, die Cognitive Services-Container enthält, ist es wichtig, die Grenzen und Möglichkeiten zu verstehen, die Ihnen zur Verfügung stehen.When you're architecting a software solution that includes Cognitive Services containers, it's vital to understand the limitations and capabilities available to you. Weitere Informationen zur Netzwerksicherheit finden Sie unter Konfigurieren von virtuellen Netzwerken für Azure Cognitive Services.For more information about network security, see Configure Azure Cognitive Services virtual networks.

Wichtig

Standardmäßig ist keine Sicherheit für die Cognitive Services-Container-API vorhanden.By default there is no security on the Cognitive Services container API. Der Grund dafür ist, dass der Container meist als Teil eines Pod ausgeführt wird, das von außen durch eine Netzwerkbrücke geschützt ist.The reason for this is that most often the container will run as part of a pod which is protected from the outside by a network bridge. Es ist jedoch möglich, die Authentifizierung zu aktivieren, die identisch zu der Authentifizierung funktioniert, die beim Zugriff auf die cloudbasierten Cognitive Services verwendet wird.However, it is possible to enable authentication which works identically to the authentication used when accessing the cloud-based Cognitive Services.

Das Diagramm unten veranschaulicht den standardmäßigen und nicht sicheren Ansatz:The diagram below illustrates the default and non-secure approach:

Containersicherheit

Als alternativer und sicherer Ansatz könnten Consumer von Cognitive Services-Containern einen Container mit einer Frontkomponente erweitern, wodurch der Containerendpunkt privat bleibt.As an alternative and secure approach, consumers of Cognitive Services containers could augment a container with a front-facing component, keeping the container endpoint private. Betrachten wir ein Szenario, in dem Istio als Eingangsgateway verwendet wird.Let's consider a scenario where we use Istio as an ingress gateway. Istio unterstützt HTTPS/SSL und die Authentifizierung über Clientzertifikate.Istio supports HTTPS/SSL and client-certificate authentication. In diesem Szenario stellt das Istio-Front-End den Containerzugriff bereit und präsentiert das Clientzertifikat, das zuvor von Istio zur Whitelist hinzugefügt wurde.In this scenario, the Istio frontend exposes the container access, presenting the client certificate that is whitelisted beforehand with Istio.

Nginx ist eine weitere beliebte Option in derselben Kategorie.Nginx is another popular choice in the same category. Sowohl Istio als auch Nginx fungieren als Dienstnetz und bieten zusätzliche Features wie Lastenausgleich, Routing und Ratensteuerung.Both Istio and Nginx act as a service mesh and offer additional features including things like load-balancing, routing, and rate-control.

ContainernetzwerkeContainer networking

Die Cognitive Services-Container sind erforderlich, um Messungsinformationen zu Abrechnungszwecken zu übermitteln.The Cognitive Services containers are required to submit metering information for billing purposes. Die einzige Ausnahme bilden Offlinecontainer, da sie einer anderen Abrechnungsmethode unterliegen.The only exception, is Offline containers as they follow a different billing methodology. Wenn Sie die verschiedenen Netzwerkkanäle, auf die sich die Cognitive Services-Container stützen, nicht in einer Zulassungsliste aufführen, funktionieren die Container nicht.Failure to allow list various network channels that the Cognitive Services containers rely on will prevent the container from working.

Cognitive Services-Domänen und Ports in der Zulassungsliste aufführenAllow list Cognitive Services domains and ports

Der Host sollte Port 443 und die folgenden Domänen in der Zulassungsliste aufführen:The host should allow list port 443 and the following domains:

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

Deaktivieren der eingehenden PaketuntersuchungDisable deep packet inspection

Eingehende Paketuntersuchung (Deep Packet Inspection, DPI) ist eine Art der Datenverarbeitung, bei der die in einem Computernetzwerk gesendeten Daten im Detail untersucht werden. Die zur Verfügung stehenden Maßnahmen sind Blockieren, Umleiten oder Protokollieren von Daten.Deep packet inspection (DPI) is a type of data processing that inspects in detail the data being sent over a computer network, and usually takes action by blocking, re-routing, or logging it accordingly.

Deaktivieren Sie DPI für die sicheren Kanäle, die von Cognitive Services-Containern zu Microsoft-Servern erstellt werden.Disable DPI on the secure channels that the Cognitive Services containers create to Microsoft servers. Andernfalls funktionieren die Container nicht ordnungsgemäß.Failure to do so will prevent the container from functioning correctly.

BlogbeiträgeBlog posts

EntwicklerbeispieleDeveloper samples

Beispiele für Entwickler finden Sie in unserem GitHub-Repository.Developer samples are available at our GitHub repository.

Anzeigen des WebinarsView webinar

Im Webinar erhalten Sie Informationen zu folgenden Aktionen:Join the webinar to learn about:

  • Bereitstellen von Cognitive Services auf einem beliebigen Computer mit DockerHow to deploy Cognitive Services to any machine using Docker
  • Bereitstellen von Cognitive Services in AKSHow to deploy Cognitive Services to AKS

Nächste SchritteNext steps

Erfahren Sie mehr zu Containeranleitungen, die Sie mit Cognitive Services verwenden können.Learn about container recipes you can use with the Cognitive Services.

Installieren und erkunden Sie die Funktionalität der Container in Azure Cognitive Services:Install and explore the functionality provided by containers in Azure Cognitive Services: