Snowflake Model Registry 사용자 인터페이스

참고

Model Registry Snowsight UI 는 일반적으로 모든 배포에서 일반 공급으로 제공됩니다.

SPCS 모델 제공을 위한 추론 서비스 UI는 AWS, Azure 및 GCP 상용 배포에서만 미리 보기로 제공됩니다.

Snowsight의 Models 페이지에서 모든 머신 러닝 모델을 찾을 수 있습니다. 메타데이터와 배포를 볼 수도 있습니다.

모델 세부 정보

Models 페이지에는 사용자가 만들어 Snowflake Model Registry에 로깅한 모델이나 USAGE 또는 READ 권한을 통해 모델에 액세스할 수 있는 모델을 표시합니다. 둘 다 Snowpark ML 및 외부에서 제공되는 모델(예: Hugging Face의 모델)을 사용하여 개발된 모델입니다. 또한 Cortex Fine-tuned 모델도 표시하며, 향후 릴리스에서 Snowflake에서 만들 수 있는 다른 모델 타입을 포함할 수 있습니다.

모델 페이지를 표시하려면 탐색 메뉴에서 AI & ML » :ui:`Models`를 선택합니다. 결과 목록에는 현재 역할이 액세스할 수 있는 모든 데이터베이스와 스키마의 Snowflake Model Registry에 있는 모든 모델이 포함됩니다.

사용 가능한 머신 러닝 모델 목록을 표시하는 모델 페이지

참고

모델이 표시되지 않으면 역할에 필수 권한 이 있는지 확인합니다.

모델의 세부 정보 페이지를 열려면 Models 목록에서 해당 행을 선택합니다. 세부 정보 페이지에는 모델의 설명, 태그, 버전 등 주요 모델 정보가 표시됩니다.

주요 모델 정보를 표시하는 모델 세부 정보 페이지

모델 설명을 수정하거나 모델을 삭제하려면 오른쪽 상단 모서리에서 을 선택합니다.

버전 세부 정보 페이지를 열려면 모델 버전을 선택합니다. 이 페이지에는 메트릭과 같은 모델 버전 메타데이터와 Python 또는 SQL에서 호출할 수 있는 사용 가능한 메서드 목록이 표시됩니다.

모델 버전에 대한 정보를 표시하는 모델 버전 세부 정보 페이지

모델 함수를 호출하는 코드를 보려면 옆에 있는 SQL 또는 Python 링크를 선택합니다. 이 코드 조각을 Snowsight SQL 워크시트나 Python 노트북에 복사할 수 있습니다.

모델 함수를 호출하는 코드를 표시하는 모델 버전 세부 정보 페이지

메타데이터를 추가 또는 수정하거나 모델 버전을 삭제하려면 오른쪽 상단의 을 선택합니다.

Files 탭에는 모델 버전의 기본 아티팩트 목록이 포함되어 있습니다. 이 페이지에서 개별 파일을 다운로드할 수 있습니다. 이 페이지는 사용자에게 모델 OWNERSHIP 또는 READ 권한이 있는 경우에만 제공됩니다.

모델 버전 세부 정보 페이지의 파일 탭에는 모델의 아티팩트 목록이 표시됩니다.

Lineage 탭에는 모델 학습에 사용된 모든 데이터 세트, Feature Store의 모든 기능 뷰, 원본 데이터 테이블을 포함하여 모델의 전체 데이터 흐름 계보 정보가 표시됩니다.

모델의 계보가 표시되는 모델 버전 세부 정보 페이지의 계보 탭

사용자 모델 배포하기

모델을 Model Registry 페이지에서 SPCS Model Serving에 직접 배포할 수 있습니다.

참고

Snowflake Model Registry는 SPCS Model Serving에 사용자 모델 배포만 지원합니다.

모델을 배포하려면 다음 단계를 완료합니다.

  1. 모델 목록에서 모델을 선택합니다.

  2. 모델 세부 정부 탐색 페이지에서 Versions 섹션으로 이동합니다.

  3. 버전 세부 정보 페이지를 열려면 버전 목록에서 모델 버전을 선택합니다.

  4. 버전 세부 정보 페이지에서 Deploy 버튼을 선택합니다.

  5. 열린 창에서 배포할 서비스의 이름을 입력합니다.

  6. 배포된 서비스의 REST API 엔드포인트를 생성할지 여부를 선택합니다.

  7. 배포된 서비스의 컴퓨팅 풀을 선택합니다.

  8. (선택 사항) 성능 및 리소스 사용량을 사용자 지정하기 위해 고급 설정에서 작업자 수, CPU, 메모리와 같은 세부 정보를 조정할 수 있습니다.

  9. Deploy 를 선택합니다.

    배포 프로세스에서 서비스를 생성하는 데 최대 15분이 걸릴 수 있습니다.

배포가 완료되면 기본 Model Registry 페이지의 Inference Services 탭에 서비스가 표시됩니다.

외부 서비스에서 모델 가져오기 및 배포

참고

현재, `Hugging Face<https://huggingface.co/>`_만 모델 공급자로 지원됩니다.

외부 공급자로부터 사전 학습된 모델을 가져와 추론을 위해 Snowflake 서비스로 배포할 수 있습니다. 외부 모델을 가져오려면 다음 단계를 따르세요.

  1. 탐색 메뉴에서 AI & ML » Models 를 선택합니다.

  2. Import model 를 선택합니다.

    Import model 대화 상자가 열립니다.

  3. Model handle 필드에서 공급자의 모델 핸들을 입력하거나 Snowflake에서 검증된 모델 목록에서 하나를 선택합니다.

  4. Task 목록에서 모델이 수행할 작업을 선택합니다.

  5. 선택 사항: 개인 키가 암호화된 경우 암호 구문을 설정하려면 개인 키 암호 구문에 대한 환경 변수를 설정합니다. 모델 리포지토리에서 사용자 지정 Python 코드 다운로드를 활성화하려면 Trust remote code 확인란을 선택합니다.

    경고

    모델이 임의의 코드를 다운로드하도록 허용하는 것은 보안 위험으로 간주되어야 합니다. 철저하게 평가를 거치고 신뢰할 수 있는 모델의 원격 코드만 Snowflake에서 실행하도록 허용합니다.

  6. Optional: To import a gated model, enter the name of the Snowflake secret for your Hugging Face token in the Hugging Face token secret field.

    Your Hugging Face token secret should be a generic text secret, with your Hugging Face token as a value. For information on how to create a generic text secret, see CREATE SECRET.

  7. 선택 사항: 개인 키가 암호화된 경우 암호 구문을 설정하려면 개인 키 암호 구문에 대한 환경 변수를 설정합니다. :ui:`Advanced settings`를 확장합니다.

    1. 모델에 대한 입력 및 출력 토큰 변환을 수행하려면 Tokenizer model 필드에서 토크나이저 모델을 입력합니다.

    2. 하이퍼 매개 변수를 추가하려면 :ui:`Add parameter`를 선택한 다음, 모델에서 인식할 수 있는 이름과 값을 입력합니다.

  8. Model name 필드에서 Snowflake 모델 레지스트리에서 사용할 이름을 입력합니다.

  9. Version name 필드에서 등록할 버전을 입력합니다.

  10. Database and schema 목록에서 이 모델을 연결할 데이터베이스를 선택합니다.

  11. 선택 사항: 개인 키가 암호화된 경우 암호 구문을 설정하려면 개인 키 암호 구문에 대한 환경 변수를 설정합니다. :ui:`Advanced settings`를 확장합니다.

    1. 모델의 런타임 환경에 pip 요구 사항을 추가하려면 :ui:`Add Pip requirement`를 선택하고 패키지에 대한 pip `요구 사항 지정자<https://pip.pypa.io/en/stable/reference/requirement-specifiers/>`_를 추가합니다. PyPi에서 제공되는 패키지만 지원됩니다.

    2. Comment 필드에서 모델에 대한 유용한 정보를 입력합니다.

  12. Continue to deployment 를 선택합니다.

    Deploy (model handle) 대화 상자가 열립니다.

모델을 배포하려면 다음 단계를 따르세요.

  1. Service name 필드에서 서비스가 실행될 이름을 입력합니다.

    Snowflake는 모델 이름과 버전에 따라 기본값을 제공합니다.

  2. 선택 사항: 개인 키가 암호화된 경우 암호 구문을 설정하려면 개인 키 암호 구문에 대한 환경 변수를 설정합니다. 모델의 서비스에 대해 API 엔드포인트가 자동으로 생성될지 여부를 변경하려면 :ui:`Create REST API endpoint`를 선택하거나 선택 취소합니다.

  3. Compute pool 목록에서 서비스를 실행할 기존 컴퓨팅 풀을 선택합니다.

  4. 선택 사항: 개인 키가 암호화된 경우 암호 구문을 설정하려면 개인 키 암호 구문에 대한 환경 변수를 설정합니다. 서비스가 실행되는 컴퓨팅 풀의 인스턴스 수를 조정합니다.

    최대값은 컴퓨팅 풀의 노드 수에 따라 제한됩니다.

  5. CPU 컴퓨팅 풀에 대한 선택 사항: 컴퓨팅 풀에서 서비스의 사용 가능한 리소스에 대한 세부 정보를 제공하려면 :ui:`Advanced settings`를 확장합니다.

    • Number of workers

    • Max batch rows

    • CPU: 가상 코어 수(밀리 단위)

    • GPU: 물리적 GPUs 개수(GPU 컴퓨팅 풀의 경우 필수)

    • Memory: 사용 가능한 최대 메모리 양

  6. 모델을 가져오고 사용자가 모델에 액세스할 때 사용하는 서비스를 생성하려면 :ui:`Deploy`를 선택합니다.

    모델 가져오기를 취소하거나 모델 세부 정보로 돌아갈 수도 있습니다.

배포가 시작되면 대화 상자에 :ui:`Query ID`가 표시됩니다. 이 쿼리는 모델을 가져오고 서비스를 배포하는 작업을 생성합니다. 두 작업 중 하나를 모니터링하는 것은 쿼리가 아닙니다.

  1. 다음 중 하나를 수행하십시오.

    • 대화 상자를 닫으려면 :ui:`Done`을 선택합니다.

    • 쿼리를 모니터링하려면 :ui:`Open query monitoring`을 선택합니다.

Snowflake는 모델 및 서비스 배포에 대해 다음 작업을 수행합니다.

  • 공급자로부터 필요한 파일을 다운로드합니다.

  • 모델을 모델 레지스트리에 업로드하고 로깅합니다.

  • 서비스를 실행할 모델별 컨테이너 이미지를 만듭니다.

  • 모델 이미지를 서비스로 배포합니다.

참고

Snowflake가 이러한 작업을 수행하는 데 걸리는 시간은 모델 크기, 사용 가능한 컴퓨팅 리소스, 네트워크 설정 등 여러 요소에 따라 달라집니다.

배포에서 오류가 발생하면 연결된 SQL 쿼리를 찾아 자세한 내용을 확인하세요. 탐색 메뉴에서 Monitoring » Query History`를 선택하여 ``SYSTEM$DEPLOY_MODEL` 호출이 포함된 배포 쿼리를 찾으세요.

모델 및 서비스 배포 모니터링

외부 모델이 로드되고 배포할 준비가 되면 Snowflake가 관련 서비스 등록을 자동으로 시작합니다. 다음 단계에 따라 배포를 모니터링합니다.

  1. 탐색 메뉴에서 Monitoring » Services & jobs 를 선택합니다.

  2. Jobs 탭에서 가져오기를 시작할 때 생성된 서비스의 위치 및 컴퓨팅 풀과 일치하는 작업을 선택합니다.

    이 작업은 MODEL_DEPLOY_IDENTIFIER 형식의 이름을 갖습니다. 모델 가져오기로 수행되는 각 서비스 배포는 연결된 작업에 대한 고유 식별자를 생성합니다.

  3. 모델 배포를 모니터링하려면 Logs 탭을 선택합니다.

    모델 배포가 완료되면 Snowflake는 서비스를 빌드하고 배포하는 작업을 시작합니다.

  4. Jobs 탭으로 돌아가 이름이 :samp:`MODEL_BUILD_{IDENTIFIER}`인 작업을 선택합니다.

    이 식별자는 모델 배포 작업과 동일합니다.

  5. 서비스 컨테이너 빌드를 모니터링하려면 Logs 탭으로 돌아가세요.

    이 작업이 완료되면 서비스가 배포되고 준비된 것입니다.

모델 추론 서비스

Model Registry UI 에서 SPCS Model Serving으로 생성된 모델 추론 서비스를 확인할 수 있습니다. 기본 모델 목록 페이지에는 모든 모델에 대해 생성된 추론 서비스의 상태가 표시됩니다.

모델에 대해 생성된 추론 서비스입니다.

모델 이름과 모델 버전을 선택하면 모델 버전 상세 정보 페이지의 Inference Services 탭을 통해 배포된 추론 서비스에 대한 자세한 내용을 확인하고 추론 서비스를 일시 중단할 수 있습니다. 여기에는 서비스가 노출하는 함수 목록도 표시됩니다. SQL 또는 Python 사용 코드 스니펫을 보거나 복사본으로 확인할 수 있습니다.

모델 추론 서비스용 버전입니다.

Open Details`를 선택하여 서비스 매개 변수를 표시합니다. 배포된 추론 서비스에 대한 자세한 내용을 보려면 서비스 매개 변수 창에서 :ui:`Open Service Details`를 선택합니다. 기본 Model Registry 페이지의 :ui:`Inference Services 탭에서 서비스 세부 정보에 액세스할 수도 있습니다.

모델 모니터링

모델 모니터가 연결된 모든 모델의 경우 모델 세부 정보 페이지의 모델 모니터를 사용하여 모델 모니터링 메트릭을 시각화할 수 있습니다.

주요 모델 정보를 표시하는 모델 세부 정보 페이지

원하는 모델 모니터를 선택하여 모니터링 대시보드를 표시합니다.

대시보드에 대해 선택한 모델 모니터입니다.

Compare 를 선택하면 모델 버전 메뉴를 보고 이 모델 버전과 비교할 두 번째 모델 버전을 선택할 수 있습니다.

두 모델 버전 간의 비교입니다.

모니터링은 다수의 모델 정확도, 모델 드리프트 및 기능 드리프트 메트릭을 지원합니다. 계산되어 표시되는 메트릭을 선택하려면 Settings 아이콘을 클릭하여 원하는 메트릭을 선택합니다.

모델 모니터링 페이지의 설정