Eseguire la migrazione a Model Serving
Questo articolo illustra come abilitare La gestione dei modelli nell'area di lavoro e passare ai modelli all'esperienza di gestione del modello di intelligenza artificiale mosaico basata su calcolo serverless.
Requisiti
- Tutti i modelli registrati si trovano nel registro di modelli di MLflow.
- Autorizzazioni per i modelli registrati come descritto nella guida al controllo di accesso.
- Abilitare l’elaborazione serverless nell'area di lavoro.
Modifiche significative
- In Model Serving il formato della richiesta all'endpoint e la risposta dall'endpoint sono leggermente diversi da Legacy MLflow Model Serving. Per informazioni dettagliate sul nuovo protocollo di formato, vedere Assegnazione dei punteggi a un endpoint del modello.
- In Model Serving l'URL dell'endpoint include
serving-endpoints
invece dimodel
. - Model Serving include il supporto completo per la gestione delle risorse con i flussi di lavoro dell'API.
- Model Serving è pronto per la produzione e supportato dal contratto di servizio di Azure Databricks.
Eseguire la migrazione della gestione dei modelli Legacy MLflow ai modelli Model Serving
È possibile creare un endpoint Model Serving e un modello di transizione flessibile che gestisce i flussi di lavoro senza disabilitare Legacy MLflow Model Serving.
I passaggi seguenti illustrano come eseguire questa operazione con l'interfaccia utente. Per ogni modello in cui è abilitata la gestione del modello MLflow Legacy:
- Registrare il modello in Unity Catalog.
- Spostarsi a Gestione degli endpoint nella barra laterale dell'area di lavoro di apprendimento automatico.
- Seguire il flusso di lavoro descritto in Creare endpoint personalizzati che servono gli endpoint per creare un endpoint di gestione con il modello.
- Eseguire la transizione dell'applicazione per usare il nuovo URL fornito dall'endpoint di servizio per eseguire query sul modello, insieme al nuovo formato di assegnazione dei punteggi.
- Quando i modelli vengono trasferiti, è possibile passare a Modelli sulla barra laterale dell'area di lavoro di apprendimento automatico.
- Selezionare il modello per il quale si vuole disabilitare la gestione del modello MLflow Legacy.
- Nella scheda Serve selezionare Arresta.
- Viene visualizzato un messaggio per confermare. Seleziona Interrompi modifica.
Eseguire la migrazione delle versioni del modello distribuite a Model Serving
Nelle versioni precedenti della funzionalità Model Serving l'endpoint di gestione è stato creato in base alla fase della versione del modello registrata: Staging
o Production
. Per eseguire la migrazione dei modelli serviti da tale esperienza, è possibile replicare tale comportamento nella nuova esperienza di gestione dei modelli.
Questa sezione illustra come creare endpoint di gestione del modello separati per Staging
le versioni del modello e Production
le versioni del modello. I passaggi seguenti illustrano come eseguire questa operazione con l'API di gestione degli endpoint per ognuno dei modelli serviti.
Nell'esempio il nome modelA
del modello registrato ha la versione 1 nella fase Production
del modello e la versione 2 nella fase Staging
del modello .
Creare due endpoint per il modello registrato, uno per
Staging
le versioni del modello e un altro perProduction
le versioni del modello.Per
Staging
le versioni del modello: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 }, ], }, }
Per
Production
le versioni del modello: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 }, ], }, }
Verificare lo stato degli endpoint.
Usare l'endpoint di gestione temporanea:
GET /api/2.0/serving-endpoints/modelA-Staging
Endpoint di produzione:
GET /api/2.0/serving-endpoints/modelA-Production
Quando gli endpoint sono pronti, eseguire una query sull'endpoint usando:
Usare l'endpoint di gestione temporanea:
POST /serving-endpoints/modelA-Staging/invocations
Endpoint di produzione:
POST /serving-endpoints/modelA-Production/invocations
Aggiornare l'endpoint in base alle transizioni di versione del modello.
Nello scenario in cui viene creata una nuova versione 3 del modello, è possibile eseguire la transizione del modello versione 2 a
Production
, mentre la versione 3 del modello può passare aStaging
e la versione 1 del modello èArchived
. Queste modifiche possono essere riflesse in endpoint separati che servono i modelli come indicato di seguito:Per l'endpoint
Staging
, aggiornare l'endpoint per usare la nuova versione del modello inStaging
.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 }, ], }
Per l'endpoint
Production
, aggiornare l'endpoint per usare la nuova versione del modello inProduction
.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 }, ], }
Eseguire la migrazione dei flussi di lavoro di inferenza MosaicML a Model Serving
Questa sezione fornisce materiale sussidiario su come eseguire la migrazione delle distribuzioni di inferenza MosaicML a Mosaic AI Model Serving e include un esempio di notebook.
La tabella seguente riepiloga la parità tra l'inferenza MosaicML e la gestione di modelli in Azure Databricks.
Inferenza di MosaicML | Mosaic AI Model Serving |
---|---|
create_inference_deployment | Creare un endpoint di gestione dei modelli |
update_inference_deployment | Aggiornare un endpoint di gestione di un modello |
delete_inference_deployment | Eliminare un endpoint di gestione di un modello |
get_inference_deployment | Ottenere lo stato di un endpoint di gestione del modello |
Il notebook seguente fornisce un esempio guidato della migrazione di un llama-13b
modello da MosaicML a Mosaic AI Model Serving.