Yüz kapsayıcıları yükleyip çalıştırmaInstall and run Face containers

Azure bilişsel hizmetler, resimlerde insan yüzlerini algılayan, Docker için standartlaştırılmış bir Linux kapsayıcısı sağlar.Azure Cognitive Services Face provides a standardized Linux container for Docker that detects human faces in images. Ayrıca, Noi 'ler ve gözler, cinsiyet, yaş ve diğer makine tarafından öngörülen yüz özellikleri gibi yüz başlıkları dahil olmak üzere öznitelikleri tanımlar.It also identifies attributes, which include face landmarks such as noses and eyes, gender, age, and other machine-predicted facial features. Algılamanın yanı sıra, aynı görüntüde veya farklı resimlerde iki yüzün aynı olup olmadığını, Güvenirlik puanı kullanılarak kontrol edebilir.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. Yüz Ayrıca, benzer bir veya aynı yüzün zaten mevcut olup olmadığını görmek için yüzleri bir veritabanıyla karşılaştırabilir.Face also can compare faces against a database to see if a similar-looking or identical face already exists. Ayrıca, paylaşılan görsel nitelikleri kullanarak benzer yüzeyleri gruplar halinde düzenleyebilir.It also can organize similar faces into groups by using shared visual traits.

Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.If you don't have an Azure subscription, create a free account before you begin.

ÖnkoşullarPrerequisites

Yüz Tanıma API'si kapsayıcılarını kullanmadan önce aşağıdaki önkoşulları karşılamanız gerekir.You must meet the following prerequisites before you use the Face API containers.

GerekliRequired AmaçPurpose
Docker altyapısıDocker Engine Docker altyapısının bir ana bilgisayarayüklenmesi gerekir.The Docker Engine must be installed on a host computer. Docker, MacOS, Windowsve Linux'ta Docker ortamını yapılandıran paketler sağlar.Docker provides packages that configure the Docker environment on macOS, Windows, and Linux. Docker ve kapsayıcı temelleri hakkında bilgi için bkz: Docker'a genel bakış.For a primer on Docker and container basics, see the Docker overview.

Docker, kapsayıcılar ile bağlanma ve faturalama verileri Azure'a göndermek izin verecek şekilde yapılandırılmalıdır.Docker must be configured to allow the containers to connect with and send billing data to Azure.

Windows 'da Docker 'ın de Linux kapsayıcılarını destekleyecek şekilde yapılandırılması gerekir.On Windows, Docker also must be configured to support Linux containers.

Docker ile benzerlikFamiliarity with Docker Kayıt defterleri, depolar, kapsayıcılar ve kapsayıcı görüntüleri gibi Docker kavramlarının temel olarak anlaşılmasına ihtiyacınız vardır.You need a basic understanding of Docker concepts, such as registries, repositories, containers, and container images. Ayrıca temel docker komutlar hakkında bilgi sahibi olmanız gerekir.You also need knowledge of basic docker commands.
Yüz kaynağıFace resource Kapsayıcıyı kullanmak için şunları yapmanız gerekir:To use the container, you must have:

Bir Azure yüz kaynağı ve ilgili API anahtarı ve uç nokta URI 'si.An Azure Face resource and the associated API key and the endpoint URI. Her iki değer de kaynak için genel bakış ve anahtarlar sayfalarında kullanılabilir.Both values are available on the Overview and Keys pages for the resource. Kapsayıcının başlatılması gerekir.They're required to start the container.

{API_KEY} : Anahtarlar sayfasındaki kullanılabilir iki kaynak anahtardan biri{API_KEY}: One of the two available resource keys on the Keys page

{ENDPOINT_URI} : Genel bakış sayfasında belirtilen bitiş noktası{ENDPOINT_URI}: The endpoint as provided on the Overview page

Özel kapsayıcı kayıt defterine erişim isteğiRequest access to the private container registry

Doldurun ve gönderme Bilişsel hizmetler görüntü işleme kapsayıcıları istek formunu kapsayıcıya erişim istemek için.Fill out and submit the Cognitive Services Vision Containers Request form to request access to the container. Form, şirketiniz ve kapsayıcı kullanacağınız kullanıcı senaryosu hakkında bilgi ister.The form requests information about you, your company, and the user scenario for which you'll use the container. Siz formu gönderdikten sonra Azure Bilişsel hizmetler takım özel kapsayıcı kayıt defterine erişim için ölçütleri karşıladığından emin olmak için gözden geçirir.After you submit the form, the Azure Cognitive Services team reviews it to make sure that you meet the criteria for access to the private container registry.

Önemli

Bir Microsoft hesabı (MSA) ya da biçiminde bir Azure Active Directory (Azure AD) hesabı ile ilişkili bir e-posta adresi kullanmanız gerekir.You must use an email address associated with either a Microsoft Account (MSA) or an Azure Active Directory (Azure AD) account in the form.

İsteğiniz onaylandı, kimlik bilgilerinizi edinme ve özel kapsayıcı kayıt defterine erişim açıklayan yönergeler içeren bir e-posta alırsınız.If your request is approved, you receive an email with instructions that describe how to obtain your credentials and access the private container registry.

Özel kapsayıcı kayıt defteri oturum açmaLog in to the private container registry

Bilişsel hizmetler, kapsayıcılar için özel kapsayıcı kayıt defteri ile kimlik doğrulaması yapmak için birkaç yol vardır.There are several ways to authenticate with the private container registry for Cognitive Services containers. Komut satırı yöntemini kullanarak kullanmanızı öneririz Docker CLI.We recommend that you use the command-line method by using the Docker CLI.

Kullanım docker oturum açma komutu, oturum açmak için aşağıdaki örnekte gösterildiği gibi containerpreview.azurecr.io, Bilişsel hizmetler, kapsayıcılar için özel kapsayıcı kayıt defteri olduğu.Use the docker login command, as shown in the following example, to log in to containerpreview.azurecr.io, which is the private container registry for Cognitive Services containers. Değiştirin <kullanıcıadı> kullanıcı adıyla ve <parola> Azure'dan aldığınız kimlik bilgileri sağlanan parolayla Bilişsel Hizmetleri ekibi.Replace <username> with the user name and <password> with the password provided in the credentials you received from the Azure Cognitive Services team.

docker login containerpreview.azurecr.io -u <username> -p <password>

Bir metin dosyasındaki kimlik bilgilerinizi güvenli, bu dosyanın içeriğini bitiştirebilirsiniz docker login komutu.If you secured your credentials in a text file, you can concatenate the contents of that text file to the docker login command. Kullanım cat , aşağıdaki örnekte gösterildiği gibi komutu.Use the cat command, as shown in the following example. Değiştirin <passwordFile> parola içeren metin dosyası adı ve yolu.Replace <passwordFile> with the path and name of the text file that contains the password. Değiştirin <kullanıcıadı> kimlik bilgilerinizi sağlanan kullanıcı adı.Replace <username> with the user name provided in your credentials.

cat <passwordFile> | docker login containerpreview.azurecr.io -u <username> --password-stdin

Ana bilgisayarThe host computer

Konak, Docker kapsayıcısı çalıştıran bir x64 tabanlı bir bilgisayardır.The host is a x64-based computer that runs the Docker container. Bir bilgisayarda şirket içinde veya azure'da Docker barındırma hizmeti gibi olabilir:It can be a computer on your premises or a Docker hosting service in Azure, such as:

Kapsayıcı gereksinimleri ve önerileriContainer requirements and recommendations

Aşağıdaki tabloda, her bir Yüz Tanıma API'si kapsayıcısı için ayrılacak minimum ve önerilen CPU çekirdekleri ve bellek açıklanmaktadır.The following table describes the minimum and recommended CPU cores and memory to allocate for each Face API container.

KapsayıcıContainer MinimumMinimum ÖnerilenRecommended Saniye başına işlemTransactions per second
(En düşük, en yüksek)(Minimum, maximum)
YüzFace 1 çekirdek, 2 GB bellek1 core, 2-GB memory 1 çekirdek, 4 GB bellek1 core, 4-GB memory 10, 2010, 20
  • Her çekirdek en az 2,6 GHz veya daha hızlı olmalıdır.Each core must be at least 2.6 GHz or faster.
  • Saniyedeki işlem sayısı (TPS).Transactions per second (TPS).

Çekirdek ve bellek, --cpus docker run komutunun bir parçası --memory olarak kullanılan ve ayarlarına karşılık gelir.Core and memory correspond to the --cpus and --memory settings, which are used as part of the docker run command.

docker pull kapsayıcı görüntüsünü alGet the container image with docker pull

Yüz Tanıma API'si için kapsayıcı görüntüleri kullanılabilir.Container images for the Face API are available.

KapsayıcıContainer HavuzRepository
YüzFace containerpreview.azurecr.io/microsoft/cognitive-services-face:latest

İpucu

Kullanabileceğiniz docker görüntüleri indirilen kapsayıcı görüntülerinizi listelemek için komutu.You can use the docker images command to list your downloaded container images. Örneğin, aşağıdaki komut kimliği, havuz ve tablo olarak biçimlendirilmiş her indirilen kapsayıcı görüntüsünün etiketi listeler:For example, the following command lists the ID, repository, and tag of each downloaded container image, formatted as a table:

docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"

IMAGE ID         REPOSITORY                TAG
<image-id>       <repository-path/name>    <tag-name>

Yüz kapsayıcısı için Docker çekmeDocker pull for the Face container

docker pull containerpreview.azurecr.io/microsoft/cognitive-services-face:latest

Kapsayıcıyı kullanmaUse the container

Kapsayıcı ana bilgisayarüzerinde olduktan sonra, kapsayıcında çalışmak için aşağıdaki işlemi kullanın.After the container is on the host computer, use the following process to work with the container.

  1. Kapsayıcıyı gerekli faturalandırma ayarlarıyla çalıştırın.Run the container with the required billing settings. docker run Komuta daha fazla örnek kullanılabilir.More examples of the docker run command are available.
  2. Kapsayıcının tahmin uç noktasını sorgulayın.Query the container's prediction endpoint.

Kapsayıcıyı Docker Run ile çalıştırmaRun the container with docker run

Üç kapsayıcının herhangi birini çalıştırmak için Docker Run komutunu kullanın.Use the docker run command to run any of the three containers. Komut aşağıdaki parametreleri kullanır.The command uses the following parameters.

Yer tutucuPlaceholder DeğerValue
{API_KEY}{API_KEY} Bu anahtar, kapsayıcıyı başlatmak için kullanılır ve Azure Cognitive Services anahtarları sayfasında kullanılabilir.This key is used to start the container and is available on the Azure Cognitive Services Keys page.
{ENDPOINT_URI}{ENDPOINT_URI} Faturalandırma uç noktası URI değeri, Azure Cognitive Services genel bakış sayfasında bulunur.The billing endpoint URI value is available on the Azure Cognitive Services Overview page. https://westus.api.cognitive.microsoft.com/face/v1.0 bunun bir örneğidir.An example is https://westus.api.cognitive.microsoft.com/face/v1.0.

Önceki ENDPOINT_URI örneğinde gösterildiği gibi, yönlendirmeyiuçnoktaURI'sineekleyin.face/v1.0Add the face/v1.0 routing to the endpoint URI, as shown in the preceding ENDPOINT_URI example.

Bu parametreleri aşağıdaki docker run komut örneğinde kendi değerlerinizle değiştirin:Replace these parameters with your own values in the following docker run command example:

docker run --rm -it -p 5000:5000 --memory 4g --cpus 1 \
containerpreview.azurecr.io/microsoft/cognitive-services-face \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Bu komut:This command:

  • Kapsayıcı görüntüsünden bir yüz kapsayıcısı çalıştırır.Runs a face container from the container image.
  • Bir CPU çekirdeği ve 4 GB bellek ayırır.Allocates one CPU core and 4 GB of memory.
  • TCP bağlantı noktası 5000 ' i gösterir ve kapsayıcı için bir sahte TTY ayırır.Exposes TCP port 5000 and allocates a pseudo TTY for the container.
  • Kapsayıcıyı çıktıktan sonra otomatik olarak kaldırır.Automatically removes the container after it exits. Kapsayıcı görüntüsü hala ana bilgisayarda kullanılabilir.The container image is still available on the host computer.

docker run Komuta daha fazla örnek kullanılabilir.More examples of the docker run command are available.

Önemli

Kapsayıcıyı çalıştırmak Billingiçin ApiKey ,, ve seçenekleri belirtilmelidir, aksi olarak kapsayıcı başlamamalıdır. EulaThe Eula, Billing, and ApiKey options must be specified to run the container or the container won't start. Daha fazla bilgi için faturalama.For more information, see Billing.

Aynı ana bilgisayarda birden çok kapsayıcı çalıştırmaRun multiple containers on the same host

Kullanıma sunulan bağlantı noktası olan birden çok kapsayıcı çalıştırmak istiyorsanız, her kapsayıcı farklı bir kullanıma sunulan bağlantı noktası ile çalıştırmak emin olun.If you intend to run multiple containers with exposed ports, make sure to run each container with a different exposed port. Örneğin, ilk kapsayıcı bağlantı noktası 5000 ve ikinci kapsayıcıyı 5001 bağlantı noktası üzerinde çalıştırın.For example, run the first container on port 5000 and the second container on port 5001.

Bu kapsayıcı ve KONAKTA birlikte çalışan farklı Azure Bilişsel hizmetler kapsayıcı olabilir.You can have this container and a different Azure Cognitive Services container running on the HOST together. Aynı Bilişsel hizmetler kapsayıcıyı, birden çok kapsayıcı da olabilir.You also can have multiple containers of the same Cognitive Services container running.

Kapsayıcının tahmin uç noktasını sorgulamaQuery the container's prediction endpoint

Kapsayıcı, REST tabanlı sorgu tahmin uç noktası API 'Leri sağlar.The container provides REST-based query prediction endpoint APIs.

Kapsayıcı API 'leri için https://localhost:5000Konağı kullanın.Use the host, https://localhost:5000, for container APIs.

Bir kapsayıcının çalıştırıldığını doğrulaValidate that a container is running

Kapsayıcının çalışır durumda olduğunu doğrulamak için birkaç yolu vardır.There are several ways to validate that the container is running.

İstekRequest AmaçPurpose
http://localhost:5000/ Kapsayıcı, bir giriş sayfası sağlar.The container provides a home page.
http://localhost:5000/status Bir uç nokta sorgu neden olmadan kapsayıcının çalışır durumda olduğunu doğrulamak için GET ile istedi.Requested with GET, to validate that the container is running without causing an endpoint query. Bu istek için Kubernetes kullanılabilir canlılık ve hazırlık araştırmaları.This request can be used for Kubernetes liveness and readiness probes.
http://localhost:5000/swagger Kapsayıcı uç noktaları için tam kümesi sağlar ve bir Try it now özelliği.The container provides a full set of documentation for the endpoints and a Try it now feature. Bu özellik, web tabanlı bir HTML formuna ayarlarınızı girdikten ve herhangi bir kod yazmak zorunda kalmadan sorgunun sağlayın.With this feature, you can enter your settings into a web-based HTML form and make the query without having to write any code. Sorgunun döndürdüğü sonra HTTP üst bilgileri ve gövdesini biçiminde göstermek için gerekli olan bir örnek CURL komutu sağlanır.After the query returns, an example CURL command is provided to demonstrate the HTTP headers and body format that's required.

Kapsayıcının giriş sayfası

Kapsayıcıyı durdurStop the container

Burada kapsayıcı çalışıyor, komut satırı ortamında kapsayıcı kapatmaya seçin Ctrl + C.To shut down the container, in the command-line environment where the container is running, select Ctrl+C.

Sorun gidermeTroubleshooting

Kapsayıcıyı bir çıkış bağlaması ile çalıştırırsanız ve günlüğe kaydetme etkinse kapsayıcı, kapsayıcıyı başlatırken veya çalıştırırken oluşan sorunları gidermek için faydalı olan günlük dosyaları oluşturur.If you run the container with an output mount and logging is enabled, the container generates log files that are helpful to troubleshoot issues that happen while you start or run the container.

FaturalandırmaBilling

Yüz Tanıma API'si kapsayıcıları Azure hesabınızdaki bir Yüz Tanıma API'si kaynağını kullanarak faturalandırma bilgilerini Azure 'a gönderir.The Face API containers send billing information to Azure by using a Face API resource on your Azure account.

Kapsayıcıya sorguları için kullanılan bir Azure kaynak fiyatlandırma katmanını faturalandırılır <ApiKey>.Queries to the container are billed at the pricing tier of the Azure resource that's used for the <ApiKey>.

Azure Bilişsel hizmetler kapsayıcıları, kullanım ölçümü için fatura uç noktasına bağlı olmadan çalıştırmak için lisanslı değil.Azure Cognitive Services containers aren't licensed to run without being connected to the billing endpoint for metering. Kapsayıcılar, her zaman faturalandırma bilgileri fatura uç noktası ile iletişim kurmak etkinleştirmeniz gerekir.You must enable the containers to communicate billing information with the billing endpoint at all times. Bilişsel hizmetler kapsayıcıları analiz ediliyor, metin ve görüntü gibi müşteri verilerini Microsoft'a gönderme.Cognitive Services containers don't send customer data, such as the image or text that's being analyzed, to Microsoft.

Azure'a BağlanmaConnect to Azure

Kapsayıcıyı çalıştırmak için fatura bağımsız değişken değerlerini gerekir.The container needs the billing argument values to run. Bu değerler, fatura uç noktaya bağlanmak kapsayıcı sağlar.These values allow the container to connect to the billing endpoint. Kapsayıcı yaklaşık her 10 ila 15 dakika kullanım raporları.The container reports usage about every 10 to 15 minutes. Kapsayıcı izin verilen zaman penceresi içinde Azure'a bağlanamazsa kapsayıcı çalışmaya devam eder, ancak fatura uç noktayı geri yüklenene kadar sorgular görmese.If the container doesn't connect to Azure within the allowed time window, the container continues to run but doesn't serve queries until the billing endpoint is restored. Bağlantı 10 kez aynı zaman aralığında 10-15 dakika denenir.The connection is attempted 10 times at the same time interval of 10 to 15 minutes. Bağlantı kurulamıyor fatura uç nokta 10 içinde çalışır, kapsayıcı çalışmayı durdurur.If it can't connect to the billing endpoint within the 10 tries, the container stops running.

Faturalandırma bağımsız değişkenleriBilling arguments

İçin docker run kapsayıcı başlatmak için komut geçerli değerlerle şunlardan üçünü belirtilmesi gerekir:For the docker run command to start the container, all three of the following options must be specified with valid values:

SeçenekOption AçıklamaDescription
ApiKey Fatura bilgileri izlemek için kullanılan Bilişsel hizmetler kaynağı API anahtarı.The API key of the Cognitive Services resource that's used to track billing information.
Bu seçeneğin değeri, belirtilen sağlanan kaynak için bir API anahtarı ayarlanmalıdır Billing.The value of this option must be set to an API key for the provisioned resource that's specified in Billing.
Billing Bilişsel hizmetler kaynağın faturalandırma bilgileri izlemek için kullanılan uç nokta.The endpoint of the Cognitive Services resource that's used to track billing information.
Bu seçeneğin değeri, sağlanan bir Azure kaynak URI'sini uç noktasına ayarlamanız gerekir.The value of this option must be set to the endpoint URI of a provisioned Azure resource.
Eula Kapsayıcı lisansını kabul gösterir.Indicates that you accepted the license for the container.
Bu seçenek değeri ayarlanmalıdır kabul.The value of this option must be set to accept.

Bu seçenekler hakkında daha fazla bilgi için bkz. kapsayıcıları yapılandırma.For more information about these options, see Configure containers.

Blog yazılarıBlog posts

Geliştirici örnekleriDeveloper samples

Geliştirici Örnekleri kullanıma sunduğumuz GitHub deposu.Developer samples are available at our GitHub repository.

Web seminerini izleyinView webinar

Birleştirme Web Semineri hakkında bilgi edinmek için:Join the webinar to learn about:

  • Bilişsel hizmetler, Docker kullanan herhangi bir makineye dağıtmaHow to deploy Cognitive Services to any machine using Docker
  • Bilişsel hizmetler AKS'ye dağıtmaHow to deploy Cognitive Services to AKS

ÖzetSummary

Bu makalede, Yüz Tanıma API'si kapsayıcıları indirme, yükleme ve çalıştırma ile ilgili kavramları ve iş akışını öğrendiniz.In this article, you learned concepts and workflow for how to download, install, and run Face API containers. Özet:In summary:

  • Yüz Tanıma API'si, Docker için anahtar tümceciği ayıklama, dil algılama ve yaklaşım analizi sağlayan üç Linux kapsayıcısı sağlar.The Face API provides three Linux containers for Docker that provide key phrase extraction, language detection, and sentiment analysis.
  • Kapsayıcı görüntüleri Azure Container Registry indirilir.Container images are downloaded from the Azure Container Registry.
  • Docker kapsayıcı görüntüleri çalıştırın.Container images run in Docker.
  • Kapsayıcının ana bilgisayar URI 'sini belirterek Yüz Tanıma API'si kapsayıcılarındaki işlemleri çağırmak için REST API ya da SDK kullanabilirsiniz.You can use either the REST API or the SDK to call operations in Face API containers by specifying the host URI of the container.
  • Bir kapsayıcıyı örneklediğinizde faturalandırma bilgilerini belirtmeniz gerekir.You must specify billing information when you instantiate a container.

Önemli

Bilişsel hizmetler kapsayıcıları, ölçüm için Azure 'a bağlı kalmadan çalıştırılmak üzere lisanslanmaz.Cognitive Services containers aren't licensed to run without being connected to Azure for metering. Müşterilerin, ödeme bilgilerini her zaman ölçüm hizmeti ile iletmelerini sağlamak için kapsayıcıların etkinleştirilmesi gerekir.Customers must enable the containers to communicate billing information with the metering service at all times. Bilişsel hizmetler kapsayıcıları, müşteri verilerini (örneğin, çözümlenen resim veya metin gibi) Microsoft 'a göndermez.Cognitive Services containers don't send customer data, such as the image or text that's being analyzed, to Microsoft.

Sonraki adımlarNext steps