Materiały kursów
Materiały / Azure ML (polski)
Instrukcja do tego ćwiczeniaPobierz notatnik (.ipynb)

Wprowadzenie do Azure ML SDK

Azure Machine Learning (Azure ML) to usługa chmurowa do budowania, trenowania, wdrażania i zarządzania rozwiązaniami uczenia maszynowego. Pozwala pracować ze znanymi narzędziami Pythona i bibliotekami uczenia maszynowego, a jednocześnie przenosić obliczenia na moc dostępną w Azure.

Azure Machine Learning SDK v2 dla Pythona udostępnia klasy do pracy z zasobami Azure ML w Twojej subskrypcji: obszarami roboczymi, zasobami obliczeniowymi, magazynami danych, zasobami danych, zadaniami (job), modelami, środowiskami i punktami końcowymi (endpoint).

Sprawdzenie wersji Azure ML SDK

Zacznij od zaimportowania pakietu Azure Machine Learning SDK v2 i sprawdzenia, która wersja jest zainstalowana.

Uwaga: Azure Machine Learning SDK dla Pythona dostarcza pakiet azure-ai-ml.

In [ ]:
import sys
from importlib.metadata import version

print("Interpreter Pythona:", sys.executable)
print("Azure ML SDK v2 gotowe do pracy")
print("Wersja azure-ai-ml:", version("azure-ai-ml"))

Połączenie z obszarem roboczym

Zasobami Azure Machine Learning zarządza się w obszarze roboczym (workspace). W SDK v2 służy do tego obiekt MLClient - to przez niego łączysz się z obszarem roboczym i operujesz na jego zasobach.

Ten notatnik rozpoznaje obszar roboczy na podstawie pliku config.json. W portalu Azure otwórz obszar roboczy Azure Machine Learning, wybierz Overview, a następnie Download config.json. Zapisz plik w tym samym folderze co ten notatnik albo w jednym z folderów nadrzędnych.

Uwaga: Nie umieszczaj pliku config.json w publicznym repozytorium. W razie potrzeby dopisz go do .gitignore.

Poniższy kod uwierzytelnia się przez DefaultAzureCredential. Na instancji obliczeniowej Azure Machine Learning może skorzystać z tożsamości zarządzanej tej instancji. Jeśli uruchamiasz notatnik lokalnie lub w innym środowisku i uwierzytelnienie się nie powiedzie, zaloguj się poleceniem az login w terminalu.

In [ ]:
from azure.ai.ml import MLClient
from azure.identity import DefaultAzureCredential

credential = DefaultAzureCredential()
ml_client = MLClient.from_config(credential=credential)

print(f"Wczytano obszar roboczy: {ml_client.workspace_name}")

Przegląd zasobów Azure ML

Po nawiązaniu połączenia z obszarem roboczym możesz użyć MLClient, aby zobaczyć, jakie zasoby się w nim znajdują.

Uwaga: Do danych w Azure ML odwołujesz się przez zasoby danych (ang. data assets). Są wersjonowane i mają typ - na przykład uri_file, uri_folder albo mltable.

In [ ]:
print("Zasoby obliczeniowe:")
for compute in ml_client.compute.list():
    print(f"\t{compute.name}: {compute.type}")

print("\nMagazyny danych:")
for datastore in ml_client.datastores.list():
    print(f"\t{datastore.name}: {datastore.type}")

print("\nZasoby danych:")
for data_asset in ml_client.data.list():
    print(f"\t{data_asset.name}")

ml_client.data.list() bez argumentu wypisuje same nazwy zasobów danych. Wersja i typ nie należą do nazwy, tylko do konkretnej wersji zasobu - dlatego wypisanie ich w powyższej pętli dałoby None.

Żeby zobaczyć wersje, podaj nazwę zasobu:

In [ ]:
nazwa = "diabetes_dataset"

print(f"Wersje zasobu {nazwa}:")
for wersja in ml_client.data.list(name=nazwa):
    print(f"\t wersja {wersja.version}, typ {wersja.type}")

Za pomocą Azure Machine Learning SDK v2 udało się sprawdzić wersję zainstalowanego SDK, połączyć się z obszarem roboczym Azure Machine Learning oraz wypisać jego zasoby obliczeniowe, magazyny danych i zasoby danych.

Azure ML SDK v2 pozwala zarządzać zasobami Azure Machine Learning z poziomu kodu Pythona. W kolejnych ćwiczeniach posłuży do tworzenia zasobów danych i środowisk, uruchamiania zadań treningowych oraz rejestrowania modeli i wdrażania punktów końcowych.

Więcej informacji znajdziesz w dokumentacji Azure Machine Learning SDK v2 dla Pythona.

W menu File wybierz Close and Halt, aby zamknąć ten notatnik. Następnie wróć do instrukcji ćwiczenia.