Suporte para contentores nos serviços cognitivos do AzureContainer support in Azure Cognitive Services

Suporte para contentores nos serviços cognitivos do Azure permite aos desenvolvedores usar as mesmas APIs avançadas estão disponíveis no Azure e permite flexibilidade no onde implementar e hospedar os serviços que acompanham contentores do 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. Atualmente, o suporte a contêineres está disponível para um subconjunto de serviços cognitivas do Azure, incluindo partes do:Container support is currently available for a subset of Azure Cognitive Services, including parts of:

Contentorização é uma abordagem para distribuição de software em que uma aplicação ou serviço, incluindo suas dependências e a configuração, é empacotado em conjunto como uma imagem de contentor.Containerization is an approach to software distribution in which an application or service, including its dependencies & configuration, is packaged together as a container image. Com poucas ou nenhuma modificação, uma imagem de contentor pode ser implementada num anfitrião de contentor.With little or no modification, a container image can be deployed on a container host. Os contentores são isolados umas das outras e o sistema operacional subjacente, com requisitos de espaço mais pequenos do que uma máquina virtual.Containers are isolated from each other and the underlying operating system, with a smaller footprint than a virtual machine. Contentores podem ser instanciados a partir de imagens de contentor para tarefas de curta duração e removidos quando já não for necessário.Containers can be instantiated from container images for short-term tasks, and removed when no longer needed.

Os recursos de serviços cognitivas estão disponíveis em Microsoft Azure.Cognitive Services resources are available on Microsoft Azure. Inicie sessão para o portal do Azure para criar e explore os recursos do Azure para estes serviços.Sign into the Azure portal to create and explore Azure resources for these services.

Funcionalidades e benefíciosFeatures and benefits

  • Infraestrutura imutável: habilite as equipes do DevOps para aproveitar um conjunto consistente e confiável de parâmetros de sistema conhecidos, além de ser capaz de se adaptar a alterações.Immutable infrastructure: Enable DevOps teams' to leverage a consistent and reliable set of known system parameters, while being able to adapt to change. Os contêineres fornecem a flexibilidade para dinamizar em um ecossistema previsível e evitar descompassos de configuração.Containers provide the flexibility to pivot within a predictable ecosystem and avoid configuration drift.
  • Controlo sobre os dados: permitir aos clientes escolherem onde estes serviços cognitivos processa os dados.Control over data: Allow customers to choose where these Cognitive Services process their data. Isto é essencial para os clientes que não é possível enviar dados para a cloud, mas precisam de acesso à tecnologia de serviços cognitivos.This is essential for customers that cannot send data to the cloud but need access to Cognitive Services technology. Suporte a consistência em ambientes híbridos – entre dados, gerenciamento, identidade e segurança.Support consistency in hybrid environments – across data, management, identity, and security.
  • Controle sobre atualizações do modelo: fornecer aos clientes flexibilidade no controlo de versões e a atualização dos modelos implementados em suas soluções.Control over model updates: Provide customers flexibility in versioning and updating of models deployed in their solutions.
  • Arquitetura portátil: Ativar a criação de uma arquitetura de aplicativos portáteis que pode ser implementada no Azure, no local e o limite.Portable architecture: Enable the creation of a portable application architecture that can be deployed on Azure, on-premises and the edge. Contentores podem ser implementados diretamente à serviço Kubernetes do Azure, Azure Container Instances, ou uma Kubernetes cluster implementado para Azure Pilha.Containers can be deployed directly to Azure Kubernetes Service, Azure Container Instances, or to a Kubernetes cluster deployed to Azure Stack. Para obter mais informações, consulte implementar o Kubernetes no Azure Stack.For more information, see Deploy Kubernetes to Azure Stack.
  • Alto débito / baixa latência: fornecer aos clientes a capacidade de dimensionar para um débito elevado e requisitos de baixa latência, permitindo que os serviços cognitivos executar fisicamente perto dos seus dados e lógica do aplicativo.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. Os contentores não limite de transações por segundo (TPS) e podem ser feitos para aumentar verticalmente e horizontalmente para lidar com a pedido, se fornecer os recursos de hardware necessários.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.
  • Escalabilidade: com a popularidade cada vez maior de contêineres e software de orquestração de contêiner, como kubernetes; a escalabilidade está no Forefront de avanços tecnológicos.Scalability: With the ever growing popularity of containerization and container orchestration software, such as Kubernetes; scalability is at the forefront of technological advancements. Criando uma base de cluster escalonável, o desenvolvimento de aplicativos atende à alta disponibilidade.Building on a scalable cluster foundation, application development caters to high availability.

Contentores nos serviços cognitivos do AzureContainers in Azure Cognitive Services

Contentores de serviços cognitivos do Azure fornecem o seguinte conjunto de contentores do Docker, cada um deles contendo um subconjunto da funcionalidade dos serviços nos serviços cognitivos do Azure: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:

ServiçoService Tipo de preço com suporteSupported Pricing Tier ContentorContainer DescriçãoDescription
Detetor de anomaliasAnomaly detector F0, S0F0, S0 Detector de anomaliasAnomaly-Detector A API do detector de anomalias permite que você monitore e detecte anormalidades em seus dados de série temporal com o aprendizado de máquina.The Anomaly Detector API enables you to monitor and detect abnormalities in your time series data with machine learning.
Pedir acessoRequest access
Imagem DigitalizadaComputer Vision F0, S1F0, S1 LeituraRead Extrai texto impresso partir de imagens de vários objetos com diferentes superfícies e fundos, como recibos, pôsteres e cartões de visita.Extracts printed text from images of various objects with different surfaces and backgrounds, such as receipts, posters, and business cards. O contêiner de leitura também detecta texto manuscrito em imagens e fornece suporte a PDF/TIFF/várias páginas.The Read container also detects handwritten text in images and provides PDF/TIFF/multi-page support.

Importante: O contêiner de leitura atualmente funciona apenas com o inglês.Important: The Read container currently works only with English.
FaceFace F0, S0F0, S0 FaceFace Deteta rostos humanos em imagens e identifica os atributos, incluindo pontos de referência do rosto (como noses e olhos), sexo, idade e outras funcionalidades faciais prevista de máquina.Detects human faces in images, and identifies attributes, including face landmarks (such as noses and eyes), gender, age, and other machine-predicted facial features. Além de deteção, Face pode verificar se dois rostos na mesma imagem ou imagens diferentes são o mesmo com uma pontuação de confiança, ou comparam rostos em relação a uma base de dados para ver se um aspeto semelhante ou idêntica face já existe.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. Ele também pode organizar o rostos semelhantes em grupos, com as características de visual partilhadas.It can also organize similar faces into groups, using shared visual traits.
Pedir acessoRequest access
Reconhecedor de formulárioForm recognizer F0, S0F0, S0 Reconhecedor de formulárioForm Recognizer A compreensão de formulário aplica a tecnologia de aprendizado de máquina para identificar e extrair pares de chave-valor e tabelas de formulários.Form Understanding applies machine learning technology to identify and extract key-value pairs and tables from forms.
Pedir acessoRequest access
LUISLUIS F0, S0F0, S0 LUIS (imagem)LUIS (image) Carrega um modelo de compreensão de idiomas treinado ou publicado, também conhecido como uma aplicação LUIS, para um contentor do docker e fornece acesso para as previsões de consulta a partir de pontos finais de API do contentor.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. Pode recolher registos de consulta do contêiner e carregar esses anterior para o portal de LUIS para melhorar a exatidão da previsão da aplicação.You can collect query logs from the container and upload these back to the LUIS portal to improve the app's prediction accuracy.
API de Serviço de VozSpeech Service API F0, S0F0, S0 Conversão de voz em textoSpeech-to-text Transcreve voz em tempo real contínua para texto.Transcribes continuous real-time speech into text.
API de Serviço de VozSpeech Service API F0, S0F0, S0 Fala Personalizada para textoCustom Speech-to-text Transcreve a fala contínua em tempo real em texto usando um modelo personalizado.Transcribes continuous real-time speech into text using a custom model.
API de Serviço de VozSpeech Service API F0, S0F0, S0 Conversão de texto em vozText-to-speech Converte texto em voz com som natural.Converts text to natural-sounding speech.
API de Serviço de VozSpeech Service API F0, S0F0, S0 Conversão de texto em fala personalizadaCustom Text-to-speech Converte o texto em uma fala de som natural usando um modelo personalizado.Converts text to natural-sounding speech using a custom model.
Análise de TextoText Analytics F0, SF0, S Extração de expressões chave (imagem)Key Phrase Extraction (image) Extrai as expressões-chave para identificar os pontos principais.Extracts key phrases to identify the main points. Por exemplo, para o texto de entrada “The food was delicious and there were wonderful staff”, a API devolve os pontos de conversa principais: “food” e “wonderful staff”.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".
Análise de TextoText Analytics F0, SF0, S Deteção de idioma (imagem)Language Detection (image) Para até 120 idiomas, Deteta que o texto de entrada é escrito em idioma e o relatório um código de idioma único para cada documento enviado no pedido.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. O código de idioma é emparelhado com uma pontuação que indica a força da pontuação.The language code is paired with a score indicating the strength of the score.
Análise de TextoText Analytics F0, SF0, S Análise de sentimentos (imagem)Sentiment Analysis (image) Analisa o texto não processado para dicas sobre o sentimento positivo ou negativo.Analyzes raw text for clues about positive or negative sentiment. Esta API devolve uma pontuação de sentimento entre 0 e 1 para cada documento, em que 1 é o mais positivo.This API returns a sentiment score between 0 and 1 for each document, where 1 is the most positive. Os modelos de análise previamente são treinados com um corpo extenso de tecnologias de texto e de linguagem natural da Microsoft.The analysis models are pre-trained using an extensive body of text and natural language technologies from Microsoft. Para os idiomas selecionados, a API pode analisar e classificar qualquer texto não processado que fornecer, devolvendo diretamente os resultados à aplicação de chamada.For selected languages, the API can analyze and score any raw text that you provide, directly returning results to the calling application.

Além disso, alguns contêineres têm suporte em chaves de recurso de oferta de serviços cognitivas All-in-One .In addition, some containers are supported in Cognitive Services All-In-One offering resource keys. Você pode criar um único recurso All-in-One de serviços cognitivas e usar a mesma chave de cobrança entre os serviços com suporte para os seguintes serviços:You can create one single Cognitive Services All-In-One resource and use the same billing key across supported services for the following services:

  • Imagem DigitalizadaComputer Vision
  • RostosFace
  • LUISLUIS
  • Análise de TextoText Analytics

Disponibilidade de contentor nos serviços cognitivos do AzureContainer availability in Azure Cognitive Services

Contentores de serviços cognitivos do Azure estão publicamente disponíveis através da sua subscrição do Azure e imagens de contentor do Docker podem ser extraídas do registo de contentor da Microsoft ou o 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. Pode utilizar o solicitação docker comando para transferir uma imagem de contentor do registo adequado.You can use the docker pull command to download a container image from the appropriate registry.

Importante

No momento, você deve concluir um processo de inscrição para acessar os seguintes contêineres, nos quais você preenche e envia um questionário com perguntas sobre você, sua empresa e o caso de uso para o qual você deseja implementar os contêineres.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. Depois de receber o acesso e as credenciais fornecidas, você pode extrair as imagens de contêiner de um registro de contêiner privado hospedado pelo registro de contêiner do Azure.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.

Repositórios e imagens de contêinerContainer repositories and images

As tabelas a seguir são uma lista das imagens de contêiner disponíveis oferecidas pelos serviços cognitivas do Azure.The tables below are a listing of the available container images offered by Azure Cognitive Services. Para obter uma lista completa de todos os nomes de imagem de contêiner disponíveis e suas marcas disponíveis, consulte marcas de imagem de contêiner de serviços cognitivas.For a complete list of all the available container image names and their available tags, see Cognitive Services container image tags.

"Não restrito" público (registro de contêiner: mcr.microsoft.com)Public "Ungated" (container registry: mcr.microsoft.com)

O MCR (registro de contêiner da Microsoft) distribui todos os contêineres "não restritos" publicamente disponíveis para serviços cognitivas.The Microsoft Container Registry (MCR) syndicates all of the publicly available "ungated" containers for Cognitive Services. Eles também estão disponíveis diretamente do Hub do Docker.They are also available directly from the Docker hub.

ServiçoService ContentorContainer Registro de contêiner/repositório/nome da imagemContainer Registry / Repository / Image Name
LUISLUIS LUISLUIS mcr.microsoft.com/azure-cognitive-services/luis
Análise de TextoText Analytics Extração de Expressões-ChaveKey Phrase Extraction mcr.microsoft.com/azure-cognitive-services/keyphrase
Análise de TextoText Analytics Deteção de IdiomaLanguage Detection mcr.microsoft.com/azure-cognitive-services/language
Análise de TextoText Analytics Análise de SentimentosSentiment Analysis mcr.microsoft.com/azure-cognitive-services/sentiment

Visualização pública "restrita" (registro de contêiner: containerpreview.azurecr.io)Public "Gated" Preview (container registry: containerpreview.azurecr.io)

O registro de visualização de contêiner hospeda todos os contêineres "restritos" publicamente disponíveis para serviços cognitivas.The Container Preview registry hosts all of the publicly available "gated" containers for Cognitive Services. Esses contêineres exigem uma solicitação formal para acesso a fim de consumi-los.These containers require a formal request for access in order to consume them.

ServiçoService ContentorContainer Registro de contêiner/repositório/nome da imagemContainer Registry / Repository / Image Name
Detetor de anomaliasAnomaly detector Detetor de AnomaliasAnomaly Detector containerpreview.azurecr.io/microsoft/cognitive-services-anomaly-detector
Imagem DigitalizadaComputer Vision LeituraRead containerpreview.azurecr.io/microsoft/cognitive-services-read
FaceFace RostosFace containerpreview.azurecr.io/microsoft/cognitive-services-face
Reconhecedor de formulárioForm recognizer Reconhecedor de FormatoForm Recognizer containerpreview.azurecr.io/microsoft/cognitive-services-form-recognizer
API de Serviço de VozSpeech Service API Conversão de voz em textoSpeech-to-text containerpreview.azurecr.io/microsoft/cognitive-services-speech-to-text
API de Serviço de VozSpeech Service API Fala Personalizada para textoCustom Speech-to-text containerpreview.azurecr.io/microsoft/cognitive-services-custom-speech-to-text
API de Serviço de VozSpeech Service API Conversão de texto em vozText-to-speech containerpreview.azurecr.io/microsoft/cognitive-services-text-to-speech
API de Serviço de VozSpeech Service API Conversão de texto em fala personalizadaCustom Text-to-speech containerpreview.azurecr.io/microsoft/cognitive-services-custom-text-to-speech

Pré-requisitosPrerequisites

Tem de cumprir os seguintes pré-requisitos antes de utilizar contentores de serviços cognitivos do Azure:You must satisfy the following prerequisites before using Azure Cognitive Services containers:

Motor do docker: tem de ter o motor de Docker instalado localmente.Docker Engine: You must have Docker Engine installed locally. Docker disponibiliza pacotes que configurar o ambiente do Docker num macOS, Linux, e Windows.Docker provides packages that configure the Docker environment on macOS, Linux, and Windows. No Windows, o Docker tem de ser configurado para dar suporte a contentores do Linux.On Windows, Docker must be configured to support Linux containers. Também podem ser implementados diretamente para contentores do docker do Azure Kubernetes Service ou Azure Container Instances.Docker containers can also be deployed directly to Azure Kubernetes Service or Azure Container Instances.

Docker tem de ser configurado para permitir que os contentores para se ligar com e enviar dados de faturação para o Azure.Docker must be configured to allow the containers to connect with and send billing data to Azure.

Familiaridade com o registo de contentor da Microsoft e a Docker: deve ter um conhecimento básico dos conceitos de registo de contentor da Microsoft e a Docker, como registos, repositórios, contentores e imagens de contentor, bem como dados de conhecimento de básico docker comandos.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.

Para obter um manual sobre noções básicas do Docker e um contentor, consulte a descrição geral do Docker.For a primer on Docker and container basics, see the Docker overview.

Contentores individuais podem ter seus próprios requisitos, além disso, incluindo requisitos de alocação de memória e de servidor.Individual containers can have their own requirements, as well, including server and memory allocation requirements.

Segurança do contêiner de serviços cognitivas do AzureAzure Cognitive Services container security

A segurança deve ser um foco principal sempre que você estiver desenvolvendo aplicativos.Security should be a primary focus whenever you're developing applications. A importância da segurança é uma métrica para o sucesso.The importance of security is a metric for success. Quando você está arquitetando uma solução de software que inclui contêineres de serviços cognitivas, é vital entender as limitações e os recursos disponíveis para você.When you're architecting a software solution that includes Cognitive Services containers, it's vital to understand the limitations and capabilities available to you. Para obter mais informações sobre segurança de rede, consulte configurar redes virtuais de serviços cognitivas do Azure.For more information about network security, see Configure Azure Cognitive Services virtual networks.

Importante

Por padrão, não há nenhuma segurança na API do contêiner de serviços cognitivas.By default there is no security on the Cognitive Services container API. O motivo disso é que, na maioria das vezes, o contêiner será executado como parte de um pod que é protegido do exterior por uma ponte de rede.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. No entanto, é possível habilitar a autenticação que funciona de forma idêntica à autenticação usada ao acessar Serviços cognitivas baseados em nuvem.However, it is possible to enable authentication which works identically to the authentication used when accessing the cloud-based Cognitive Services.

O diagrama a seguir ilustra a abordagem padrão e não segura :The diagram below illustrates the default and non-secure approach:

Segurança do contentor

Como uma abordagem alternativa e segura , os consumidores de contêineres de serviços cognitivas poderiam aumentar um contêiner com um componente front-end, mantendo o ponto de extremidade do contêiner privado.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. Vamos considerar um cenário em que usamos İSTİO como um gateway de entrada.Let's consider a scenario where we use Istio as an ingress gateway. O İSTİO dá suporte a autenticação HTTPS/SSL e de certificado de cliente.Istio supports HTTPS/SSL and client-certificate authentication. Nesse cenário, o front-end İSTİO expõe o acesso ao contêiner, apresentando o certificado do cliente que está na lista de permissões antecipadamente com İSTİO.In this scenario, the Istio frontend exposes the container access, presenting the client certificate that is whitelisted beforehand with Istio.

Nginx é outra opção popular na mesma categoria.Nginx is another popular choice in the same category. İSTİO e Nginx atuam como uma malha de serviço e oferecem recursos adicionais, incluindo coisas como balanceamento de carga, roteamento e controle de taxa.Both Istio and Nginx act as a service mesh and offer additional features including things like load-balancing, routing, and rate-control.

Funcionamento em rede do contentorContainer networking

Os contêineres de serviços cognitivas são necessários para enviar informações de medição para fins de cobrança.The Cognitive Services containers are required to submit metering information for billing purposes. A única exceção é os contêineres offline , pois eles seguem uma metodologia de cobrança diferente.The only exception, is Offline containers as they follow a different billing methodology. Falha ao permitir listar vários canais de rede dos quais os contêineres de serviços cognitivas dependem impedirão que o contêiner funcione.Failure to allow list various network channels that the Cognitive Services containers rely on will prevent the container from working.

Permitir listar domínios e portas de serviços cognitivasAllow list Cognitive Services domains and ports

O host deve permitir a porta de lista 443 e os seguintes domínios:The host should allow list port 443 and the following domains:

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

Desabilitar inspeção profunda de pacoteDisable deep packet inspection

A inspeção de pacotes profunda (DPI) é um tipo de processamento de dados que inspeciona em detalhes os dados que estão sendo enviados por uma rede de computadores e geralmente executa ações bloqueando, redirecionando ou registrando-os adequadamente.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.

Desabilite o DPI nos canais seguros que os contêineres de serviços cognitivas criam aos servidores da Microsoft.Disable DPI on the secure channels that the Cognitive Services containers create to Microsoft servers. Se não for feito, isso impedirá que o contêiner funcione corretamente.Failure to do so will prevent the container from functioning correctly.

Publicações no blogueBlog posts

Exemplos de programadorDeveloper samples

Exemplos de desenvolvedor estão disponíveis em nosso repositório GitHub.Developer samples are available at our GitHub repository.

Veja o webinarView webinar

Junte-se ao webinar para saber mais sobre:Join the webinar to learn about:

  • Como implantar serviços cognitivas em qualquer computador usando o DockerHow to deploy Cognitive Services to any machine using Docker
  • Como implantar serviços cognitivas no AKSHow to deploy Cognitive Services to AKS

Passos seguintesNext steps

Saiba mais sobre as receitas de contêiner que você pode usar com os serviços cognitivas.Learn about container recipes you can use with the Cognitive Services.

Instalar e explorar a funcionalidade fornecida pelo contentores nos serviços cognitivos do Azure:Install and explore the functionality provided by containers in Azure Cognitive Services: