Folyamat üzembe helyezése online végponton valós idejű következtetés céljából parancssori felülettel
Ebben a cikkben megtanulhatja, hogyan helyezheti üzembe a folyamatot egy felügyelt online végponton vagy egy Kubernetes online végponton , hogy valós idejű következtetést használjon az Azure Machine Learning v2 parancssori felülettel.
Mielőtt elkezdené, győződjön meg arról, hogy megfelelően tesztelte a folyamatot, és győződjön meg arról, hogy készen áll az éles üzembe helyezésre. A folyamat teszteléséről további információt a folyamat tesztelése című témakörben talál. A folyamat tesztelése után megtanulhatja, hogyan hozhat létre felügyelt online végpontot és üzembe helyezést, és hogyan használhatja a végpontot valós idejű következtetéshez.
- Ez a cikk a parancssori felület használatát ismerteti.
- A Python SDK-t ez a cikk nem ismerteti. Ehelyett tekintse meg a GitHub-mintajegyzetfüzetet. A Python SDK használatához rendelkeznie kell az Azure Machine Learninghez készült Python SDK v2-ével. További információ: Az Azure Machine Learninghez készült Python SDK v2 telepítése.
Fontos
A cikkben megjelölt (előzetes verziójú) elemek jelenleg nyilvános előzetes verzióban érhetők el. Az előzetes verzió szolgáltatásszint-szerződés nélkül érhető el, és éles számítási feladatokhoz nem ajánlott. Előfordulhat, hogy néhány funkció nem támogatott, vagy korlátozott képességekkel rendelkezik. További információ: Kiegészítő használati feltételek a Microsoft Azure előzetes verziójú termékeihez.
Előfeltételek
- Az Azure CLI és az Azure Machine Learning bővítmény az Azure CLI-hez. További információ: A parancssori felület (v2) telepítése, beállítása és használata.
- Egy Azure Machine Learning-munkaterület. Ha nincs ilyenje, a gyorsútmutató lépéseit követve hozzon létre egyet a munkaterület erőforrásainak létrehozása című cikkben .
- Az Azure-beli szerepköralapú hozzáférés-vezérlések (Azure RBAC) az Azure gépi tanulás műveleteihez való hozzáférést biztosítják. A cikkben ismertetett lépések végrehajtásához a felhasználói fiókjához hozzá kell rendelni az Azure Machine Learning-munkaterület tulajdonosi vagy közreműködői szerepkörét, vagy egy egyéni szerepkört, amely lehetővé teszi a "Microsoft.MachineLearningServices/workspaces/onlineEndpoints/" használatát. Ha online végpontok/üzemelő példányok létrehozásához/kezeléséhez a Studiót használja, az erőforráscsoport tulajdonosától további "Microsoft.Resources/deployments/write" engedélyre lesz szüksége. További információ: Azure Machine Learning-munkaterülethez való hozzáférés kezelése.
Feljegyzés
A felügyelt online végpont csak a felügyelt virtuális hálózatot támogatja. Ha a munkaterület egyéni virtuális hálózaton van, üzembe helyezheti a Kubernetes online végpontján, vagy üzembe helyezhet más platformokon, például a Dockerben.
Virtuálisgép-kvóta kiosztása üzembe helyezéshez
Felügyelt online végpontok esetén az Azure Machine Learning a számítási erőforrások 20%-át fenntartja a frissítések végrehajtásához. Ezért ha adott számú példányt kér egy üzemelő példányban, a hiba elkerülése érdekében rendelkeznie kell egy rendelkezésre álló kvótával ceil(1.2 * number of instances requested for deployment) * number of cores for the VM SKU
. Ha például egy Standard_DS3_v2 virtuális gép 10 példányát kéri le (amely négy maggal rendelkezik), akkor 48 magra (12 példány négy magra) vonatkozó kvótával kell rendelkeznie. A használat megtekintéséhez és a kvótanövelések kéréséhez tekintse meg a használatot és a kvótákat az Azure Portalon.
Folyamat előkészítése üzembe helyezésre
Minden folyamat rendelkezik egy mappával, amely kódokat/kéréseket, definíciókat és a folyamat egyéb összetevőit tartalmazza. Ha felhasználói felülettel fejlesztette ki a folyamatot, letöltheti a folyamatmappát a folyamat részleteinek oldaláról. Ha a folyamatot cli-vel vagy SDK-val fejlesztette ki, akkor már rendelkeznie kell a folyamatmappával.
Ez a cikk az "alapszintű csevegés" mintafolyamatot használja példaként az Azure Machine Learning által felügyelt online végponton való üzembe helyezéshez.
Fontos
Ha már használta additional_includes
a folyamatot, először a folyamatmappák feloldott verziójának lekéréséhez kell használnia pf flow build --source <path-to-flow> --output <output-path> --format docker
.
Alapértelmezett munkaterület beállítása
A parancssori felület alapértelmezett munkaterületének és erőforráscsoportjának beállításához használja az alábbi parancsokat.
az account set --subscription <subscription ID>
az configure --defaults workspace=<Azure Machine Learning workspace name> group=<resource group>
A folyamat regisztrálása modellként (nem kötelező)
Az online üzembe helyezés során hivatkozhat egy regisztrált modellre, vagy megadhatja a modell elérési útját (amelyből feltöltheti a modellfájlokat) a szövegbe. Javasoljuk, hogy regisztrálja a modellt, és adja meg a modell nevét és verzióját az üzembehelyezési definícióban. Használja az űrlapot model:<model_name>:<version>
.
Az alábbiakban egy modelldefiníciós példa látható egy csevegési folyamathoz.
Feljegyzés
Ha a folyamat nem csevegési folyamat, akkor ezeket nem kell hozzáadnia properties
.
$schema: https://azuremlschemas.azureedge.net/latest/model.schema.json
name: basic-chat-model
path: ../../../../examples/flows/chat/basic-chat
description: register basic chat flow folder as a custom model
properties:
# In AuzreML studio UI, endpoint detail UI Test tab needs this property to know it's from prompt flow
azureml.promptflow.source_flow_id: basic-chat
# Following are properties only for chat flow
# endpoint detail UI Test tab needs this property to know it's a chat flow
azureml.promptflow.mode: chat
# endpoint detail UI Test tab needs this property to know which is the input column for chat flow
azureml.promptflow.chat_input: question
# endpoint detail UI Test tab needs this property to know which is the output column for chat flow
azureml.promptflow.chat_output: answer
A az ml model create --file model.yaml
modell regisztrálása a munkaterületre.
A végpont definiálása
Végpont definiálásához meg kell adnia a következőket:
- Végpont neve: A végpont neve. Egyedinek kell lennie az Azure-régióban. Az elnevezési szabályokkal kapcsolatos további információkért tekintse meg a végpontkorlátokat.
- Hitelesítési mód: A végpont hitelesítési módszere. Válasszon a kulcsalapú hitelesítés és az Azure Machine Learning-jogkivonat-alapú hitelesítés között. A kulcsok nem járnak le, de a jogkivonatok lejárnak. A hitelesítéssel kapcsolatos további információkért lásd : Hitelesítés online végponton. Tetszés szerint leírást és címkéket is hozzáadhat a végponthoz.
- Tetszés szerint leírást és címkéket is hozzáadhat a végponthoz.
- Ha a munkaterülethez csatolt Kubernetes-fürtön (AKS- vagy Arc-kompatibilis fürtön) szeretne üzembe helyezni, a folyamatot kubernetes online végpontként helyezheti üzembe.
Az alábbiakban egy végpontdefiníciós példát mutatunk be, amely alapértelmezés szerint rendszer által hozzárendelt identitást használ.
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineEndpoint.schema.json
name: basic-chat-endpoint
auth_mode: key
properties:
# this property only works for system-assigned identity.
# if the deploy user has access to connection secrets,
# the endpoint system-assigned identity will be auto-assigned connection secrets reader role as well
enforce_access_to_default_secret_stores: enabled
Kulcs | Leírás |
---|---|
$schema |
(Nem kötelező) A YAML-séma. A YAML-fájlban elérhető összes lehetőség megtekintéséhez a sémát az előző kódrészletben tekintheti meg egy böngészőben. |
name |
A végpont neve. |
auth_mode |
Kulcsalapú hitelesítéshez használható key . Azure Machine Learning-jogkivonat-alapú hitelesítéshez használható aml_token . A legújabb jogkivonat lekéréséhez használja a az ml online-endpoint get-credentials parancsot. |
property: enforce_access_to_default_secret_stores (előzetes verzió) |
– Alapértelmezés szerint a végpont rendszer-hozzárendelt identitást használ. Ez a tulajdonság csak a rendszer által hozzárendelt identitásokhoz használható. – Ez a tulajdonság azt jelenti, hogy ha rendelkezik a kapcsolati titkos kódok olvasói engedélyével, a végpont rendszer által hozzárendelt identitása automatikusan hozzárendeli a munkaterület Azure Machine Learning-munkaterület kapcsolati titkos kódolvasó szerepkörét, hogy a végpont megfelelően férhessen hozzá a kapcsolatokhoz a következtetés végrehajtásakor. - Alapértelmezés szerint ez a tulajdonság "letiltva". |
Ha online Kubernetes-végpontot hoz létre, a következő további attribútumokat kell megadnia:
Kulcs | Leírás |
---|---|
compute |
A Kubernetes számítási célja a végpont üzembe helyezéséhez. |
További végpontkonfigurációkért tekintse meg a felügyelt online végpontséma című témakört.
Fontos
Ha a folyamat Microsoft Entra-azonosítóalapú hitelesítési kapcsolatokat használ, függetlenül attól, hogy rendszer által hozzárendelt identitást vagy felhasználó által hozzárendelt identitást használ, mindig megfelelő szerepköröket kell adnia a felügyelt identitásnak a megfelelő erőforrásokhoz, hogy API-hívásokat kezdeményezhessenek az adott erőforráshoz. Ha például az Azure OpenAI-kapcsolat Microsoft Entra-azonosítóalapú hitelesítést használ, a végpont felügyelt identitásának Cognitive Services OpenAI felhasználói vagy Cognitive Services OpenAI-közreműködői szerepkört kell biztosítania a megfelelő Azure OpenAI-erőforrásokhoz.
Felhasználó által hozzárendelt identitás használata
Alapértelmezés szerint online végpont létrehozásakor a rendszer automatikusan létrehoz egy rendszer által hozzárendelt felügyelt identitást. A végponthoz megadhat egy meglévő, felhasználó által hozzárendelt felügyelt identitást is.
Ha felhasználó által hozzárendelt identitást szeretne használni, a következő további attribútumokat adhatja meg a endpoint.yaml
következőben:
identity:
type: user_assigned
user_assigned_identities:
- resource_id: user_identity_ARM_id_place_holder
Emellett meg kell adnia a Client ID
felhasználó által hozzárendelt identitást is az deployment.yaml
alábbiak szerintenvironment_variables
. Ezt a Client ID
felügyelt identitásban találja az Overview
Azure Portalon.
environment_variables:
AZURE_CLIENT_ID: <client_id_of_your_user_assigned_identity>
Fontos
A végpont létrehozása előtt meg kell adnia a következő engedélyeket a felhasználó által hozzárendelt identitásnak, hogy hozzáférhessen az Azure-erőforrásokhoz a következtetés végrehajtásához. További információ arról , hogyan adhat engedélyeket a végponti identitáshoz.
Hatókör | Szerepkör | Miért van rá szükség? |
---|---|---|
Azure Machine Learning-munkaterület | Azure Machine Learning-Munkaterület kapcsolat titkos kód olvasó szerepkör VAGY egy testre szabott szerepkör a „Microsoft.MachineLearningServices/workspaces/connections/listsecrets/action” használatával | Munkaterület-kapcsolat beolvasása |
Munkaterület tárolóregisztrációs adatbázis | ACR-lekérés | Tárolólemezkép áthúzása |
Munkaterület alapértelmezett tároló | Storage Blob adatolvasó | Modell betöltése a tárolóból |
(Opcionális) Azure Machine Learning-munkaterület | Munkaterület-metrikák szerkesztő | Miután üzembe helyezte a végpontot, ha a végponthoz kapcsolódó metrikákat, például a CPU/GPU/Lemez/memória kihasználtságát szeretné nyomon követni, akkor ezt az engedélyt meg kell adnia az identitásnak. |
Az üzembe helyezés definiálása
Az üzembe helyezés a tényleges következtetést okozó modell üzemeltetéséhez szükséges erőforrások készlete.
Az alábbiakban egy üzembehelyezési definíciós példát mutatunk be, amelyben a model
szakasz a regisztrált folyamatmodellre hivatkozik. A folyamatmodell elérési útját a sorban is megadhatja.
$schema: https://azuremlschemas.azureedge.net/latest/managedOnlineDeployment.schema.json
name: blue
endpoint_name: basic-chat-endpoint
model: azureml:basic-chat-model:1
# You can also specify model files path inline
# path: examples/flows/chat/basic-chat
environment:
image: mcr.microsoft.com/azureml/promptflow/promptflow-runtime:latest
# inference config is used to build a serving container for online deployments
inference_config:
liveness_route:
path: /health
port: 8080
readiness_route:
path: /health
port: 8080
scoring_route:
path: /score
port: 8080
instance_type: Standard_E16s_v3
instance_count: 1
environment_variables:
# for pulling connections from workspace
PRT_CONFIG_OVERRIDE: deployment.subscription_id=<subscription_id>,deployment.resource_group=<resource_group>,deployment.workspace_name=<workspace_name>,deployment.endpoint_name=<endpoint_name>,deployment.deployment_name=<deployment_name>
# (Optional) When there are multiple fields in the response, using this env variable will filter the fields to expose in the response.
# For example, if there are 2 flow outputs: "answer", "context", and I only want to have "answer" in the endpoint response, I can set this env variable to '["answer"]'.
# If you don't set this environment, by default all flow outputs will be included in the endpoint response.
# PROMPTFLOW_RESPONSE_INCLUDED_FIELDS: '["category", "evidence"]'
Attribútum | Ismertetés |
---|---|
Név | Az üzembe helyezés neve. |
Végpont neve | Az üzembe helyezés létrehozásához szükséges végpont neve. |
Modell | 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. |
Környezet | A modellt és a kódot üzemeltető környezet. A következőket tartalmazza: - image - inference_config : egy kiszolgálótároló létrehozására szolgál az online üzemelő példányokhoz, beleértve a liveness route .scoring_route readiness_route |
Példány típusa | 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. |
Példányok száma | Az üzembe helyezéshez használandó példányok száma. Alapozza az értéket a várt számítási feladatra. A magas rendelkezésre állás érdekében javasoljuk, hogy állítsa be az értéket legalább 3 . A frissítések végrehajtásához további 20%-ot foglalunk le. További információkért tekintse meg az online végpontok korlátait. |
Környezeti változók | A folyamatból üzembe helyezett végpontokhoz a következő környezeti változókat kell beállítani: - (kötelező) PRT_CONFIG_OVERRIDE : a munkaterületről történő kapcsolatok lekéréséhez - (nem kötelező) PROMPTFLOW_RESPONSE_INCLUDED_FIELDS: : Ha több mező is szerepel a válaszban, az env változó használatával szűrheti a mezőket, hogy elérhetővé tegye őket a válaszban. Ha például két folyamatkimenet van: "answer", "context", és ha csak "válasz" van a végpont válaszában, akkor ezt az env változót "["answer"]" értékre állíthatja. |
Fontos
Ha a folyamatmappa rendelkezik egy requirements.txt
olyan fájllal, amely tartalmazza a folyamat végrehajtásához szükséges függőségeket, az üzembe helyezést egyéni környezeti lépésekkel kell követnie az egyéni környezet létrehozásához, beleértve a függőségeket is.
Ha online Kubernetes-üzembe helyezést hoz létre, a következő további attribútumokat kell megadnia:
Attribútum | Leírás |
---|---|
Típus | Az üzembe helyezés típusa. Állítsa be a kubernetes értékre. |
Példány típusa | A kubernetes-fürtben az üzembe helyezéshez használt példánytípus az üzembe helyezés kérelem-/korlát számítási erőforrását jelöli. További információ: Példánytípus létrehozása és kezelése. |
Az online végpont üzembe helyezése az Azure-ban
A végpont felhőben való létrehozásához futtassa a következő kódot:
az ml online-endpoint create --file endpoint.yml
A végpont alatt elnevezett blue
üzembe helyezés létrehozásához futtassa a következő kódot:
az ml online-deployment create --file blue-deployment.yml --all-traffic
Feljegyzés
Ez az üzembe helyezés több mint 15 percet is igénybe vehet.
Tipp.
Ha nem szeretné letiltani a CLI-konzolt, hozzáadhatja a jelölőt --no-wait
a parancshoz. Ez azonban leállítja az üzembe helyezési állapot interaktív megjelenítését.
Fontos
A --all-traffic
fenti az ml online-deployment create
jelölő a végpont forgalmának 100%-át lefoglalja az újonnan létrehozott kék üzembe helyezéshez. Bár ez fejlesztési és tesztelési célokra hasznos, éles környezetben érdemes lehet explicit paranccsal megnyitni az új üzembe helyezés felé irányuló forgalmat. Például: az ml online-endpoint update -n $ENDPOINT_NAME --traffic "blue=100"
.
A végpont és az üzembe helyezés állapotának ellenőrzése
A végpont állapotának ellenőrzéséhez futtassa a következő kódot:
az ml online-endpoint show -n basic-chat-endpoint
Az üzembe helyezés állapotának ellenőrzéséhez futtassa a következő kódot:
az ml online-deployment get-logs --name blue --endpoint basic-chat-endpoint
A végpont meghívása adatok pontozásához a modell használatával
A következő módon hozhat létre sample-request.json fájlt:
{
"question": "What is Azure Machine Learning?",
"chat_history": []
}
az ml online-endpoint invoke --name basic-chat-endpoint --request-file sample-request.json
HTTP-ügyféllel is meghívhatja, például curl használatával:
ENDPOINT_KEY=<your-endpoint-key>
ENDPOINT_URI=<your-endpoint-uri>
curl --request POST "$ENDPOINT_URI" --header "Authorization: Bearer $ENDPOINT_KEY" --header 'Content-Type: application/json' --data '{"question": "What is Azure Machine Learning?", "chat_history": []}'
A végpontkulcsot és a végpont URI-ját az Azure Machine Learning-munkaterületről szerezheti be a végpontok>alapszintű használati adatainak felhasználásával.>
Speciális konfigurációk
Üzembe helyezés különböző kapcsolatokkal a folyamatfejlesztésből
Előfordulhat, hogy felül szeretné bírálni a folyamat kapcsolatait az üzembe helyezés során.
Ha például a flow.dag.yaml fájl egy névvel ellátott my_connection
kapcsolatot használ, felülbírálhatja az üzembe helyezési yaml környezeti változóinak hozzáadásával, például az alábbiak szerint:
1. lehetőség: a kapcsolat nevének felülbírálása
environment_variables:
my_connection: <override_connection_name>
Ha felül szeretné bírálni a kapcsolat egy adott mezőjét, felülbírálhatja a környezeti változók elnevezési mintával <connection_name>_<field_name>
való hozzáadásával. Ha például a folyamat egy konfigurációs chat_deployment_name
kulccsal elnevezett my_connection
kapcsolatot használ, a kiszolgáló háttérrendszere alapértelmezés szerint megkísérli lekérni chat_deployment_name
a MY_CONNECTION_CHAT_DEPLOYMENT_NAME környezeti változót. Ha a környezeti változó nincs beállítva, a folyamatdefiníció eredeti értékét fogja használni.
2. lehetőség: felülbírálás az eszközre való hivatkozással
environment_variables:
my_connection: ${{azureml://connections/<override_connection_name>}}
Feljegyzés
Csak ugyanazon a munkaterületen belüli kapcsolatra hivatkozhat.
Üzembe helyezés egyéni környezettel
Ez a szakasz bemutatja, hogyan használhatja a Docker buildkörnyezetét az üzembe helyezés környezetének meghatározásához, feltéve, hogy ismeri a Docker - és az Azure Machine Learning-környezeteket.
A helyi környezetben hozzon létre egy mappát
image_build_with_reqirements
, amely a következő fájlokat tartalmazza:|--image_build_with_reqirements | |--requirements.txt | |--Dockerfile
A
requirements.txt
folyamatot a folyamat mappájából kell örökölni, amely a folyamat függőségeinek nyomon követésére szolgál.A
Dockerfile
tartalom a következő:FROM mcr.microsoft.com/azureml/promptflow/promptflow-runtime:latest COPY ./requirements.txt . RUN pip install -r requirements.txt
cserélje le az üzembehelyezési definíció yaml fájljának környezeti szakaszát a következő tartalomra:
environment: build: path: image_build_with_reqirements dockerfile_path: Dockerfile # deploy prompt flow is BYOC, so we need to specify the inference config inference_config: liveness_route: path: /health port: 8080 readiness_route: path: /health port: 8080 scoring_route: path: /score port: 8080
FastAPI kiszolgálómotor használata (előzetes verzió)
Alapértelmezés szerint a parancssori folyamat kiszolgálása FLASK-kiszolgálómotort használ. A parancssori SDK 1.10.0-s verziójától kezdve a FastAPI-alapú kiszolgálómotor támogatott. A kiszolgálómotort egy környezeti változó PROMPTFLOW_SERVING_ENGINE
megadásával használhatjafastapi
.
environment_variables:
PROMPTFLOW_SERVING_ENGINE=fastapi
Egyidejűség konfigurálása az üzembe helyezéshez
A folyamat online üzembe helyezésekor két környezeti változó van, amelyeket konfigurál az egyidejűséghez: PROMPTFLOW_WORKER_NUM
és PROMPTFLOW_WORKER_THREADS
. Emellett a paramétert is be kell állítania max_concurrent_requests_per_instance
.
Az alábbi példa bemutatja, hogyan konfigurálható a deployment.yaml
fájlban.
request_settings:
max_concurrent_requests_per_instance: 10
environment_variables:
PROMPTFLOW_WORKER_NUM: 4
PROMPTFLOW_WORKER_THREADS: 1
PROMPTFLOW_WORKER_NUM: Ez a paraméter határozza meg az egy tárolóban elindítandó feldolgozók (folyamatok) számát. Az alapértelmezett érték megegyezik a processzormagok számával, a maximális érték pedig a processzormagok számának kétszerese.
PROMPTFLOW_WORKER_THREADS: Ez a paraméter határozza meg az egy feldolgozóban elindítandó szálak számát. Az alapértelmezett érték 1.
Feljegyzés
Ha 1-nél nagyobb értéket állít be
PROMPTFLOW_WORKER_THREADS
, győződjön meg arról, hogy a folyamatkód szálbiztos.max_concurrent_requests_per_instance: Az üzemelő példányonkénti egyidejű kérelmek maximális száma. Az alapértelmezett érték 10.
A javasolt érték a
max_concurrent_requests_per_instance
kérelem időpontjától függ:- Ha a kérés ideje meghaladja a 200 ms-t, állítsa a következőre
max_concurrent_requests_per_instance
PROMPTFLOW_WORKER_NUM * PROMPTFLOW_WORKER_THREADS
: . - Ha a kérelem időtartama kisebb vagy egyenlő 200 ms-nál, állítsa a következőre
max_concurrent_requests_per_instance
(1.5-2) * PROMPTFLOW_WORKER_NUM * PROMPTFLOW_WORKER_THREADS
: . Ez javíthatja a teljes átviteli sebességet azáltal, hogy lehetővé teszi egyes kérések várólistára helyezését a kiszolgáló oldalán. - Ha régiók közötti kéréseket küld, a küszöbértéket 200 ms-ról 1 mp-re módosíthatja.
- Ha a kérés ideje meghaladja a 200 ms-t, állítsa a következőre
A fenti paraméterek finomhangolása során a következő metrikákat kell figyelnie az optimális teljesítmény és stabilitás érdekében:
- Az üzemelő példány processzor-/memóriakihasználtsága
- Nem 200 válasz (4xx, 5xx)
- Ha 429-re válaszol, ez általában azt jelzi, hogy vagy újra kell hangolnia az egyidejűségi beállításokat a fenti útmutató alapján, vagy skáláznia kell az üzembe helyezést.
- Az Azure OpenAI szabályozásának állapota
Végpontok figyelése
Általános metrikák gyűjtése
Nyomkövetési adatok és rendszermetrikák gyűjtése a következtetési idő alatt
A nyomkövetési adatokat és a folyamat üzembe helyezésére vonatkozó metrikákat (tokenhasználat, folyamatkésés stb.) is gyűjtheti a munkaterülethez társított Application Insightshoz való következtetés során, ha hozzáad egy tulajdonságot app_insights_enabled: true
az üzembehelyezési yaml-fájlhoz. További információ a folyamat gyors üzembe helyezésének nyomkövetéséről és metrikáiról.
A parancssori folyamatspecifikus metrikák és nyomkövetés a munkaterülethez csatolt alkalmazáselemzéseken kívül más Application Insights-hoz is megadható. Az üzembe helyezési yaml-fájlban az alábbiak szerint adhatja meg a környezeti változót. Az Application Insights kapcsolati sztring az Azure Portal Áttekintés lapján találja.
environment_variables:
APPLICATIONINSIGHTS_CONNECTION_STRING: <connection_string>
Feljegyzés
Ha csak be van állítva app_insights_enabled: true
, de a munkaterület nem rendelkezik csatolt Application Insightsszal, az üzembe helyezés nem fog meghiúsulni, de nem lesz összegyűjtött adat.
Ha egyszerre adja meg mind app_insights_enabled: true
a fenti környezeti változót, a nyomkövetési adatokat és a metrikákat a rendszer elküldi a munkaterülethez társított Application Insightsnak. Ezért ha egy másik Application Insightst szeretne megadni, csak a környezeti változót kell megtartania.
Gyakori hibák
A felsőbb rétegbeli kérések időtúllépésével kapcsolatos probléma a végpont használatakor
Ezt a hibát általában időtúllépés okozza. Alapértelmezés szerint request_timeout_ms
5000. Legfeljebb 5 percet, azaz 300 000 ms-ot adhat meg. Az alábbi példa bemutatja, hogyan adható meg a kérelem időtúllépése az üzembehelyezési yaml-fájlban. Az üzembehelyezési sémáról itt olvashat bővebben.
request_settings:
request_timeout_ms: 300000
Feljegyzés
A 300 000 ms-os időtúllépés csak a parancssori folyamatból származó, maanged online üzemelő példányok esetében működik. Győződjön meg arról, hogy az alábbiak szerint hozzáadott tulajdonságokat a modellhez (vagy a beágyazott modell specifikációja az üzembe helyezési yaml-ben, vagy az önálló modell specifikációja yaml), hogy jelezze, hogy ez egy központi telepítés a parancssori folyamatból.
properties:
# indicate a deployment from prompt flow
azureml.promptflow.source_flow_id: <value>
Következő lépések
- További információ a felügyelt online végpont sémájáról és a felügyelt online üzembehelyezési sémáról.
- További információ a végpont felhasználói felületen való teszteléséről és a végpont figyeléséről.
- További információ a felügyelt online végpontok hibaelhárításáról.
- A parancssori folyamatok üzembe helyezésének hibaelhárítása.
- Miután továbbfejleszti a folyamatot, és biztonságos bevezetési stratégiával szeretné üzembe helyezni a továbbfejlesztett verziót, tekintse meg az online végpontok biztonságos bevezetéséről szóló cikket.
- További információ a folyamatok más platformokon történő üzembe helyezéséről , például helyi fejlesztési szolgáltatás, Docker-tároló, Azure APP szolgáltatás stb.