다음을 통해 공유


Windows ML 모델 카탈로그 API를 사용하여 디바이스에서 모델 다운로드 및 공유

Windows ML 모델 카탈로그 API를 사용하면 앱 또는 라이브러리를 통해 큰 파일을 직접 앱 또는 라이브러리와 함께 전달하지 않고도 앱 또는 라이브러리에서 공유된 디바이스 내 위치로 큰 AI 모델 파일을 동적으로 다운로드할 수 있습니다. 또한 모델 카탈로그는 실행 중인 Windows 디바이스와 호환되는 모델을 필터링하여 올바른 모델을 디바이스에 다운로드하는 데 도움이 됩니다.

모델 카탈로그 API란?

모델 카탈로그 API는 하나 이상의 클라우드 모델 카탈로그에 연결하여 디바이스의 모든 Windows 애플리케이션에서 사용할 수 있도록 해당 모델을 디바이스에 로컬로 다운로드하고 저장할 수 있도록 하는 API 집합입니다. API에는 다음과 같은 몇 가지 핵심 기능이 있습니다.

  • 카탈로그 추가: 하나 이상의 온라인 카탈로그 추가
  • 호환되는 모델 검색: 사용자의 하드웨어 및 실행 공급자와 함께 작동하는 모델을 자동으로 찾습니다.
  • 모델 다운로드: 다양한 원본에서 모델 다운로드 및 저장
  • 앱 간에 모델 공유: 여러 애플리케이션이 동일한 모델(동일한 SHA256 해시)을 요청하는 경우 다운로드를 복제하지 않고 디스크에서 모델을 공유합니다.

주요 기능

자동 호환성 일치

모델 카탈로그는 시스템의 사용 가능한 실행 공급자(CPU, GPU, NPU 등)에 모델을 자동으로 일치합니다. 모델을 요청할 때 카탈로그는 현재 하드웨어 구성과 호환되는 모델만 반환합니다.

모델 저장소

다운로드한 모델은 사용자별 위치에 저장됩니다. 여러 애플리케이션이 동일한 모델(동일한 SHA256 해시)을 요청하는 경우 이미 다운로드한 모델이 해당 애플리케이션 간에 공유됩니다.

여러 카탈로그 원본

애플리케이션에서 여러 카탈로그 원본을 구성하여 다음을 수행할 수 있습니다.

  • 여러 공급업체 또는 리포지토리의 모델 사용
  • 특정 원본을 다른 원본보다 우선시함
  • 퍼블릭 카탈로그와 함께 고유한 프라이빗 모델 카탈로그 포함

작동 방식

모델 카탈로그 시스템은 다음과 같은 여러 구성 요소로 구성됩니다.

  1. 카탈로그 원본: 모델을 찾을 수 있는 위치 정의(JSON 파일 카탈로그에 대한 URL)
  2. 모델 일치: 실행 공급자 호환성을 기반으로 사용 가능한 모델을 필터링합니다.
  3. 다운로드 관리: 모델 파일의 다운로드 및 스토리지 처리
  4. 인스턴스 관리: 앱이 실행되는 동안 다운로드한 모델에 대한 액세스를 제공합니다.

모델 식별

카탈로그의 모델에는 두 가지 유형의 식별자가 있습니다.

  • 이름: "gpt2"와 같은 일반 이름(여러 모델 변형이 동일한 이름을 공유할 수 있습니다.)
  • ID: 일반적으로 "gpt2-cpu" 또는 "gpt2-npu"와 같은 실행 공급자 정보를 포함하는 카탈로그 내 고유 식별자입니다.

애플리케이션은 일반적으로 단순성을 위해 Name과 함께 사용 FindModelAsync 하므로 카탈로그는 실행 공급자 호환성에 따라 현재 시스템에 가장 적합한 모델 변형을 선택할 수 있습니다.

실행 공급자 지원

모델 카탈로그는 다양한 실행 공급자를 지원합니다. 자세한 내용은 Windows ML 문서에서 지원되는 실행 공급자를 참조하세요 .

카탈로그 원본 스키마

모델 카탈로그 원본은 다음을 정의하는 표준화된 JSON 스키마를 사용합니다.

  • 모델 메타데이터(이름, ID, 버전, 게시자)
  • 지원되는 실행 공급자
  • URL 및 파일 정보 다운로드
  • 라이선스 정보
  • 모델 크기 세부 정보

자세한 스키마 정보는 모델 카탈로그 원본을 참조하세요.

시작하기

Windows ML 애플리케이션에서 모델 카탈로그 사용을 시작하려면 다음을 수행합니다.

  1. 카탈로그 소스 구성
  2. ModelCatalog 인스턴스 만들기
  3. 모델 쿼리 및 다운로드
  4. 원하는 런타임으로 모델을 유추하세요!

전체 가이드는 모델 카탈로그 사용 시작하기를 참조하십시오.

다음 단계