Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
ÉRVÉNYES:Azure CLI ml-bővítmény v2 (aktuális)
Python SDK azure-ai-ml v2 (aktuális)
Ebben a cikkben megismerheti az online környezetekben használni kívánt modellek megadásának különböző módjait. Amikor egy modellt online Azure Machine Learning-végponton helyez üzembe, a modellt kétféleképpen kell megadnia:
- Adja meg a modell helyének elérési útját a helyi számítógépen
- Adjon meg egy hivatkozást a munkaterületen már regisztrált verziójú modellre.
Az online végpont üzembe helyezéséhez használt modell megadása attól függ, hogy hol tárolja a modellt.
Az Azure Machine Learningben az üzembe helyezés létrehozása után a környezeti változó AZUREML_MODEL_DIR
arra a tárolóhelyre mutat az Azure-ban, ahol a modell tárolódik.
Helyileg tárolt modellek üzembe helyezése
Ez a szakasz egy helyi mappastruktúra példáját használja, amely bemutatja, hogyan adhatja meg az online üzembe helyezéshez használható modelleket:
Üzembe helyezés egyetlen helyi modellhez
Ha egyetlen olyan modellt szeretne használni, amely a helyi gépen található egy üzembe helyezés során, adja meg az path
model
üzembehelyezési YAML-konfigurációs fájlban szereplő értéket. Az alábbi kód egy példa az üzembe helyezési YAML-ra a helyi elérési úttal /Downloads/multi-models-sample/models/model_1/v1/sample_m1.pkl
:
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: blue
endpoint_name: my-endpoint
model:
path: /Downloads/multi-models-sample/models/model_1/v1/sample_m1.pkl
code_configuration:
code: ../../model-1/onlinescoring/
scoring_script: score.py
environment:
conda_file: ../../model-1/environment/conda.yml
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latest
instance_type: Standard_DS3_v2
instance_count: 1
Az Azure Machine Learningben, miután létrehozta az üzembe helyezést egy online végponton, a környezeti változó AZUREML_MODEL_DIR
arra a tárolási helyre mutat az Azure-ban, ahol a modell tárolása történik. Például most /var/azureml-app/azureml-models/aaa-aaa-aaa-aaa-aaa/1
már tartalmazza a modellt sample_m1.pkl
.
A pontozószkriptben (score.py
) betöltheti a modellt (ebben a példában sample_m1.pkl
) a szkript függvényében init()
:
def init():
model_path = os.path.join(str(os.getenv("AZUREML_MODEL_DIR")), "sample_m1.pkl")
model = joblib.load(model_path)
Üzembe helyezés több helyi modellhez
Bár az Azure CLI, a Python SDK és más ügyféleszközök lehetővé teszik, hogy üzembe helyezésenként csak egy modellt adjon meg az üzembe helyezés definíciójában, az üzembe helyezésben több modellt is használhat egy olyan modellmappa regisztrálásával, amely az összes modellt fájlként vagy alkönyvtárként tartalmazza. Az eszközök( például modellek) regisztrálásával kapcsolatos további információkért, hogy meg tudja adni a regisztrált nevüket és verzióikat az üzembe helyezés során, olvassa el a modell és a környezet regisztrálása című témakört.
A példa helyi mappastruktúrájában láthatja, hogy a mappában models
több modell is található. A modellek használatához az üzembehelyezési YAML-ben az alábbiak szerint kell megadnia a models
mappa elérési útját:
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: blue
endpoint_name: my-endpoint
model:
path: /Downloads/multi-models-sample/models/
code_configuration:
code: ../../model-1/onlinescoring/
scoring_script: score.py
environment:
conda_file: ../../model-1/environment/conda.yml
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latest
instance_type: Standard_DS3_v2
instance_count: 1
Az üzembe helyezés létrehozása után a környezeti változó AZUREML_MODEL_DIR
arra a tárolási helyre mutat az Azure-ban, ahol a modelleket tárolják. Most például /var/azureml-app/azureml-models/bbb-bbb-bbb-bbb-bbb/1
a modelleket és a fájlstruktúrát tartalmazza.
Ebben a példában a mappa tartalma a AZUREML_MODEL_DIR
következőképpen néz ki:
A pontozási szkripten (score.py
) belül betöltheti a modelleket a init()
függvénybe. A következő kód betölti a sample_m1.pkl
modellt:
def init():
model_path = os.path.join(str(os.getenv("AZUREML_MODEL_DIR")), "models","model_1","v1", "sample_m1.pkl ")
model = joblib.load(model_path)
Ha több modellt szeretne üzembe helyezni egy üzemelő példányban, olvassa el a Több modell üzembe helyezése egy üzembe helyezésben (CLI-példa) és több modell üzembe helyezése egy üzembe helyezésben (SDK-példa) című témakört.
Tipp.
Ha több mint 1500 fájlt szeretne regisztrálni, fontolja meg a fájlok vagy alkönyvtárak .tar.gz tömörítését a modellek regisztrálásakor. A modellek használatához kicsomagolhatja a fájlokat vagy alkönyvtárakat a init()
pontozószkript függvényében. Másik lehetőségként a modellek regisztrálásakor állítsa be a azureml.unpack
tulajdonságot True
a fájlok vagy alkönyvtárak automatikus kicsomagolásához. Mindkét esetben a fájlok kicsomagolása egyszer történik az inicializálási szakaszban.
Üzembe helyezés a munkaterületen regisztrált modellekhez
Az üzembehelyezési definícióban regisztrált modelleket használhat, ha a nevükre hivatkozik az üzembe helyezési YAML-ben. A következő üzembehelyezési YAML-konfiguráció például a regisztrált model
nevet azureml:local-multimodel:3
adja meg:
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: blue
endpoint_name: my-endpoint
model: azureml:local-multimodel:3
code_configuration:
code: ../../model-1/onlinescoring/
scoring_script: score.py
environment:
conda_file: ../../model-1/environment/conda.yml
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latest
instance_type: Standard_DS3_v2
instance_count: 1
Ebben a példában vegye figyelembe local-multimodel:3
a következő modellösszetevőket, amelyek az Azure Machine Learning Studio Modellek lapján tekinthetők meg:
Az üzembe helyezés létrehozása után a környezeti változó AZUREML_MODEL_DIR
arra a tárolási helyre mutat az Azure-ban, ahol a modelleket tárolják. Például /var/azureml-app/azureml-models/local-multimodel/3
tartalmazza a modelleket és a fájlstruktúrát.
AZUREML_MODEL_DIR
a modellösszetevők gyökerét tartalmazó mappára mutat. A példa alapján a mappa tartalma a AZUREML_MODEL_DIR
következőképpen néz ki:
A pontozási szkripten (score.py
) belül betöltheti a modelleket a init()
függvénybe. Töltse be például a diabetes.sav
modellt:
def init():
model_path = os.path.join(str(os.getenv("AZUREML_MODEL_DIR"), "models", "diabetes", "1", "diabetes.sav")
model = joblib.load(model_path)
A modellkatalógusban elérhető modellek üzembe helyezése
A modellkatalógusban szereplő bármely modell esetében, kivéve az Azure OpenAI-gyűjteményben lévő modelleket, a modell kártyáján látható modellazonosítót használhatja az üzembe helyezéshez. A modellazonosítók az űrlapon azureml://registries/{registry_name}/models/{model_name}/versions/{model_version}
találhatók. Például a Meta Llama 3-8 B instruktúramodell modellazonosítója.azureml://registries/azureml-meta/models/Meta-Llama-3-8B-Instruct/versions/2
Egyes modellkártyák példajegyzetfüzeteket tartalmaznak, amelyek bemutatják, hogyan használhatja a modellazonosítót az üzembe helyezéshez.
A szervezet beállításjegyzékében elérhető modellek üzembe helyezése
A szervezeti beállításjegyzék minden modellje rendelkezik az űrlap azureml://registries/{registry_name}/models/{model_name}/versions/{model_version}
modellazonosítójával. Dönthet úgy is, hogy az ugyanabban a beállításjegyzékben regisztrált környezeteket használja.