Azure Cognitive Services でのコンテナーのサポートContainer support in Azure Cognitive Services

Azure Cognitive Services でのコンテナーのサポートを使用すると、開発者は Azure で利用できるものと同じリッチな API を使用できます。また、Docker コンテナーに付随するサービスをデプロイおよびホストできる柔軟性があります。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. コンテナー サポートは現在、以下を含む Azure Cognitive Services のサブセットで使用できます。Container support is currently available for a subset of Azure Cognitive Services, including parts of:

コンテナー化とは、アプリケーションまたはサービスとその依存関係や構成をコンテナー イメージとしてパッケージ化するソフトウェア配布のアプローチです。Containerization is an approach to software distribution in which an application or service, including its dependencies & configuration, is packaged together as a container image. コンテナー イメージは、ほとんどまたはまったく変更せずに、コンテナー ホストにデプロイできます。With little or no modification, a container image can be deployed on a container host. コンテナーは、相互および基になるオペレーティング システムから分離され、仮想マシンよりもフット プリントが小さくなります。Containers are isolated from each other and the underlying operating system, with a smaller footprint than a virtual machine. 短期間のタスクに対してコンテナーをコンテナー イメージからインスタンス化し、不要になったら削除できます。Containers can be instantiated from container images for short-term tasks, and removed when no longer needed.

Cognitive Services リソースは Microsoft Azure 上で使用できます。Cognitive Services resources are available on Microsoft Azure. これらのサービス用の Azure リソースを作成して調べるには、Azure portal にサインインしてください。Sign into the Azure portal to create and explore Azure resources for these services.

機能とメリットFeatures and benefits

  • イミュータブル インフラストラクチャ:DevOps チームを有効にすると、一貫性と信頼性のある既知のシステム パラメーターのセットを活用しながら、変更に適応できます。Immutable infrastructure: Enable DevOps teams' to leverage a consistent and reliable set of known system parameters, while being able to adapt to change. コンテナーには、予測可能なエコシステム内でピボットして構成の誤差を回避できる柔軟性があります。Containers provide the flexibility to pivot within a predictable ecosystem and avoid configuration drift.
  • データの制御:これらの Cognitive Services がお客様のデータをどこで処理するかをお客様が選択できるようにします。Control over data: Allow customers to choose where these Cognitive Services process their data. これは、クラウドにデータを送信することはできないが、Cognitive Services テクノロジにアクセスする必要があるお客様にとって重要です。This is essential for customers that cannot send data to the cloud but need access to Cognitive Services technology. ハイブリッド環境でデータ、管理、ID、セキュリティの整合性をサポートします。Support consistency in hybrid environments – across data, management, identity, and security.
  • モデルの更新の制御:お客様は、ソリューションにデプロイされているモデルのバージョン管理と更新を柔軟に行うことができます。Control over model updates: Provide customers flexibility in versioning and updating of models deployed in their solutions.
  • 移植可能なアーキテクチャ:Azure、オンプレミス、エッジにデプロイできる移植可能なアプリケーション アーキテクチャを作成できます。Portable architecture: Enable the creation of a portable application architecture that can be deployed on Azure, on-premises and the edge. コンテナーは、Azure Kubernetes ServiceAzure Container Instances、または Azure Stack にデプロイされた Kubernetes クラスターに直接デプロイできます。Containers can be deployed directly to Azure Kubernetes Service, Azure Container Instances, or to a Kubernetes cluster deployed to Azure Stack. 詳しくは、「Kubernetes を Azure Stack にデプロイする」をご覧ください。For more information, see Deploy Kubernetes to Azure Stack.
  • 高スループット/低待ち時間:お客様は、アプリケーションのロジックとデータに物理的に近い場所で Cognitive Services を実行できるようにすることで、高いスループットと低待ち時間の要件に合わせてスケーリングできます。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. コンテナーでは、1 秒あたりのトランザクション数 (TPS) は制限されません。必要なハードウェア リソースを提供した場合は、コンテナーのスケールアップとスケールアウトの両方を行って需要を処理することができます。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.
  • スケーラビリティ:コンテナー化とコンテナー オーケストレーション ソフトウェア (Kubernetes など) がますます普及し、スケーラビリティは、技術進歩の最前線にあります。Scalability: With the ever growing popularity of containerization and container orchestration software, such as Kubernetes; scalability is at the forefront of technological advancements. スケーラブルなクラスター基盤の上に構築されたアプリケーション開発は、高可用性に対応します。Building on a scalable cluster foundation, application development caters to high availability.

Azure Cognitive Services でのコンテナーContainers in Azure Cognitive Services

Azure Cognitive Services のコンテナーでは次の Docker コンテナー セットが提供され、各コンテナーには Azure Cognitive Services のサービスの機能のサブセットが含まれます。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:

サービスService サポートされている価格レベルSupported Pricing Tier コンテナーContainer 説明Description
Anomaly DetectorAnomaly detector F0、S0F0, S0 Anomaly-DetectorAnomaly-Detector Anomaly Detector API では、機械学習を利用することで、時系列データを監視し、その中の異常を検出できます。The Anomaly Detector API enables you to monitor and detect abnormalities in your time series data with machine learning.
アクセスの要求Request access
Computer VisionComputer Vision F0、S1F0, S1 読み取りRead レシート、ポスター、名刺など、さまざまな表面や背景を持ついろいろなオブジェクトのイメージから、印刷されたテキストを抽出します。Extracts printed text from images of various objects with different surfaces and backgrounds, such as receipts, posters, and business cards. "読み取り" コンテナーでは、画像内の "手書きテキスト" も検出され、PDF/TIFF/複数ページのサポートが提供されます。The Read container also detects handwritten text in images and provides PDF/TIFF/multi-page support.

重要: 読み取りコンテナーは現在のところ、英語でのみ機能します。Important: The Read container currently works only with English.
FaceFace F0、S0F0, S0 FaceFace Face には、画像中の人の顔を検出し、顔のパーツ (鼻や目など)、性別、年齢のほか、マシンが予測するその他の顔の特徴などの属性を識別します。Detects human faces in images, and identifies attributes, including face landmarks (such as noses and eyes), gender, age, and other machine-predicted facial features. 検出に加えて、Face では、同じ画像または異なる画像中の 2 つの顏が同じかどうかを信頼スコアを使って確認したり、データベースと顏を比較して、似ている顏や同一の顔が既に存在するかどうかを調べたりできます。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. また、同じ視覚的特徴を使用して、似た顔をグループに分けて整理することもできます。It can also organize similar faces into groups, using shared visual traits.
アクセスの要求Request access
Form recognizerForm recognizer F0、S0F0, S0 Form RecognizerForm Recognizer Form Understanding では、機械学習の技術を適用して、フォームからキーと値のペアおよびテーブルを識別して抽出します。Form Understanding applies machine learning technology to identify and extract key-value pairs and tables from forms.
アクセスの要求Request access
LUISLUIS F0、S0F0, S0 LUIS (イメージ)LUIS (image) トレーニング済みまたは発行済みの Language Understanding モデル ("LUIS アプリ" と呼ばれます) を Docker コンテナーに読み込みます。ユーザーは、そのコンテナーの API エンドポイントからクエリ予測を利用することができます。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. コンテナーからクエリのログを収集し、それらを LUIS ポータルに再度アップロードすることで、アプリの予測精度を高めることができます。You can collect query logs from the container and upload these back to the LUIS portal to improve the app's prediction accuracy.
Speech Service APISpeech Service API F0、S0F0, S0 音声テキスト変換Speech-to-text 連続するリアルタイムの音声をテキストに書き起こします。Transcribes continuous real-time speech into text.
Speech Service APISpeech Service API F0、S0F0, S0 カスタム音声変換Custom Speech-to-text カスタム モデルを使用して、連続するリアルタイムの音声をテキストに書き起こします。Transcribes continuous real-time speech into text using a custom model.
Speech Service APISpeech Service API F0、S0F0, S0 テキスト読み上げText-to-speech テキストを自然な音声に変換します。Converts text to natural-sounding speech.
Speech Service APISpeech Service API F0、S0F0, S0 カスタム テキスト読み上げCustom Text-to-speech カスタム モデルを使用してテキストを自然な音声に変換します。Converts text to natural-sounding speech using a custom model.
Text AnalyticsText Analytics F0、SF0, S キー フレーズ抽出 (イメージ)Key Phrase Extraction (image) 主なポイントを識別するキー フレーズを抽出します。Extracts key phrases to identify the main points. たとえば、「食べ物はおいしくて、すばらしいスタッフがいた」というテキストを入力すると、この API は話題の中心として "食べ物" と "すばらしいスタッフ" を返します。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".
Text AnalyticsText Analytics F0、SF0, S 言語検出 (イメージ)Language Detection (image) 最大 120 の言語に対して、入力テキストが書かれている言語を検出し、要求で送信されたドキュメントごとに 1 つの言語コードを報告します。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. 言語コードは、評価値の強度を示すスコアと組みになります。The language code is paired with a score indicating the strength of the score.
Text AnalyticsText Analytics F0、SF0, S 感情分析 v3 (イメージ)Sentiment Analysis v3 (image) 肯定的または否定的な感情の手がかりを探して未加工のテキストを分析します。Analyzes raw text for clues about positive or negative sentiment. このバージョンの感情分析からは、各ドキュメントとその中の文のセンチメント ラベル (たとえば、"肯定的"、"否定的") が返されます。This version of sentiment analysis returns sentiment labels (for example positive or negative) for each document and sentence within it.
Text AnalyticsText Analytics F0、SF0, S Text Analytics for HealthText Analytics for health 構造化されていない臨床テキストから医療情報を抽出してラベル付けします。Extract and label medical information from unstructured clinical text.

また、一部のコンテナーは Cognitive Services オールインワン オファリングのリソース キー内でサポートされています。In addition, some containers are supported in Cognitive Services All-In-One offering resource keys. 単一の Cognitive Services オールインワン リソースを作成し、次のサービスに対してサポートされているサービス全体で同じ課金キーを使用できます。You can create one single Cognitive Services All-In-One resource and use the same billing key across supported services for the following services:

  • Computer VisionComputer Vision
  • FaceFace
  • Text AnalyticsText Analytics

Azure Cognitive Services でのコンテナーの使用可能性Container availability in Azure Cognitive Services

Azure Cognitive Services コンテナーはお使いの Azure サブスクリプションを通じてパブリックに使用でき、Docker コンテナー イメージは Microsoft Container Registry または Docker Hub からプルできます。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. 適切なレジストリからコンテナー イメージをダウンロードするには、docker pull コマンドを使用できます。You can use the docker pull command to download a container image from the appropriate registry.

コンテナーのリポジトリとイメージContainer repositories and images

次の表は、Azure Cognitive Services によって提供される使用可能なコンテナー イメージの一覧です。The tables below are a listing of the available container images offered by Azure Cognitive Services. 利用できるコンテナー イメージ名とその利用できるタグの完全一覧が必要であれば、Cognitive Services コンテナー イメージ タグに関するページを参照してください。For a complete list of all the available container image names and their available tags, see Cognitive Services container image tags.

一般公開Generally available

Microsoft コンテナー レジストリ (MCR) からは、Cognitive Services 用に一般提供されているすべてのコンテナーが配信されています。The Microsoft Container Registry (MCR) syndicates all of the generally available containers for Cognitive Services. コンテナーは、Docker Hub から直接入手することもできます。The containers are also available directly from the Docker hub.

LUIS コンテナーLUIS Container コンテナー レジストリ / リポジトリ / イメージ名Container Registry / Repository / Image Name

詳細については、LUIS コンテナーの実行およびインストール方法に関するページを参照してください。See How to run and install LUIS containers for more information.

パブリックの "ゲートなし" プレビュー (コンテナー レジストリ: "Ungated" preview (container registry:

次のプレビュー コンテナーは、一般公開されています。The following preview containers are available publicly. Microsoft コンテナー レジストリ (MCR) では、Cognitive Services 向けに一般提供されているゲートなしコンテナーをすべて配信しています。The Microsoft Container Registry (MCR) syndicates all of the publicly available ungated containers for Cognitive Services. コンテナーは、Docker Hub から直接入手することもできます。The containers are also available directly from the Docker hub.

サービスService コンテナーContainer コンテナー レジストリ / リポジトリ / イメージ名Container Registry / Repository / Image Name
Text AnalyticsText Analytics キー フレーズ抽出Key Phrase Extraction
Text AnalyticsText Analytics 言語検出Language Detection
Anomaly DetectorAnomaly detector Anomaly DetectorAnomaly Detector

パブリックの "ゲート付き" プレビュー (コンテナー レジストリ: "Gated" preview (container registry:

次のゲート付きプレビュー コンテナーはコンテナー プレビュー レジストリでホストされており、アクセスするにはアプリケーションが必要です。The following gated preview containers are hosted on the Container Preview registry, and require an application to access. 詳細については、次のコンテナーに関する記事を参照してください。See the following container articles for more information.

サービスService コンテナーContainer コンテナー レジストリ / リポジトリ / イメージ名Container Registry / Repository / Image Name
Computer VisionComputer Vision ReadRead
FaceFace FaceFace
Form recognizerForm recognizer Form RecognizerForm Recognizer
Speech Service APISpeech Service API 音声テキスト変換Speech-to-text
Speech Service APISpeech Service API カスタム音声変換Custom Speech-to-text
Speech Service APISpeech Service API テキスト読み上げText-to-speech
Speech Service APISpeech Service API カスタム テキスト読み上げCustom Text-to-speech
Text Analytics for HealthText Analytics for health Text Analytics for HealthText Analytics for health


Azure Cognitive Services コンテナーを使用するには、次の前提条件を満たしている必要があります。You must satisfy the following prerequisites before using Azure Cognitive Services containers:

Docker エンジン: Docker エンジンをローカルにインストールしている必要があります。Docker Engine: You must have Docker Engine installed locally. Docker には、macOSLinuxWindows 上で Docker 環境を構成するパッケージが用意されています。Docker provides packages that configure the Docker environment on macOS, Linux, and Windows. Windows では、Linux コンテナーをサポートするように Docker を構成する必要があります。On Windows, Docker must be configured to support Linux containers. Docker コンテナーは、Azure Kubernetes Service または Azure Container Instances に直接デプロイできます。Docker containers can also be deployed directly to Azure Kubernetes Service or Azure Container Instances.

コンテナーが Azure に接続して課金データを送信できるように、Docker を構成する必要があります。Docker must be configured to allow the containers to connect with and send billing data to Azure.

Microsoft Container Registry と Docker に関する知識: レジストリ、リポジトリ、コンテナー、コンテナー イメージなどの Microsoft Container Registry と Docker の両方の概念の基本的な理解に加えて、基本的な docker コマンドの知識が必要です。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.

Docker やコンテナーの基礎に関する入門情報については、「Docker overview」(Docker の概要) を参照してください。For a primer on Docker and container basics, see the Docker overview.

個々のコンテナーには、サーバーやメモリ割り当ての要件など、独自の要件もある場合があります。Individual containers can have their own requirements, as well, including server and memory allocation requirements.

Azure Cognitive Services コンテナーのセキュリティAzure Cognitive Services container security

アプリケーションを開発するときは常にセキュリティを重視する必要があります。Security should be a primary focus whenever you're developing applications. セキュリティの重要性は成功の指標です。The importance of security is a metric for success. Cognitive Services コンテナーを含むソフトウェア ソリューションを設計する場合は、制限と使用できる機能を理解しておくことが重要です。When you're architecting a software solution that includes Cognitive Services containers, it's vital to understand the limitations and capabilities available to you. ネットワーク セキュリティの詳細については、「Azure Cognitive Services 仮想ネットワークを構成する」を参照してください。For more information about network security, see Configure Azure Cognitive Services virtual networks.


既定では、Cognitive Services コンテナー API に "セキュリティはありません"。By default there is no security on the Cognitive Services container API. この理由は、ほとんどの場合、ネットワーク ブリッジによって外部から保護されるポッドの一部としてコンテナーが実行されるためです。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. ただし、クラウドベースの Cognitive Services にアクセスするときに使用する認証と同じように動作する認証を有効にすることができます。However, it is possible to enable authentication which works identically to the authentication used when accessing the cloud-based Cognitive Services.

次の図は、セキュリティで保護されていない既定のアプローチを示しています。The diagram below illustrates the default and non-secure approach:


別の "セキュリティで保護された" アプローチとして、Cognitive Services コンテナーのコンシューマーでは、コンテナー エンドポイントを非公開に保ちながら、前面のコンポーネントを使用してコンテナーを補強できます。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. イングレス ゲートウェイとして Istio を使用するシナリオについて考えてみましょう。Let's consider a scenario where we use Istio as an ingress gateway. Istio では、HTTPS/TLS およびクライアント証明書の認証がサポートされます。Istio supports HTTPS/TLS and client-certificate authentication. このシナリオでは、Istio のフロントエンドでコンテナー アクセスが公開され、事前に Istio でホワイトリストに登録されているクライアント証明書が提示されています。In this scenario, the Istio frontend exposes the container access, presenting the client certificate that is whitelisted beforehand with Istio.

Nginx は、同じカテゴリにあるもう 1 つの一般的な選択肢です。Nginx is another popular choice in the same category. Istio と Nginx はどちらもサービス メッシュとして機能し、負荷分散、ルーティング、レート制御などの追加機能が提供されます。Both Istio and Nginx act as a service mesh and offer additional features including things like load-balancing, routing, and rate-control.

コンテナー ネットワークContainer networking

Cognitive Services コンテナーは、課金のために使用状況測定情報を送信する必要があります。The Cognitive Services containers are required to submit metering information for billing purposes. 唯一の例外は、オフライン コンテナーです。それらは、異なる課金方法に従っているからです。The only exception, is Offline containers as they follow a different billing methodology. Cognitive Services コンテナーが依存しているさまざまなネットワーク チャネルの一覧表示を許可しないと、コンテナーは動作しなくなります。Failure to allow list various network channels that the Cognitive Services containers rely on will prevent the container from working.

Cognitive Services のドメインとポートの一覧表示を許可するAllow list Cognitive Services domains and ports

ホストは、ポート 443 と次のドメインの一覧表示を許可する必要があります。The host should allow list port 443 and the following domains:

  • *
  • *

ディープ パケット インスペクションを無効にするDisable deep packet inspection

ディープ パケット インスペクション (DPI) は、コンピューター ネットワーク経由で送信されるデータを詳細に検査するデータ処理の一種であり、通常は、状況に応じてブロック、再ルーティング、またはログ記録を行うことによってアクションを実行します。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.

Cognitive Services コンテナーによって Microsoft サーバーに作成される、セキュリティで保護されたチャネルでは DPI を無効にします。Disable DPI on the secure channels that the Cognitive Services containers create to Microsoft servers. そうしないと、コンテナーは正しく機能しません。Failure to do so will prevent the container from functioning correctly.

ブログ記事Blog posts

開発者向けサンプルDeveloper samples

開発者向けサンプルは、GitHub リポジトリから入手できます。Developer samples are available at our GitHub repository.

ウェビナーの閲覧View webinar

ウェビナーに参加して、以下について学習します。Join the webinar to learn about:

  • Docker を使用して任意のマシンに Cognitive Services をデプロイする方法How to deploy Cognitive Services to any machine using Docker
  • Cognitive Services を AKS にデプロイする方法How to deploy Cognitive Services to AKS

次のステップNext steps

Cognitive Services で使用できるコンテナー レシピについて学習します。Learn about container recipes you can use with the Cognitive Services.

Azure Cognitive Services のコンテナーによって提供される機能をインストールして試してください。Install and explore the functionality provided by containers in Azure Cognitive Services: