Azure Container Örneğinde kapsayıcıları dağıtma ve çalıştırma
Makale
Aşağıdaki adımlarla Azure Container Instances ile Azure AI hizmetleri uygulamalarını bulutta kolayca ölçeklendirin. Kapsayıcıya alma, altyapıyı yönetmek yerine uygulamalarınızı oluşturmaya odaklanmanıza yardımcı olur. Kapsayıcıları kullanma hakkında daha fazla bilgi için bkz. Özellikler ve avantajlar.
Önkoşullar
Tarif, herhangi bir Azure AI hizmetleri kapsayıcısıyla çalışır. Tarifi kullanmadan önce Azure AI hizmetleri kaynağının oluşturulması gerekir. Kapsayıcıları destekleyen her Azure AI hizmetinin, hizmeti bir kapsayıcı için yüklemeye ve yapılandırmaya yönelik bir "Nasıl yüklenir" makalesi vardır. Bazı hizmetler, kapsayıcı için giriş olarak bir dosya veya dosya kümesi gerektirir; bu çözümü kullanmadan önce kapsayıcıyı başarıyla anlamanız ve kullanmanız önemlidir.
Kullanmakta olduğunuz Azure yapay zeka hizmeti için bir Azure kaynağı.
Azure AI hizmeti kaynak uç noktası URL'si - Azure portalında uç nokta URL'sinin nerede olduğunu ve URL'nin doğru bir örneğinin nasıl göründüğünü bulmak için kapsayıcı için belirli hizmetinizin "Nasıl yüklenir" bölümünü gözden geçirin. Tam biçim hizmetten hizmete değişebilir.
Azure AI hizmeti kaynak anahtarı - anahtarlar Azure kaynağının Anahtarlar sayfasındadır. İki anahtardan yalnızca birine ihtiyacınız vardır. Anahtar, 84 alfasayısal karakterden oluşan bir dizedir.
Yerel konağınızda (bilgisayarınız) tek bir Azure AI hizmetleri kapsayıcısı. Yapabileceklerinize emin olun:
Görüntüyü bir docker pull komutla aşağı çekin.
Bir komutla tüm gerekli yapılandırma ayarlarıyla docker run yerel kapsayıcıyı başarıyla çalıştırın.
HTTP 2xx yanıtını ve JSON yanıtını geri alarak kapsayıcının uç noktasını çağırın.
köşeli ayraç içindeki <>tüm değişkenlerin kendi değerlerinizle değiştirilmesi gerekir. Bu değiştirme açılı ayraçları içerir.
Önemli
LUIS kapsayıcısı, çalışma zamanında çekilen bir .gz model dosyası gerektirir. Kapsayıcının, kapsayıcı örneğinden bir birim bağlama yoluyla bu model dosyasına erişebilmesi gerekir. Bir model dosyasını karşıya yüklemek için şu adımları izleyin:
Azure dosya paylaşımı oluşturun. Azure Depolama hesap adı, anahtar ve dosya paylaşımı adı değerlerini not alın çünkü bunlar daha sonra gerekecektir.
Görüntü adı üç bölüm belirterek tam olarak nitelenmiş olmalıdır. İlk olarak kapsayıcı kayıt defteri, ardından depo, son olarak görüntü adı: <container-registry>/<repository>/<image-name>.
Aşağıda, mcr.microsoft.com/azure-cognitive-services/keyphrase Azure AI hizmetleri deposunun altındaki Microsoft Container Registry'deki Anahtar İfade Ayıklama görüntüsünü temsil eden bir örnek verilmiştir. Bir diğer örnek de, containerpreview.azurecr.io/microsoft/cognitive-services-speech-to-text Container Preview kapsayıcı kayıt defterinin Microsoft deposundaki Konuşmayı metne dönüştürme görüntüsünü temsil eder.
İşletim sistemi türü
Linux
Size
Boyutu, belirli Azure AI kapsayıcınız için önerilen önerilerle değiştirin: 2 CPU çekirdeği 4 GB
Ağ sekmesinde aşağıdaki ayrıntıları girin:
Ayar
Value
Bağlantı Noktaları
TCP bağlantı noktasını olarak 5000ayarlayın. Kapsayıcıyı 5000 numaralı bağlantı noktasında kullanıma sunar.
Gelişmiş sekmesinde, Azure Container Instance kaynağının kapsayıcı faturalama ayarları için gerekli Ortam Değişkenlerini girin:
Anahtar
Değer
ApiKey
Kaynağın Anahtarlar ve uç nokta sayfasından kopyalanır. Boşluk veya tire xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxiçermeyen 84 alfasayısal karakterli bir dizedir.
Billing
Uç nokta URL'niz kaynağın Anahtarlar ve uç nokta sayfasından kopyalanır.
Eula
accept
Gözden Geçir ve Oluştur'u seçin
Doğrulama geçtikten sonra oluşturma işlemini tamamlamak için Oluştur'a tıklayın
Kaynak başarıyla dağıtıldığında hazır olur
Azure CLI'dan Azure Container Instance kaynağı oluşturma
apiVersion:2018-10-01location:# < Valid location >name:# < Container Group name >properties: imageRegistryCredentials:# This is only required if you are pulling a non-public image that requires authentication to access. For example Text Analytics for health. - server:containerpreview.azurecr.io username:# < The username for the preview container registry > password:# < The password for the preview container registry > containers: - name:# < Container name > properties: image:# < Repository/Image name > environmentVariables:# These env vars are required - name:eula value:accept - name:billing value:# < Service specific Endpoint URL > - name:apikey value:# < Service specific API key > resources: requests: cpu:4# Always refer to recommended minimal resources memoryInGb:8# Always refer to recommended minimal resources ports: - port:5000 osType:Linux volumes:# This node, is only required for container instances that pull their model in at runtime, such as LUIS. - name:aci-file-share azureFile: shareName:# < File share name > storageAccountName:# < Storage account name> storageAccountKey:# < Storage account key > restartPolicy:OnFailure ipAddress: type:Public ports: - protocol:tcp port:5000tags:nulltype:Microsoft.ContainerInstance/containerGroups
Komut için oluşturduğumuz YAML dosyasını kullanacağız az container create . Azure CLI'dan komutunu yürüterek az container create<resource-group> öğesini kendi komutunızla değiştirin. Buna ek olarak, YAML dağıtımındaki değerlerin güvenliğini sağlamak için güvenli değerlere bakın.
Azure CLI
az container create -g<resource-group>-f my-aci.yaml
Komutun Running... çıkışı geçerliyse, bir süre sonra çıkış yeni oluşturulan ACI kaynağını temsil eden bir JSON dizesine dönüşür. Kapsayıcı görüntüsü büyük olasılıkla bir süre kullanılamayabilir, ancak kaynak artık dağıtılır.
İpucu
YAML'nin konumla eşleşecek şekilde ayarlanması gerekeceği için azure yapay zeka hizmetlerinin genel önizlemedeki konumlarına çok dikkat edin.
Genel Bakış'ı seçin ve IP adresini kopyalayın. gibi 55.55.55.55sayısal bir IP adresi olacaktır.
Yeni bir tarayıcı sekmesi açın ve IP adresini kullanın, örneğin, http://<IP-address>:5000 (http://55.55.55.55:5000). Kapsayıcının çalıştığını bildiren giriş sayfasını görürsünüz.
Kapsayıcının swagger sayfasını görüntülemek için Hizmet API'sinin Açıklaması'nı seçin.
POST API'lerinden herhangi birini seçin ve Deneyin'i seçin. Giriş dahil olmak üzere parametreler görüntülenir. Parametreleri doldurun.
İsteği Kapsayıcı Örneğiniz'e göndermek için Yürüt'e tıklayın.
Azure Container Instance'da Azure AI kapsayıcılarını başarıyla oluşturdunuz ve kullandınız.
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.
Not
Sistem durumu kapsayıcısı için Metin Analizi çalıştırıyorsanız sorguları göndermek için aşağıdaki URL'yi kullanın:http://localhost:5000/text/analytics/v3.2-preview.1/entities/health
Diğer geliştiriciler ve uzmanlarla gerçek dünyadaki kullanım örneklerini temel alan ölçeklenebilir yapay zeka çözümleri oluşturmak için toplantı serisine katılın.