Modeli program aracılığıyla dışarı aktarma

Özel görüntü işleme web sitesinde bulunan tüm dışarı aktarma seçenekleri, istemci kitaplıkları aracılığıyla programlama yoluyla da yapılabilir. Bunu, yerel bir cihazda kullandığınız model yinelemesini yeniden eğitim ve güncelleştirme sürecini tamamen otomatikleştirebilmeniz için yapmak isteyebilirsiniz.

Bu kılavuzda, bir ONNX dosyasına, Python SDK ile modelinizi dışarı aktarma işlemi gösterilmektedir.

Eğitim istemcisi oluşturma

Bir model yinelemesini dışarı aktarmak için bir CustomVisionTrainingClient nesneniz olması gerekir. Özel Görüntü İşleme eğitim kaynaklarınızın Azure uç noktası ve abonelik anahtarları için değişkenler oluşturun ve bunları istemci nesnesini oluşturmak için kullanın.

ENDPOINT = "PASTE_YOUR_CUSTOM_VISION_TRAINING_ENDPOINT_HERE"
training_key = "PASTE_YOUR_CUSTOM_VISION_TRAINING_SUBSCRIPTION_KEY_HERE"

credentials = ApiKeyCredentials(in_headers={"Training-key": training_key})
trainer = CustomVisionTrainingClient(ENDPOINT, credentials)

Önemli

Herhangi bir şey yapıldıktan sonra kodu koddan kaldırmayı unutmayın ve hiçbir zaman herkese açık bir şekilde nakletmeyin. Üretim için, kimlik bilgilerinizi depolamak ve bunlara erişmek için güvenli bir yol kullanmayı düşünün. Daha fazla bilgi için bilişsel Hizmetler güvenlik makalesine bakın.

Export metodunu çağırın

Export_iteration yöntemini çağırın.

  • Dışarı aktarmak istediğiniz modelin proje KIMLIĞI, yineleme KIMLIĞI ' ni belirtin.
  • Platform parametresi, verilecek platformu belirtir: izin verilen değerler,,, CoreML , TensorFlow DockerFile ONNX VAIDK ve OpenVino .
  • Flavor parametresi, verilen modelin biçimini belirtir: izin verilen değerler,,,,, Linux Windows ONNX10 ONNX12 ARM TensorFlowNormal ve TensorFlowLite .
  • Ham parametresi, ham JSON yanıtını, nesne modeli yanıtıyla birlikte alma seçeneği sunar.
project_id = "PASTE_YOUR_PROJECT_ID"
iteration_id = "PASTE_YOUR_ITERATION_ID"
platform = "ONNX"
flavor = "ONNX10"
export = trainer.export_iteration(project_id, iteration_id, platform, flavor, raw=False)

Daha fazla bilgi için export_iteration yöntemine bakın.

Dışarı aktarılan modeli indirme

Sonra, dışarı aktarma işleminin durumunu denetlemek için get_exports yöntemini çağıracaksınız. İşlem zaman uyumsuz olarak çalışır, bu nedenle işlem tamamlanana kadar bu yöntemi yoklamalısınız. Tamamlandığında, cihaza model yinelemesini indirebileceğiniz URI 'yi alabilirsiniz.

while (export.status == "Exporting"):
    print ("Waiting 10 seconds...")
    time.sleep(10)
    exports = trainer.get_exports(project_id, iteration_id)
    # Locate the export for this iteration and check its status  
    for e in exports:
        if e.platform == export.platform and e.flavor == export.flavor:
            export = e
            break
    print("Export status is: ", export.status)

Daha fazla bilgi için get_exports yöntemine bakın.

Daha sonra, bir program aracılığıyla, verdiğiniz modeli cihazınızdaki bir konuma indirebilirsiniz.

if export.status == "Done":
    # Success, now we can download it
    export_file = requests.get(export.download_uri)
    with open("export.zip", "wb") as file:
        file.write(export_file.content)

Sonraki adımlar

Aşağıdaki makalelerden veya örneklerden birini inceleyerek, verdiğiniz modeli bir uygulamayla tümleştirin: