다음을 통해 공유


모델 서비스로 마이그레이션

이 문서에서는 작업 영역에서 모델 서비스를 사용하도록 설정하고 모델을 서버리스 컴퓨팅을 기반으로 하는 Mosaic AI 모델 서비스 환경으로 전환하는 방법을 보여 줍니다.

요구 사항

중요 변경 내용

  • 모델 서빙에서 엔드포인트에 대한 요청 형식과 엔드포인트에서의 응답은 레거시 MLflow 모델 서빙과 약간 다릅니다. 새 형식 프로토콜에 대한 자세한 내용은 모델 엔드포인트 점수 매기기를 참조하세요.
  • 모델 서비스에서 엔드포인트 URL에는 serving-endpoints 대신에 model이 포함됩니다.
  • 모델 서비스 제공에는 API 워크플로를 사용하여 리소스를 관리하기 위한 모든 지원이 포함됩니다.
  • 모델 제공은 프로덕션 준비가 완료되었으며 Azure Databricks SLA에서 지원됩니다.

제공된 모델을 모델 서비스로 레거시 MLflow 모델 마이그레이션

레거시 MLflow 모델 서비스를 사용하지 않도록 설정 하지 않고 워크플로를 제공하는 모델 서비스 엔드포인트 및 유연한 전환 모델을 만들 수 있습니다.

다음 단계에서는 UI로 이를 수행하는 방법을 보여줍니다. 레거시 MLflow 모델 서비스를 사용하도록 설정한 각 모델에 대해 다음을 수행합니다.

  1. Unity Catalog모델을 등록하세요.
  2. 기계 학습 작업 영역의 사이드바에서 서비스 엔드포인트로 이동합니다.
  3. 모델을 사용하여 서비스 엔드포인트를 만드는 방법에 대한 엔드포인트 를 제공하는 사용자 지정 모델 만들기에 설명된 워크플로를 따릅니다.
  4. 서비스 엔드포인트에서 제공하는 새 URL을 사용하여 새 채점 형식과 함께 모델을 쿼리하도록 애플리케이션을 전환합니다.
  5. 모델이 전환되면 기계 학습 작업 영역의 사이드바에서 모델로 이동할 수 있습니다.
  6. Select 레거시 MLflow 모델 서비스를 비활성화하려는 모델.
  7. 서비스 탭에서 select중지.
  8. 확인 메시지가 표시됩니다. Select 서비스를 중지합니다.

배포된 모델 버전을 모델 서비스로 마이그레이션

이전 버전의 모델 서비스 기능에서 서비스 엔드포인트는 등록된 모델 버전 Staging 또는 Production의 단계에 따라 생성되었습니다. 해당 환경에서 제공된 모델을 마이그레이션하려면 새 모델 제공 환경에서 해당 동작을 복제할 수 있습니다.

이 섹션에서는 Staging 모델 버전 및 Production 모델 버전에 대한 엔드포인트를 제공하는 별도의 모델을 만드는 방법을 보여줍니다. 다음 단계에서는 제공된 각 모델에 대한 서비스 엔드포인트 API를 사용하여 이 작업을 수행하는 방법을 보여 줍니다.

이 예제에서 등록된 모델 이름 modelA에는 모델 스테이지 Production의 버전 1과 모델 스테이지 Staging의 버전 2가 있습니다.

  1. 등록된 모델에 대한 두 개의 엔드포인트를 만듭니다. 하나는 Staging 모델 버전용이고 다른 하나는 Production 모델 버전용입니다.

    Staging 모델 버전의 경우:

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

    Production 모델 버전의 경우:

    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. 엔드포인트의 상태를 확인합니다.

    스테이징 엔드포인트의 경우: GET /api/2.0/serving-endpoints/modelA-Staging

    프로덕션 엔드포인트의 경우: GET /api/2.0/serving-endpoints/modelA-Production

  3. 엔드포인트가 준비되면 다음을 사용하여 엔드포인트를 쿼리합니다.

    스테이징 엔드포인트의 경우: POST /serving-endpoints/modelA-Staging/invocations

    프로덕션 엔드포인트의 경우: POST /serving-endpoints/modelA-Production/invocations

  4. 모델 버전 전환에 기반한 엔드포인트 Update.

    새 모델 버전 3이 만들어지는 where 시나리오에서는 모델 버전 2를 Production전환할 수 있으며 모델 버전 3은 Staging 전환할 수 있고 모델 버전 1은 Archived. 이러한 변경 내용은 다음과 같이 엔드포인트를 제공하는 별도의 모델에 반영될 수 있습니다.

    Staging 엔드포인트의 경우, update의 새 모델 버전을 사용하려면 엔드포인트를 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
          },
       ],
    }
    

    Production 엔드포인트의 경우, update을 사용하여 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
          },
       ],
    }
    

MosaicML 유추 워크플로를 모델 서비스로 마이그레이션

이 섹션에서는 MosaicML 유추 배포를 Mosaic AI Model Serving로 마이그레이션하는 방법에 대한 지침을 제공하고 Notebook 예제를 포함합니다.

다음 table은 Azure Databricks에서 MosaicML 추론 및 모델 서비스 간의 동등성을 요약합니다.

MosaicML 유추 Mosaic AI 모델 서비스
create_inference_deployment 모델 서비스 엔드포인트 만들기
update_inference_deployment 엔드포인트 제공하는 모델
delete_inference_deployment 엔드포인트를 제공하는 모델 삭제
get_inference_deployment 엔드포인트 제공하는 모델의 상태

다음 Notebook에서는 MosaicML에서 Mosaic AI 모델 서비스로 llama-13b 모델을 마이그레이션하는 예제를 제공합니다.

MosaicML 유추에서 Mosaic AI 모델 서비스 Notebook으로 마이그레이션

Get 노트북

추가 리소스