Şirket içi özetleme Docker kapsayıcılarını kullanma
Kapsayıcılar, Özetleme API'sini kendi altyapınızda barındırmanıza olanak tanır. Özetleme uzaktan çağrılarak karşılanamaz güvenlik veya veri idare gereksinimleriniz varsa kapsayıcılar iyi bir seçenek olabilir.
Ön koş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ına sahip bir Dil kaynağı. Bağlantısı kesilmiş kapsayıcılar için DC0 katmanı gereklidir.
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 {ENDPOINT_URI}
değere 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.
Anahtarlar
Bu {API_KEY}
değer kapsayıcıyı başlatmak için kullanılır ve ilgili Azure AI hizmetleri kaynağının Azure portalının Anahtarlar sayfasında kullanılabilir. Anahtarlar sayfasına gidin ve Panoya kopyala simgesini seçin.
Ö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 gerekir. İ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:
- Azure Kubernetes Service.
- Azure Container Instances.
- Azure Stack'e dağıtılan bir Kubernetes kümesi. Daha fazla bilgi için bkz . Kubernetes'i Azure Stack'e dağıtma.
Aşağıdaki tabloda özetleme kapsayıcısı becerileri için en düşük ve önerilen belirtimler açıklanmaktadır. Listelenen CPU/bellek birleşimleri 4000 belirteç girişi içindir (konuşma tüketimi aynı istekteki tüm yönlere yöneliktir).
Kapsayıcı Türü | Önerilen CPU çekirdeği sayısı | Önerilen bellek | Notlar |
---|---|---|---|
Özetleme CPU kapsayıcısı | 16 | 48 GB | |
Özetleme GPU kapsayıcısı | 2 | 24 GB | 16 GB VRAM ile Cuda 11.8'i destekleyen bir Nvidia GPU gerektirir. |
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
Özetleme kapsayıcı görüntüsü kapsayıcı kayıt defteri dağıtımında mcr.microsoft.com
bulunabilir. Depoda azure-cognitive-services/textanalytics/
bulunur ve olarak adlandırılır summarization
. Tam kapsayıcı görüntüsü adı şu şekildedir: mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization
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/summarization:cpu
CPU kapsayıcıları için,
docker pull mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:gpu
gpu kapsayıcıları için.
Bahşiş
İndirdiğiniz kapsayıcı görüntülerini 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>
Özetleme kapsayıcısı modellerini indirme
Özetleme kapsayıcısını çalıştırmanın bir önkoşulu, önce modelleri indirmektir. Bu, örnek olarak bir CPU kapsayıcı görüntüsü kullanılarak aşağıdaki komutlardan biri çalıştırılarak yapılabilir:
docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=ExtractiveSummarization billing={ENDPOINT_URI} apikey={API_KEY}
docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=AbstractiveSummarization billing={ENDPOINT_URI} apikey={API_KEY}
docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=ConversationSummarization billing={ENDPOINT_URI} apikey={API_KEY}
Kapsayıcı içindeki tüm modelleri yüklediğinden, aynı HOST_MODELS_PATH
içindeki tüm beceriler için modellerin HOST_MODELS_PATH
indirilmesi önerilmez. Bunun yapılması büyük miktarda bellek kullanır. Modeli yalnızca belirli HOST_MODELS_PATH
bir beceri için indirmeniz önerilir.
Modeller ve kapsayıcı arasındaki uyumluluğu sağlamak için, yeni bir görüntü sürümü kullanarak bir kapsayıcı oluşturduğunuzda kullanılan modelleri yeniden indirin. Bağlantısı kesilmiş bir kapsayıcı kullanılırken, modelleri indirdikten sonra lisansın yeniden indirilmesi gerekir.
Kapsayıcıyı ile çalıştırma docker run
Özetleme kapsayıcısı konak bilgisayarda olduğunda, kapsayıcıları çalıştırmak için aşağıdaki docker run
komutu kullanın. Kapsayıcı, siz durdurana kadar çalışmaya devam eder. Aşağıdaki yer tutucuları kendi değerlerinizle değiştirin:
Yer tutucu | Değer | Biçim veya örnek |
---|---|---|
{HOST_MODELS_PATH} | Docker'ın modeli kalıcı hale getirmek için kullandığı ana bilgisayar birimi bağlaması. | C:\SummarizationModel örneğinde c:\ sürücüsü konak makinede bulunur. |
{ENDPOINT_URI} | Özetleme API'sine erişmek için uç nokta. Kaynağınızın Anahtar ve uç nokta sayfasında, Azure portalında bulabilirsiniz. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{API_KEY} | Dil kaynağınızın anahtarı. Kaynağınızın Anahtar ve uç nokta sayfasında, Azure portalında bulabilirsiniz. | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
docker run -p 5000:5000 -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu eula=accept rai_terms=accept billing={ENDPOINT_URI} apikey={API_KEY}
Gpu kapsayıcısı çalıştırıyorsanız bunun yerine bu komutu kullanın.
docker run -p 5000:5000 --gpus all -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:gpu eula=accept rai_terms=accept billing={ENDPOINT_URI} apikey={API_KEY}
Makinede birden fazla GPU varsa değerini ile --gpus device={DEVICE_ID}
değiştirin--gpus all
.
Önemli
- Aşağıdaki bölümlerde yer alan docker komutları,
\
satır devamlılığı karakteri olarak ters eğik çizgi kullanır. Bunu konak işletim sisteminizin gereksinimlerine göre değiştirin veya kaldırın. - Kapsayıcıyı
Eula
çalıştırmak için ,Billing
verai_terms
ApiKey
seçenekleri belirtilmelidir; aksi takdirde kapsayıcı başlatılmaz. Daha fazla bilgi için bkz . Faturalama.
Şu komut:
- Kapsayıcı görüntüsünden bir Özetleme 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ırmayı planlıyorsanı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. Aynı Azure AI hizmetleri kapsayıcısının birden çok kapsayıcısını da ç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. Dış IP adresini ve söz konusu kapsayıcının 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 | Purpose |
---|---|
http://localhost:5000/ |
Kapsayıcı bir giriş sayfası sağlar. |
http://localhost:5000/ready |
GET ile istenen bu URL, kapsayıcının modele karşı sorgu kabul etmeye hazır olduğunu doğrulamayı 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 bir 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ürüldikten sonra, gerekli HTTP üst bilgilerini ve gövde biçimini göstermek için örnek bir CURL komutu sağlanır. |
İ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.
Kapsayıcının İnternet bağlantısı kesilmiş olarak çalıştırılması 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, Dil hizmetleri kapsayıcısıyla metin kapsayıcısına konuşma için lisans dosyası kullanamazsınız.
Özetleme bağlantısı kesilmiş kapsayıcı modellerini indirme
Özetleme kapsayıcısını çalıştırmanın bir önkoşulu, önce modelleri indirmektir. Bu, örnek olarak bir CPU kapsayıcı görüntüsü kullanılarak aşağıdaki komutlardan biri çalıştırılarak yapılabilir:
docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=ExtractiveSummarization billing={ENDPOINT_URI} apikey={API_KEY}
docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=AbstractiveSummarization billing={ENDPOINT_URI} apikey={API_KEY}
docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=ConversationSummarization billing={ENDPOINT_URI} apikey={API_KEY}
Kapsayıcı içindeki tüm modelleri yüklediğinden, aynı HOST_MODELS_PATH
içindeki tüm beceriler için modellerin HOST_MODELS_PATH
indirilmesi önerilmez. Bunun yapılması büyük miktarda bellek kullanır. Modeli yalnızca belirli HOST_MODELS_PATH
bir beceri için indirmeniz önerilir.
Modeller ve kapsayıcı arasındaki uyumluluğu sağlamak için, yeni bir görüntü sürümü kullanarak bir kapsayıcı oluşturduğunuzda kullanılan modelleri yeniden indirin. Bağlantısı kesilmiş bir kapsayıcı kullanılırken, modelleri indirdikten sonra lisansın yeniden indirilmesi gerekir.
Bağlantısı kesilmiş kapsayıcıyı ile çalıştırın docker run
Yer tutucu | Değer | Biçim veya örnek |
---|---|---|
{IMAGE} |
Kullanmak istediğiniz kapsayıcı görüntüsü. | mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu |
{LICENSE_MOUNT} |
Lisansın indirileceği ve bağlanacağı yol. | /host/license:/path/to/license/directory |
{HOST_MODELS_PATH} |
Modellerin indirildiği ve bağlandığı yol. | /host/models:/models |
{ENDPOINT_URI} |
Hizmet isteğinizin kimliğini doğrulamak için uç nokta. Kaynağınızın Anahtar ve uç nokta sayfasında, Azure portalında bulabilirsiniz. | https://<your-custom-subdomain>.cognitiveservices.azure.com |
{API_KEY} |
Metin Analizi kaynağınızın anahtarı. Kaynağınızın Anahtar ve uç nokta sayfasında, Azure portalında 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} \
-v {HOST_MODELS_PATH} \
{IMAGE} \
eula=accept \
rai_terms=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 kapsayıcının yerel dosya sistemindeki lisans klasörünün 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/textanalytics/summarization:cpu |
{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 |
{HOST_MODELS_PATH} |
Modellerin indirildiği ve bağlandığı yol. | /host/models:/models |
{OUTPUT_PATH} |
Kullanım kayıtlarını günlüğe kaydetmek için çı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 {HOST_MODELS_PATH} \
-v {OUTPUT_PATH} \
{IMAGE} \
eula=accept \
rai_terms=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ına basın.
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.
Bahşiş
Daha fazla sorun giderme bilgisi ve kılavuzu için bkz . Azure AI kapsayıcıları hakkında sık sorulan sorular (SSS).
Faturalama
Özetleme 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ğlı olmadan çalıştırılma lisansına sahip değildir. Faturalama bilgilerini faturalama uç noktasıyla her zaman iletmek için kapsayıcıları 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 penceresinde Azure'a bağlanmazsa, kapsayıcı çalışmaya devam eder ancak faturalama uç noktası geri yüklenene kadar sorgular 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ı SSS .
Faturalama bağımsız değişkenleri
Komut, docker run
aşağıdaki seçeneklerin üçü de geçerli değerlerle sağlandığında kapsayıcıyı başlatır:
Seçenek | Tanım |
---|---|
ApiKey |
Faturalama bilgilerini izlemek için kullanılan Azure AI hizmetleri kaynağının API anahtarı. Bu seçeneğin değeri, içinde belirtilen sağlanan kaynak için bir API anahtarına Billing 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 özetleme kapsayıcılarını indirmeye, yüklemeye ve çalıştırmaya yönelik kavramları ve iş akışını öğrendiniz. Özet:
- Özetleme, 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ışacak şekilde 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 metin) Microsoft'a göndermez.
Sonraki adımlar
- Bkz . Yapılandırma ayarları için kapsayıcıları yapılandırma.