Şirket içi dil algılama Docker kapsayıcılarını kullanma

Kapsayıcılar, Dil Algılama API'sini kendi altyapınızda barındırmanıza olanak tanır. Dil Algılama uzaktan çağrılarak karşılanabilen güvenlik veya veri idaresi gereksinimleriniz varsa kapsayıcılar iyi bir seçenek olabilir.

Önkoşullar

  • Azure aboneliğiniz yoksa ücretsiz bir hesap oluşturun.
  • Docker bir ana bilgisayara yüklendi. Docker, kapsayıcıların Azure'a bağlanmasına ve faturalama verileri göndermesine izin verecek şekilde yapılandırılmalıdır.
    • Windows'da Docker,Linux kapsayıcılarını destekleyecek şekilde de yapılandırılmalıdır.
    • Docker kavramları hakkında temel bilgilere sahip olmanız gerekir.
  • Ücretsiz (F0) veya standart (S) fiyatlandırma katmanıylaDil kaynağı.

Gerekli parametreleri toplama

Tüm Azure AI kapsayıcıları için üç birincil parametre gereklidir. Microsoft Yazılımı Lisans Koşulları kabul değeriyle birlikte mevcut olmalıdır. Uç Nokta URI'si ve API anahtarı da gereklidir.

Uç nokta URI'si

Bu değere {ENDPOINT_URI} karşılık gelen Azure AI hizmetleri kaynağının Azure portal Genel Bakış sayfasından ulaşabilirsiniz. Genel Bakış sayfasına gidin, uç noktanın üzerine gelin ve Panoya kopyala simgesi görüntülenir. Gerektiğinde uç noktayı kopyalayın ve kullanın.

Daha sonra kullanmak üzere uç nokta URI'sini toplamayı gösteren ekran görüntüsü.

Anahtarlar

{API_KEY} Değeri kapsayıcıyı başlatmak için kullanılır ve ilgili Azure AI hizmetleri kaynağının Azure portal Anahtarlar sayfasında bulunabilir. Anahtarlar sayfasına gidin ve Panoya kopyala simgesini seçin.

Daha sonra kullanmak üzere iki anahtardan birini almayı gösteren ekran görüntüsü.

Önemli

Bu abonelik anahtarları, Azure AI hizmetleri API'nize erişmek için kullanılır. Anahtarlarınızı paylaşmayın. Bunları güvenli bir şekilde depolayın. Örneğin Azure Key Vault kullanın. Ayrıca bu anahtarları düzenli olarak yeniden oluşturmanızı öneririz. API çağrısı yapmak için yalnızca bir anahtar gereklidir. İlk anahtarı yeniden oluştururken, hizmete sürekli erişim için ikinci anahtarı kullanabilirsiniz.

Konak bilgisayar gereksinimleri ve önerileri

Konak, Docker kapsayıcısını çalıştıran x64 tabanlı bir bilgisayardır. Şirket içi bir bilgisayar veya Azure'da Docker barındırma hizmeti olabilir, örneğin:

Aşağıdaki tabloda, dil algılama kapsayıcısı için en düşük ve önerilen belirtimler açıklanmaktadır. Her CPU çekirdeği en az 2,6 gigahertz (GHz) veya daha hızlı olmalıdır. İzin verilen Saniye Başına İşlem sayısı (TPS) de listelenir.

En düşük konak belirtimleri Önerilen konak özellikleri En Düşük TPS En Fazla TPS
Dil algılama 1 çekirdek, 2 GB bellek 1 çekirdek, 4 GB bellek 15 30

CPU çekirdeği ve bellek, komutun --cpus bir parçası olarak kullanılan ve --memory ayarlarına docker run karşılık gelir.

ile kapsayıcı görüntüsünü alma docker pull

Dil Algılama kapsayıcı görüntüsü kapsayıcı kayıt defteri dağıtımında mcr.microsoft.com bulunabilir. Depo içinde azure-cognitive-services/textanalytics/ bulunur ve olarak adlandırılır language. Tam kapsayıcı görüntüsü adı şu şekildedir: mcr.microsoft.com/azure-cognitive-services/textanalytics/language

Kapsayıcının en son sürümünü kullanmak için etiketini kullanabilirsiniz latest . McR'de etiketlerin tam listesini de bulabilirsiniz.

docker pull Microsoft Container Registry'den bir kapsayıcı görüntüsü indirmek için komutunu kullanın.

docker pull mcr.microsoft.com/azure-cognitive-services/textanalytics/language:latest

İpucu

İndirilen kapsayıcı görüntülerinizi listelemek için docker images komutunu kullanabilirsiniz. Örneğin, aşağıdaki komut indirilen her kapsayıcı görüntüsünün kimliğini, deposunu ve etiketini tablo olarak biçimlendirilmiş olarak listeler:

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

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

Kapsayıcıyı ile çalıştırma docker run

Kapsayıcı ana bilgisayara yüklendikten sonra docker run komutunu kullanarak kapsayıcıları çalıştırın. Siz durdurana kadar kapsayıcı çalışmaya devam eder.

Önemli

  • Aşağıdaki bölümlerde yer alan docker komutları, satır devamlılığı karakteri olarak ters eğik çizgiyi \kullanır. Bunu ana bilgisayar işletim sisteminizin gereksinimlerine göre değiştirin veya kaldırın.
  • Kapsayıcıyı Eulaçalıştırmak için , Billingve ApiKey seçenekleri belirtilmelidir; aksi takdirde kapsayıcı başlatılmaz. Daha fazla bilgi için bkz . Faturalama.

Dil Algılama kapsayıcısını çalıştırmak için aşağıdaki docker run komutu yürütür. Aşağıdaki yer tutucuları kendi değerlerinizle değiştirin:

Yer tutucu Değer Biçim veya örnek
{API_KEY} Dil kaynağınızın anahtarı. Bunu kaynağınızın Anahtar ve uç nokta sayfasında, Azure portal bulabilirsiniz. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{ENDPOINT_URI} Dil algılama API'sine erişmek için uç nokta. Bunu kaynağınızın Anahtar ve uç nokta sayfasında, Azure portal bulabilirsiniz. https://<your-custom-subdomain>.cognitiveservices.azure.com
docker run --rm -it -p 5000:5000 --memory 4g --cpus 1 \
mcr.microsoft.com/azure-cognitive-services/textanalytics/language \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Şu komut:

  • Kapsayıcı görüntüsünden Dil Algılama kapsayıcısı çalıştırır
  • Bir CPU çekirdeği ve 4 gigabayt (GB) bellek ayırır
  • TCP bağlantı noktası 5000'i kullanıma sunar ve kapsayıcı için sahte TTY ayırır
  • Kapsayıcı çıktıktan sonra otomatik olarak kaldırılır. Kapsayıcı görüntüsü ana bilgisayarda hala kullanılabilir.

Aynı konakta birden çok kapsayıcı çalıştırma

Kullanıma sunulan bağlantı noktalarıyla birden çok kapsayıcı çalıştırmak istiyorsanız, her kapsayıcıyı farklı bir kullanıma sunulan bağlantı noktasıyla çalıştırdığınızdan emin olun. Örneğin, ilk kapsayıcıyı 5000 numaralı bağlantı noktasında, ikinci kapsayıcıyı da 5001 numaralı bağlantı noktasında çalıştırın.

Bu kapsayıcıyı ve HOST üzerinde çalışan farklı bir Azure AI hizmetleri kapsayıcısını birlikte kullanabilirsiniz. Ayrıca, aynı Azure AI hizmetleri kapsayıcısının birden çok kapsayıcısını çalıştırabilirsiniz.

Kapsayıcının tahmin uç noktasını sorgulama

Kapsayıcı REST tabanlı sorgu tahmin uç noktası API’lerini sağlar.

Kapsayıcı API’leri için http://localhost:5000 konağını kullanın.

Kapsayıcının çalıştığını doğrulama

Kapsayıcının çalıştığını doğrulamanın çeşitli yolları vardır. Söz konusu kapsayıcının Dış IP adresini ve kullanıma sunulan bağlantı noktasını bulun ve sık kullandığınız web tarayıcısını açın. Kapsayıcının çalıştığını doğrulamak için aşağıdaki çeşitli istek URL'lerini kullanın. Burada listelenen örnek istek URL'leri şunlardır http://localhost:5000; ancak kapsayıcınız farklılık gösterebilir. Kapsayıcınızın Dış IP adresine ve kullanıma sunulan bağlantı noktasına bağlı olduğundan emin olun.

İstek URL’si Amaç
http://localhost:5000/ Kapsayıcı bir giriş sayfası sağlar.
http://localhost:5000/ready GET ile istenen bu URL, kapsayıcının modele yönelik bir sorguyu kabul etmeye hazır olduğuna ilişkin bir doğrulama sağlar. Bu istek Kubernetes canlılığı ve hazır olma yoklamaları için kullanılabilir.
http://localhost:5000/status GET ile de istenen bu URL, kapsayıcıyı başlatmak için kullanılan api anahtarının uç nokta sorgusuna neden olmadan geçerli olup olmadığını doğrular. Bu istek Kubernetes canlılığı ve hazır olma yoklamaları için kullanılabilir.
http://localhost:5000/swagger Kapsayıcı uç noktalar için tüm belgeleri ve bir de Deneyin özelliği sağlar. Bu özellik sayesinde, ayarlarınızı web tabanlı bir HTML formuna girebilir ve herhangi bir kod yazmak zorunda kalmadan sorguyu yapabilirsiniz. Sorgu döndürdüğünde, gerekli HTTP üst bilgilerini ve gövde biçimini göstermek için örnek bir CURL komutu sağlanır.

Kapsayıcının giriş sayfası

İnternet bağlantısı kesilmiş kapsayıcıyı çalıştırma

İnternet bağlantısı kesilmiş bu kapsayıcıyı kullanmak için, önce bir uygulamayı doldurarak ve bir taahhüt planı satın alarak erişim istemeniz gerekir. Daha fazla bilgi için bkz. Bağlantısız ortamlarda Docker kapsayıcılarını kullanma .

İnternet bağlantısı kesilmiş kapsayıcıyı çalıştırmanız onaylandıysa, aşağıdaki örnekte kullanacağınız komutun yer tutucu değerleriyle birlikte biçimlendirmesi docker run gösterilir. Bu yer tutucu değerlerini kendi değerlerinizle değiştirin.

DownloadLicense=True Komutunuzdaki docker run parametre, Docker kapsayıcınızın İnternet'e bağlı olmadığında çalışmasını sağlayacak bir lisans dosyası indirir. Ayrıca, lisans dosyasının kapsayıcıyı çalıştırmak için geçersiz olacağı bir son kullanma tarihi de içerir. Lisans dosyasını yalnızca onayladığınız uygun kapsayıcıyla kullanabilirsiniz. Örneğin, Belge Yönetim Bilgileri kapsayıcısı olan bir konuşmayı metne dönüştürme kapsayıcısı için lisans dosyası kullanamazsınız.

Yer tutucu Değer Biçim veya örnek
{IMAGE} Kullanmak istediğiniz kapsayıcı görüntüsü. mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice
{LICENSE_MOUNT} Lisansın indirileceği ve bağlanacağı yol. /host/license:/path/to/license/directory
{ENDPOINT_URI} Hizmet isteğinizin kimliğini doğrulamak için uç nokta. Bunu kaynağınızın Anahtar ve uç nokta sayfasında, Azure portal bulabilirsiniz. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API_KEY} Metin Analizi kaynağınızın anahtarı. Bunu kaynağınızın Anahtar ve uç nokta sayfasında, Azure portal bulabilirsiniz. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{CONTAINER_LICENSE_DIRECTORY} Kapsayıcının yerel dosya sistemindeki lisans klasörünün konumu. /path/to/license/directory
docker run --rm -it -p 5000:5000 \ 
-v {LICENSE_MOUNT} \
{IMAGE} \
eula=accept \
billing={ENDPOINT_URI} \
apikey={API_KEY} \
DownloadLicense=True \
Mounts:License={CONTAINER_LICENSE_DIRECTORY} 

Lisans dosyası indirildikten sonra, kapsayıcıyı bağlantısı kesilmiş bir ortamda çalıştırabilirsiniz. Aşağıdaki örnek, kullanacağınız komutun docker run yer tutucu değerleriyle biçimlendirmesini gösterir. Bu yer tutucu değerlerini kendi değerlerinizle değiştirin.

Kapsayıcı nerede çalıştırılırsa çalıştırılsın, lisans dosyası kapsayıcıya bağlanmalıdır ve lisans klasörünün kapsayıcının yerel dosya sistemindeki konumu ile Mounts:License=belirtilmelidir. Faturalama kullanım kayıtlarının yazılabilmesi için bir çıkış bağlaması da belirtilmelidir.

Yer tutucu Değer Biçim veya örnek
{IMAGE} Kullanmak istediğiniz kapsayıcı görüntüsü. mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice
{MEMORY_SIZE} Kapsayıcınız için ayrılacak uygun bellek boyutu. 4g
{NUMBER_CPUS} Kapsayıcınız için ayrılacak uygun CPU sayısı. 4
{LICENSE_MOUNT} Lisansın bulunacağı ve bağlanacağı yol. /host/license:/path/to/license/directory
{OUTPUT_PATH} Kullanım kayıtlarını günlüğe kaydetmeye yönelik çıkış yolu. /host/output:/path/to/output/directory
{CONTAINER_LICENSE_DIRECTORY} Kapsayıcının yerel dosya sistemindeki lisans klasörünün konumu. /path/to/license/directory
{CONTAINER_OUTPUT_DIRECTORY} Kapsayıcının yerel dosya sistemindeki çıkış klasörünün konumu. /path/to/output/directory
docker run --rm -it -p 5000:5000 --memory {MEMORY_SIZE} --cpus {NUMBER_CPUS} \ 
-v {LICENSE_MOUNT} \ 
-v {OUTPUT_PATH} \
{IMAGE} \
eula=accept \
Mounts:License={CONTAINER_LICENSE_DIRECTORY}
Mounts:Output={CONTAINER_OUTPUT_DIRECTORY}

Kapsayıcıyı durdurma

Kapsayıcıyı kapatmak için, kapsayıcının çalıştığı komut satırı ortamında Ctrl+C tuşlarını seçin.

Sorun giderme

Kapsayıcıyı bir çıkış bağlaması ve günlüğe kaydetme etkin olarak çalıştırırsanız kapsayıcı, kapsayıcıyı başlatırken veya çalıştırırken karşılaşılan sorunları gidermeye yardımcı olan günlük dosyaları oluşturur.

İpucu

Daha fazla sorun giderme bilgisi ve rehberlik için bkz. Azure AI kapsayıcıları hakkında sık sorulan sorular (SSS).

Faturalama

Dil algılama kapsayıcıları, Azure hesabınızdaki bir Dil kaynağını kullanarak faturalama bilgilerini Azure'a gönderir.

Kapsayıcıya yönelik sorgular, parametre için kullanılan Azure kaynağının fiyatlandırma katmanında ApiKey faturalandırılır.

Azure AI hizmetleri kapsayıcıları, ölçüm veya faturalama uç noktasına bağlanmadan çalıştırılma lisansına sahip değildir. Kapsayıcıların faturalama bilgilerini faturalama uç noktasıyla her zaman iletmesini etkinleştirmeniz gerekir. Azure AI hizmetleri kapsayıcıları, analiz edilen görüntü veya metin gibi müşteri verilerini Microsoft'a göndermez.

Azure'a Bağlanma

Kapsayıcının çalışması için faturalama bağımsız değişkeni değerleri gerekir. Bu değerler kapsayıcının faturalama uç noktasına bağlanmasına olanak sağlar. Kapsayıcı yaklaşık 10-15 dakikada bir kullanımı bildirir. Kapsayıcı izin verilen zaman penceresi içinde Azure'a bağlanmazsa, kapsayıcı çalışmaya devam eder ancak faturalama uç noktası geri yüklenene kadar sorgu sunmaz. Bağlantı 10 ile 15 dakika aynı zaman aralığında 10 kez denenir. 10 denemede faturalama uç noktasına bağlanamazsa kapsayıcı isteklerin sunulmasını durdurur. Faturalama için Microsoft'a gönderilen bilgilerin bir örneği için bkz. Azure AI hizmetleri kapsayıcısı hakkında SSS .

Faturalama bağımsız değişkenleri

Aşağıdaki docker run seçeneklerin üçü de geçerli değerlerle sağlandığında komut kapsayıcıyı başlatır:

Seçenek Açıklama
ApiKey Faturalama bilgilerini izlemek için kullanılan Azure AI hizmetleri kaynağının API anahtarı.
Bu seçeneğin değeri, içinde Billingbelirtilen sağlanan kaynak için bir API anahtarına ayarlanmalıdır.
Billing Faturalama bilgilerini izlemek için kullanılan Azure AI hizmetleri kaynağının uç noktası.
Bu seçeneğin değeri, sağlanan bir Azure kaynağının uç nokta URI'sine ayarlanmalıdır.
Eula Kapsayıcının lisansını kabul ettiğinizi gösterir.
Bu seçeneğin değeri kabul edilecek şekilde ayarlanmalıdır.

Bu seçenekler hakkında daha fazla bilgi için bkz. Kapsayıcıları yapılandırma.

Özet

Bu makalede, dil algılama kapsayıcılarını indirme, yükleme ve çalıştırmaya yönelik kavramları ve iş akışını öğrendiniz. Özet:

  • Dil algılama, Docker için Linux kapsayıcıları sağlar
  • Kapsayıcı görüntüleri Microsoft Container Registry'den (MCR) indirilir.
  • Kapsayıcı görüntüleri Docker'da çalışır.
  • Kapsayıcı örneği oluştururken faturalama bilgilerini belirtmeniz gerekir.

Önemli

Bu kapsayıcı, ölçüm için Azure'a bağlanmadan çalıştırılmak üzere lisanslanmaz. Müşterilerin, kapsayıcıların faturalama bilgilerini ölçüm hizmetiyle her zaman iletmesini sağlaması gerekir. Azure AI kapsayıcıları müşteri verilerini (örneğin analiz edilen metinler) Microsoft'a göndermez.

Sonraki adımlar