Migreren naar Model Serving
In dit artikel wordt gedemonstreerd hoe u Model serving inschakelt in uw werkruimte en hoe u uw modellen kunt overzetten naar de Mozaïek AI Model Serving-ervaring die is gebouwd op serverloze berekeningen.
Vereisten
- Geregistreerd model in het MLflow-modelregister.
- Machtigingen voor de geregistreerde modellen, zoals beschreven in de handleiding voor toegangsbeheer.
- Serverloze rekenkracht inschakelen in uw werkruimte.
Belangrijke wijzigingen
- In Model Serving verschilt de indeling van de aanvraag naar het eindpunt en het antwoord van het eindpunt enigszins van verouderde MLflow-modelverdiening. Zie Scoren van een modeleindpunt voor meer informatie over het nieuwe indelingsprotocol.
- In Model serving bevat
serving-endpoints
de eindpunt-URL in plaats vanmodel
. - Model serving bevat volledige ondersteuning voor het beheren van resources met API-werkstromen.
- Model serving is gereed voor productie en wordt ondersteund door de SLA van Azure Databricks.
Verouderde MLflow Model Serving-modellen migreren naar Model Serving
U kunt een Model Serving-eindpunt en flexibel overgangsmodel maken dat werkstromen bedient zonder verouderde MLflow Model Serving uit te schakelen.
In de volgende stappen ziet u hoe u dit kunt doen met de gebruikersinterface. Voor elk model waarvoor verouderde MLflow Model Serving is ingeschakeld:
- Registreer uw model bij Unity Catalog.
- Navigeer naar Eindpunten bedienen op de zijbalk van uw machine learning-werkruimte.
- Volg de werkstroom die wordt beschreven in Aangepast model maken voor eindpunten voor het maken van een dienend eindpunt met uw model.
- Gebruik de nieuwe URL van het service-eindpunt om een query uit te voeren op het model, samen met de nieuwe score-indeling.
- Wanneer uw modellen worden overgezet, kunt u navigeren naar Modellen op de zijbalk van uw machine learning-werkruimte.
- Selecteer het model waarvoor u legacy MLflow Model Serving wilt uitschakelen.
- Selecteer op het tabblad ServerenStoppen.
- Er wordt een bericht weergegeven om te bevestigen. Selecteer Stoppen met.
Geïmplementeerde modelversies migreren naar Model Serving
In eerdere versies van de functionaliteit Model Serving is het servereindpunt gemaakt op basis van de fase van de geregistreerde modelversie: Staging
of Production
. Als u uw bediende modellen wilt migreren vanuit die ervaring, kunt u dat gedrag repliceren in de nieuwe ervaring voor het leveren van modellen.
In deze sectie ziet u hoe u afzonderlijke modellen maakt die eindpunten leveren voor Staging
modelversies en Production
modelversies. In de volgende stappen ziet u hoe u dit kunt doen met de API voor het leveren van eindpunten voor elk van uw bediende modellen.
In het voorbeeld heeft de naam van het geregistreerde model modelA
versie 1 in de modelfase Production
en versie 2 in de modelfase Staging
.
Maak twee eindpunten voor uw geregistreerde model, één voor
Staging
modelversies en een voorProduction
modelversies.Voor
Staging
modelversies:POST /api/2.0/serving-endpoints { "name":"modelA-Staging" "config": { "served_entities": [ { "entity_name":"model-A", "entity_version":"2", // Staging Model Version "workload_size":"Small", "scale_to_zero_enabled":true }, ], }, }
Voor
Production
modelversies:POST /api/2.0/serving-endpoints { "name":"modelA-Production" "config": { "served_entities": [ { "entity_name":"model-A", "entity_version":"1", // Production Model Version "workload_size":"Small", "scale_to_zero_enabled":true }, ], }, }
Controleer de status van de eindpunten.
Voor faseringseindpunt:
GET /api/2.0/serving-endpoints/modelA-Staging
Voor productie-eindpunt:
GET /api/2.0/serving-endpoints/modelA-Production
Zodra de eindpunten gereed zijn, voert u een query uit op het eindpunt met behulp van:
Voor faseringseindpunt:
POST /serving-endpoints/modelA-Staging/invocations
Voor productie-eindpunt:
POST /serving-endpoints/modelA-Production/invocations
Werk het eindpunt bij op basis van modelversieovergangen.
In het scenario waarin een nieuwe modelversie 3 wordt gemaakt, kunt u de modelversie 2 overzetten naar
Production
, terwijl modelversie 3 kan overstappen opStaging
en modelversie 1 wordtArchived
. Deze wijzigingen kunnen als volgt worden doorgevoerd in afzonderlijke modellen die eindpunten leveren:Werk voor het
Staging
-eindpunt het eindpunt bij om de nieuwe modelversie inStaging
te gebruiken.PUT /api/2.0/serving-endpoints/modelA-Staging/config { "served_entities": [ { "entity_name":"model-A", "entity_version":"3", // New Staging model version "workload_size":"Small", "scale_to_zero_enabled":true }, ], }
Werk het eindpunt
Production
bij om de nieuwe modelversie inProduction
te gebruiken.PUT /api/2.0/serving-endpoints/modelA-Production/config { "served_entities": [ { "entity_name":"model-A", "entity_version":"2", // New Production model version "workload_size":"Small", "scale_to_zero_enabled":true }, ], }
MozaïekML-deductiewerkstromen migreren naar Model serving
Deze sectie bevat richtlijnen voor het migreren van uw MozaïekML-deductie-implementaties naar Mosaic AI Model Serving en bevat een voorbeeld van een notebook.
De volgende tabel bevat een overzicht van de pariteit tussen inferentie van MosaicML en modelbediening op Azure Databricks.
MozaïekML-deductie | Mozaïek AI-model bedienen |
---|---|
create_inference_deployment | Een eindpunt voor het leveren van een model maken |
update_inference_deployment | Een modelserve-eindpunt bijwerken |
delete_inference_deployment | Een eindpunt voor het leveren van een model verwijderen |
get_inference_deployment | Status ophalen van een model service-eindpunt |
Het volgende notebook bevat een begeleid voorbeeld van het migreren van een llama-13b
model van MosaicML naar Mosaic AI Model Serving.