Aracılığıyla paylaş


Çıkarım için önceden oluşturulmuş Docker görüntüleri sorunlarını giderme

Önemli

Bu makalede Azure Machine Learning SDK v1 kullanımı hakkında bilgi sağlanır. SDK v1, 31 Mart 2025 itibarıyla kullanım dışı bırakılmıştır. Destek 30 Haziran 2026'da sona erecektir. Bu tarihe kadar SDK v1'i yükleyebilir ve kullanabilirsiniz.

30 Haziran 2026'dan önce SDK v2'ye geçmenizi öneririz. SDK v2 hakkında daha fazla bilgi için bkz. Azure Machine Learning CLI ve Python SDK v2 nedir? ve SDK v2 başvurusu.

Azure Machine Learning ile çıkarım için önceden oluşturulmuş docker görüntülerini kullanırken görebileceğiniz sorunları gidermeyi öğrenin.

Önemli

Azure Machine Learning ile önceden oluşturulmuş Docker görüntüleri için Python paketi genişletilebilirliğini kullanma şu anda önizleme aşamasındadır. Önizleme işlevselliği, destek veya hizmet düzeyi sözleşmesi garantisi olmadan "as-is," sağlanır. Daha fazla bilgi için bkz . Microsoft Azure önizlemeleri için ek kullanım koşulları.

Model dağıtımı başarısız oldu

Model dağıtımı başarısız olursa, Azure Machine Learning Studio'da hiçbir günlük oluşturulmaz ve service.get_logs() herhangi bir günlük döndürümez. score.py içindeki init() işlevinde bir sorun varsa, service.get_logs() sorunla ilgili günlükleri döndürür.

Aşağıdaki komutlardan birini kullanarak kapsayıcıyı yerel olarak çalıştırmanız ve <MCR-path>'yi bir görüntü yolu ile değiştirmeniz gerekir. Görüntülerin ve yolların listesi için bkz . Çıkarım için önceden oluşturulmuş Docker görüntüleri.

Montaj genişletilebilirlik çözümü

Aşağıdakileri içeren score.py dizine gidin ve çalıştırın:

docker run -it -v $(pwd):/var/azureml-app -e AZUREML_EXTRA_PYTHON_LIB_PATH="myenv/lib/python3.7/site-packages" <mcr-path>

requirements.txt genişletilebilirlik çözümü

Aşağıdakileri içeren score.py dizine gidin ve çalıştırın:

docker run -it -v $(pwd):/var/azureml-app -e AZUREML_EXTRA_REQUIREMENTS_TXT="requirements.txt" <mcr-path>

Yerel hata ayıklamayı etkinleştirme

Yerel çıkarım sunucusu, giriş betiğinizde (score.py ) hızlı bir şekilde hata ayıklamanıza olanak tanır. Temel alınan puan betiğinde hata olması durumunda sunucu modeli başlatamıyor veya hizmet veremiyor. Bunun yerine, bir özel durum ve sorunların oluştuğu konum oluşturur. Azure Machine Learning çıkarım HTTP Sunucusu hakkında daha fazla bilgi edinin

Yaygın model dağıtım sorunları için

Azure Machine Learning'den Azure Container Instances'a (ACI) veya Azure Kubernetes Service'e (AKS) model dağıtırken karşılaşılan sorunlar için bkz . Model dağıtımı sorunlarını giderme.

init() veya run() dosyası yazamayarak

Önceden Oluşturulmuş Docker Görüntülerimizdeki HTTP sunucusu kök olmayan kullanıcı olarak çalışır, tüm dizinlere erişim hakkı olmayabilir. Yalnızca erişim haklarına sahip olduğunuz dizinlere yazın. Örneğin, /tmp kapsayıcıdaki dizin.

Ek Python paketleri yüklü değil

  • Ortam değişkeninde veya dosya adında yazım hatası olup olmadığını denetleyin.
  • Yüklenip yüklenmediğini görmek pip install -r <your_requirements.txt> için kapsayıcı günlüğünü denetleyin.
  • Çıkarım yapılandırma oluşturucusunda kaynak dizinin doğru ayarlandığını denetleyin.
  • Yükleme bulunamadıysa ve günlük "dosya bulunamadı" yazıyorsa, günlükte gösterilen dosya adının doğru olup olmadığını denetleyin.
  • Yükleme başlatıldıysa ancak başarısız olduysa veya zaman aşımına uğradıysa, temiz ortamda aynı requirements.txt Python ve pip sürümüyle aynı yerel olarak yüklemeyi deneyin (önbellek dizini yok; pip install --no-cache-dir -r requriements.txt). Sorunun yerel olarak yeniden oluşturulabileceğine bakın.

Çözüm bağlanamadı

  • Ortam değişkeninde veya dizin adında yazım hatası olup olmadığını denetleyin.
  • Ortam değişkeni, dosyanın göreli yoluna score.py ayarlanmalıdır.
  • Çıkarım yapılandırma oluşturucusunda kaynak dizinin doğru ayarlandığını denetleyin.
  • Dizinin ortamın "site-packages" dizini olması gerekir.
  • Hala döndürülüyorsa score.pyModuleNotFound ve modülün bağlı dizinde olması gerekiyorsa, veya yolunun sys.pathinit()run() eksik olup olmadığını görmek için dosyasını yazdırmayı deneyin.

Önceden oluşturulmuş Docker görüntüsünü temel alan bir görüntü derleme başarısız oldu

  • apt paketi yüklemesi sırasında başarısız olursa, apt komutunu çalıştırmadan önce kullanıcının kök olarak ayarlı olup olmadığını denetleyin. (Kök olmayan kullanıcıya geri döndüğüne emin olun)

GPU yerel dağıtımında çalıştırma tamamlanmadı

Yerel dağıtım bir Azure Machine Learning işlem örneğinde olmadığı sürece GPU temel görüntüleri yerel dağıtım için kullanılamaz. GPU temel görüntüleri yalnızca Azure Machine Learning işlem kümeleri ve örnekleri, Azure Container Instance (ACI), Azure VM'leri veya Azure Kubernetes Service (AKS) gibi Microsoft Azure Hizmetlerinde desteklenir.

Önceden oluşturulmuş Docker görüntüsünü temel alan görüntü önyüklenemez

  • Kök olmayan kullanıcının olması dockerusergerekir. Aksi takdirde, aşağıdaki dizinlerin sahibi, görüntüyü çalıştırırken kullanmak istediğiniz kullanıcı adına ayarlanmalıdır:

    /var/runit
    /var/log
    /var/lib/nginx
    /run
    /opt/miniconda
    /var/azureml-app
    
  • ENTRYPOINT yeni yerleşik görüntüde değiştirilirse, HTTP sunucusu ve ilgili bileşenlerin runsvdir /var/runit tarafından yüklenmesi gerekir.

Sonraki adımlar