Share via


Migrera till modellbetjäning

Den här artikeln visar hur du aktiverar modellservering på din arbetsyta och växlar dina modeller till den nya modellserverupplevelsen som bygger på serverlös beräkning.

Krav

Betydande ändringar

Migrera äldre MLflow-modell som betjänar serverade modeller till modellservering

Du kan skapa en modellserverslutpunkt och flexibel övergångsmodell som betjänar arbetsflöden utan att inaktivera äldre MLflow-modellservering.

Följande steg visar hur du gör detta med användargränssnittet. För varje modell där du har äldre MLflow-modellserver aktiverad:

  1. Navigera till Serveringsslutpunkter i sidofältet på din maskininlärningsarbetsyta.
  2. Följ arbetsflödet som beskrivs i Skapa anpassade modell som betjänar slutpunkter om hur du skapar en serverslutpunkt med din modell.
  3. Övergå till att använda den nya URL:en som tillhandahålls av serverdelsslutpunkten för att fråga modellen, tillsammans med det nya bedömningsformatet.
  4. När dina modeller övergår kan du navigera till Modeller i sidofältet på din maskininlärningsarbetsyta.
  5. Välj den modell som du vill inaktivera äldre MLflow-modellservern för.
  6. På fliken Servering väljer du Stoppa.
  7. Ett meddelande verkar bekräfta. Välj Stoppa servering.

Migrera distribuerade modellversioner till Modellservering

I tidigare versioner av funktionen Modellservering skapades serverdelspunkten baserat på fasen i den registrerade modellversionen: Staging eller Production. Om du vill migrera dina betjänade modeller från den upplevelsen kan du replikera det beteendet i den nya modellserveringsupplevelsen.

Det här avsnittet visar hur du skapar separata modellserverslutpunkter för Staging modellversioner och Production modellversioner. Följande steg visar hur du gör detta med API:et för serverslutpunkter för var och en av dina hanterade modeller.

I exemplet har det registrerade modellnamnet modelA version 1 i modellsteget Production och version 2 i modellsteget Staging.

  1. Skapa två slutpunkter för din registrerade modell, en för Staging modellversioner och en annan för Production modellversioner.

    För Staging modellversioner:

    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
               },
            ],
         },
      }
    

    För Production modellversioner:

    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
               },
            ],
         },
      }
    
  2. Kontrollera slutpunkternas status.

    För mellanlagringsslutpunkt: GET /api/2.0/serving-endpoints/modelA-Staging

    För produktionsslutpunkt: GET /api/2.0/serving-endpoints/modelA-Production

  3. När slutpunkterna är klara frågar du slutpunkten med hjälp av:

    För mellanlagringsslutpunkt: POST /serving-endpoints/modelA-Staging/invocations

    För produktionsslutpunkt: POST /serving-endpoints/modelA-Production/invocations

  4. Uppdatera slutpunkten baserat på modellversionsövergångar.

    I scenariot där en ny modell version 3 skapas kan du låta modellversion 2 övergå till Production, medan modellversion 3 kan övergå till Staging och modellversion 1 är Archived. Dessa ändringar kan återspeglas i separata modell som betjänar slutpunkter på följande sätt:

    Staging För slutpunkten uppdaterar du slutpunkten för att använda den nya modellversionen i Staging.

    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
          },
       ],
    }
    

    För Production slutpunkten uppdaterar du slutpunkten för att använda den nya modellversionen i Production.

    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
          },
       ],
    }
    

Migrera MosaicML-slutsatsdragningsarbetsflöden till modellservering

Det här avsnittet innehåller vägledning om hur du migrerar dina MosaicML-slutsatsdragningsdistributioner till Databricks Model Serving och innehåller ett notebook-exempel.

I följande tabell sammanfattas pariteten mellan MosaicML-slutsatsdragning och modell som betjänar Azure Databricks.

MosaicML-slutsatsdragning Databricks-modellservering
create_inference_deployment Skapa en modell som betjänar slutpunkten
update_inference_deployment Uppdatera en modell som betjänar slutpunkten
delete_inference_deployment Ta bort en modell som betjänar slutpunkten
get_inference_deployment Hämta status för en modell som betjänar slutpunkten

Följande notebook-fil innehåller ett guidat exempel på migrering av en llama-13b modell från MosaicML till Databricks Model Serving.

Migrera från MosaicML-slutsatsdragning till Databricks Model Serving Notebook

Hämta notebook-fil

Ytterligare resurser