Parancssori felület (v2) által felügyelt online üzemelő példány YAML-sémája
A KÖVETKEZŐRE VONATKOZIK: Azure CLI ml-bővítmény v2 (aktuális)
A forrás JSON-séma a következő helyen https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.jsontalálható: .
Feljegyzés
A dokumentumban részletezett YAML-szintaxis az ML CLI v2 bővítmény legújabb verziójának JSON-sémáján alapul. Ez a szintaxis garantáltan csak az ML CLI v2 bővítmény legújabb verziójával működik. A régebbi bővítményverziók sémáit a következő helyen https://azuremlschemasprod.azureedge.net/találja: .
YAML-szintaxis
Kulcs | Típus | Leírás | Megengedett értékek | Alapértelmezett érték |
---|---|---|---|---|
$schema |
húr | A YAML-séma. Ha az Azure Machine Learning VS Code-bővítményt használja a YAML-fájl létrehozásához, a fájl tetején is $schema lehetővé teszi a séma és az erőforrás-kiegészítések meghívását. |
||
name |
húr | Szükséges. Az üzembe helyezés neve. Itt definiáljuk az elnevezési szabályokat. |
||
description |
húr | Az üzembe helyezés leírása. | ||
tags |
object | Az üzembe helyezés címkéinek szótára. | ||
endpoint_name |
húr | Szükséges. Az üzembe helyezés létrehozásához szükséges végpont neve. | ||
model |
sztring vagy objektum | Az üzembe helyezéshez használni kívánt modell. Ez az érték lehet a munkaterület egy meglévő verziójú modelljére való hivatkozás, vagy egy beágyazott modell specifikációja. Meglévő modellre való hivatkozáshoz használja a szintaxist azureml:<model-name>:<model-version> . Modell beágyazott definiálásához kövesse a Modell sémát. Az éles forgatókönyvekhez ajánlott eljárásként külön kell létrehoznia a modellt, és itt kell hivatkoznia rá. Ez a mező nem kötelező egyéni tárolótelepítési forgatókönyvekhez. |
||
model_mount_path |
húr | A modell egyéni tárolóba való csatlakoztatásának elérési útja. Csak egyéni tárolótelepítési forgatókönyvekre alkalmazható. Ha a model mező meg van adva, az erre az útvonalra van csatlakoztatva a tárolóban. |
||
code_configuration |
object | A pontozási kód logikájának konfigurálása. Ez a mező nem kötelező egyéni tárolótelepítési forgatókönyvekhez. |
||
code_configuration.code |
húr | A modell pontozásához a forráskód könyvtárának helyi elérési útja. | ||
code_configuration.scoring_script |
húr | A forráskód könyvtárában található pontozófájl relatív elérési útja. | ||
environment_variables |
object | A környezeti változó kulcs-érték párjainak szótára, amely az üzembehelyezési tárolóban állítható be. Ezeket a környezeti változókat a pontozási szkriptekből érheti el. | ||
environment |
sztring vagy objektum | Szükséges. Az üzembe helyezéshez használni kívánt környezet. Ez az érték hivatkozhat a munkaterület meglévő verziójú környezetére, vagy egy beágyazott környezeti specifikációra. Meglévő környezetre való hivatkozáshoz használja a szintaxist azureml:<environment-name>:<environment-version> . A környezet beágyazott definiálásához kövesse a Környezeti sémát. Az éles forgatókönyvekhez ajánlott eljárásként külön kell létrehoznia a környezetet, és itt kell hivatkoznia rá. |
||
instance_type |
húr | Szükséges. Az üzembe helyezéshez használandó virtuálisgép-méret. A támogatott méretek listáját a Felügyelt online végpontok termékváltozata című témakörben találja. | ||
instance_count |
egész szám | Szükséges. Az üzembe helyezéshez használandó példányok száma. Adja meg az értéket a várt számítási feladat alapján. A magas rendelkezésre állás érdekében a Microsoft azt javasolja, hogy állítsa be legalább 3 . instance_count a parancs használatával az ml online-deployment update végzett üzembe helyezés után frissíthető. A frissítések végrehajtásához további 20%-ot foglalunk le. További információ: virtuálisgép-kvóta kiosztása az üzembe helyezéshez. |
||
app_insights_enabled |
Logikai | A munkaterülethez társított Azure-alkalmazás Insights-példány integrációjának engedélyezése. | false |
|
scale_settings |
object | Az üzembe helyezés méretezési beállításai. Jelenleg csak a default méretezési típus támogatott, ezért nem kell megadnia ezt a tulajdonságot. Ezzel a default méretezési típussal manuálisan skálázhatja a példányok számát az üzembe helyezés létrehozása után a instance_count tulajdonság frissítésével, vagy létrehozhat egy automatikus skálázási szabályzatot. |
||
scale_settings.type |
húr | A méretezés típusa. | default |
default |
data_collector |
object | Az üzembe helyezés adatgyűjtési beállításai. A konfigurálható tulajdonságokat lásd a DataCollectorban . | ||
request_settings |
object | Pontozási kérés beállításai az üzembe helyezéshez. A konfigurálható tulajdonságokat lásd: RequestSettings . | ||
liveness_probe |
object | A tároló állapotának rendszeres monitorozására szolgáló liveness-mintavételi beállítások. A konfigurálható tulajdonságokat lásd: ProbeSettings . | ||
readiness_probe |
object | A készenlét mintavételi beállításai annak ellenőrzéséhez, hogy a tároló készen áll-e a forgalom kiszolgálására. A konfigurálható tulajdonságokat lásd: ProbeSettings . | ||
egress_public_network_access |
húr | Megjegyzés: Ez a kulcs akkor alkalmazható, ha az örökölt hálózatelkülönítési módszert használja az üzembe helyezés kimenő kommunikációjának biztonságossá tételéhez. Határozottan javasoljuk, hogy inkább egy munkaterület által felügyelt virtuális hálózat használatával biztosítsa a kimenő kommunikációt az üzemelő példányok számára. Ez a jelző az üzemelő példány és az általa használt Azure-erőforrások közötti kommunikáció korlátozásával védi az üzembe helyezést. disabled Állítsa be annak biztosítására, hogy az üzembe helyezéshez szükséges modell, kód és rendszerképek letöltése privát végponttal legyen biztosítva. Ez a jelző csak felügyelt online végpontokra vonatkozik. |
enabled , disabled |
enabled |
RequestSettings
Kulcs | Típus | Leírás | Alapértelmezett érték |
---|---|---|---|
request_timeout_ms |
egész szám | A pontozási időtúllépés ezredmásodpercben. Vegye figyelembe, hogy az engedélyezett maximális érték ezredmásodperc 180000 . További információkért tekintse meg az online végpontok korlátait. |
5000 |
max_concurrent_requests_per_instance |
egész szám | Az egyidejű kérések példányonkénti maximális száma, amely engedélyezve van az üzembe helyezéshez. Megjegyzés: Ha Azure Machine Learning-következtetési kiszolgálót vagy Azure Machine Learning-következtetési rendszerképeket használ, a modellt konfigurálni kell az egyidejű kérések kezeléséhez. Ehhez adja át WORKER_COUNT: <int> környezeti változóként. További információ: WORKER_COUNT Azure Machine Learning Következtetési kiszolgáló paraméterei Megjegyzés: Állítsa be azoknak a kéréseknek a számát, amelyeket a modell egyszerre tud feldolgozni egyetlen csomóponton. Ha ezt az értéket a modell tényleges egyidejűségénél magasabbra állítja, az nagyobb késésekhez vezethet. Ha ezt az értéket túl alacsonyra állítja, az kihasználatlan csomópontokhoz vezethet. A túl alacsony beállítás azt is eredményezheti, hogy a kérések elutasítása 429 HTTP-állapotkóddal történik, mivel a rendszer a gyors sikertelenség mellett dönt. További információ: Online végpontok hibaelhárítása: HTTP-állapotkódok. |
1 |
max_queue_wait_ms |
egész szám | (Elavult) A kérelmek maximális időtartama ezredmásodpercben az üzenetsorban marad. (Most növelje request_timeout_ms az esetleges hálózati/üzenetsor-késések számát) |
500 |
ProbeSettings
Kulcs | Típus | Leírás | Alapértelmezett érték |
---|---|---|---|
initial_delay |
egész szám | A tároló elindítása utáni másodpercek száma a mintavétel indítása előtt. A minimális érték a .1 |
10 |
period |
egész szám | Milyen gyakran (másodpercben) hajtja végre a mintavételt. | 10 |
timeout |
egész szám | Az a másodperc, amely után a mintavétel túllépi az időkorlátot. A minimális érték a .1 |
2 |
success_threshold |
egész szám | A mintavétel sikertelenségét követően sikeresnek ítélt minimális egymást követő sikerek. A minimális érték a 1 készültségi mintavétel. Az élőség-mintavétel értéke a következőképpen van rögzítve 1 : . |
1 |
failure_threshold |
egész szám | Ha a mintavétel sikertelen, a rendszer megpróbál időt, failure_threshold mielőtt feladná. Az élőség mintavétele esetén történő átadás azt jelenti, hogy a tároló újraindul. Készültségi mintavétel esetén a tároló olvasatlanként lesz megjelölve. A minimális érték a .1 |
30 |
DataCollector
Kulcs | Típus | Leírás | Alapértelmezett érték |
---|---|---|---|
sampling_rate |
float | Az összegyűjtendő adatok százalékos aránya tizedes törtként. Az 1,0 érték például az adatok 100%-ának gyűjtését jelenti. | 1.0 |
rolling_rate |
húr | A tárolóban lévő adatok particionálásának sebessége. Az érték lehet: Perc, Óra, Nap, Hónap, Év. | Hour |
collections |
object | Az egyes collection_name példányok és az üzembe helyezéshez szükséges beállítások készlete. |
|
collections.<collection_name> |
object | Az éles következtetési adatok logikai csoportosítása gyűjtendő (például: model_inputs ). Két fenntartott név létezik: request a response HTTP-kérések és válaszok hasznos adatgyűjteményének megfelelő név. Minden más név tetszőleges és meghatározható a felhasználó által. Megjegyzés: Mindegyiknek collection_name meg kell felelnie az Collector üzemelő példányban score.py az éles következtetési adatok gyűjtéséhez használt objektum nevének. A hasznos adatok gyűjtésével és a megadott Python SDK-val történő adatgyűjtéssel kapcsolatos további információkért lásd : Adatok gyűjtése éles modellekből. |
|
collections.<collection_name>.enabled |
Logikai | Engedélyezi-e az adatgyűjtést a megadott collection_name . |
'False'' |
collections.<collection_name>.data.name |
húr | Az összegyűjtött adatokkal regisztrálandó adategység neve. | <endpoint>-<deployment>-<collection_name> |
collections.<collection_name>.data.path |
húr | A teljes Azure Machine Learning-adattár elérési útja, ahol az összegyűjtött adatokat adategységként kell regisztrálni. | azureml://datastores/workspaceblobstore/paths/modelDataCollector/<endpoint_name>/<deployment_name>/<collection_name> |
collections.<collection_name>.data.version |
egész szám | A Blob Storage-ban gyűjtött adatokkal regisztrálandó adategység verziója. | 1 |
Megjegyzések
A az ml online-deployment
parancsok az Azure Machine Learning által felügyelt online üzemelő példányok kezelésére használhatók.
Példák
A példák a GitHub-adattárban érhetők el. Az alábbiakban több is látható.
YAML: alapszintű
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: blue
endpoint_name: my-endpoint
model:
path: ../../model-1/model/
code_configuration:
code: ../../model-1/onlinescoring/
scoring_script: score.py
environment:
conda_file: ../../model-1/environment/conda.yaml
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latest
instance_type: Standard_DS3_v2
instance_count: 1
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: green
endpoint_name: my-endpoint
model:
path: ../../model-2/model/
code_configuration:
code: ../../model-2/onlinescoring/
scoring_script: score.py
environment:
conda_file: ../../model-2/environment/conda.yaml
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latest
instance_type: Standard_DS3_v2
instance_count: 1
YAML: rendszer által hozzárendelt identitás
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: blue
model:
path: ../../model-1/model/
code_configuration:
code: ../../model-1/onlinescoring/
scoring_script: score_managedidentity.py
environment:
conda_file: ../../model-1/environment/conda-managedidentity.yaml
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latest
instance_type: Standard_DS3_v2
instance_count: 1
environment_variables:
STORAGE_ACCOUNT_NAME: "storage_place_holder"
STORAGE_CONTAINER_NAME: "container_place_holder"
FILE_NAME: "file_place_holder"
YAML: felhasználó által hozzárendelt identitás
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: blue
model:
path: ../../model-1/model/
code_configuration:
code: ../../model-1/onlinescoring/
scoring_script: score_managedidentity.py
environment:
conda_file: ../../model-1/environment/conda-managedidentity.yaml
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04:latest
instance_type: Standard_DS3_v2
instance_count: 1
environment_variables:
STORAGE_ACCOUNT_NAME: "storage_place_holder"
STORAGE_CONTAINER_NAME: "container_place_holder"
FILE_NAME: "file_place_holder"
UAI_CLIENT_ID: "uai_client_id_place_holder"
YAML: data_collector
$schema: http://azureml/sdk-2-0/OnlineDeployment.json
endpoint_name: my_endpoint
name: blue
model: azureml:my-model-m1:1
environment: azureml:env-m1:1
data_collector:
collections:
model_inputs:
enabled: 'True'
model_outputs:
enabled: 'True'
$schema: http://azureml/sdk-2-0/OnlineDeployment.json
endpoint_name: my_endpoint
name: blue
model: azureml:my-model-m1:1
environment: azureml:env-m1:1
data_collector:
collections:
request:
enabled: 'True'
data:
name: my_request_data_asset
path: azureml://datastores/workspaceblobstore/paths/modelDataCollector/my_endpoint/blue/request
version: 1
response:
enabled: 'True'
data:
name: my_response_data_asset
path: azureml://datastores/workspaceblobstore/paths/modelDataCollector/my_endpoint/blue/response
version: 1
model_inputs:
enabled: 'True'
data:
name: my_model_inputs_data_asset
path: azureml://datastores/workspaceblobstore/paths/modelDataCollector/my_endpoint/blue/model_inputs
version: 1
model_outputs:
enabled: 'True'
data:
name: my_model_outputs_data_asset
path: azureml://datastores/workspaceblobstore/paths/modelDataCollector/my_endpoint/blue/model_outputs
version: 1