Hugging Face 모델 탐색

Hugging Face로 배우는 멀티모달 모델

James Chapman

Curriculum Manager, DataCamp

강사를 소개합니다

 

Sean Benson
  • 스위스 CERN의 대형 강입자 충돌기(LHC)에서 근무한 전직 입자물리학자
  • 현재 암스테르담 대학 의료 센터의 응용 AI 연구원

Sean Benson의 사진.

Hugging Face로 배우는 멀티모달 모델

다루는 모달리티

텍스트, 이미지, 오디오, 비디오 애플리케이션 예시.

1 이미지 출처: OpenAI 생성
Hugging Face로 배우는 멀티모달 모델

Hugging Face

모델 카드 정보가 보이는 Hugging Face 모델 웹페이지 스크린샷

  • 모델 100만+개
  • 데이터셋 25만+개
Hugging Face로 배우는 멀티모달 모델

Hub API

  • 모델과 데이터셋에 프로그래밍 방식으로 접근
pip install huggingface_hub[cli]

계정의 모델에 접근하려면 로그인하세요:

>>> huggingface-cli login
  • 모든 라이브러리, 모델, 데이터셋은 사전 설치됩니다
Hugging Face로 배우는 멀티모달 모델

모델 검색

  • Hugging Face API: 모델과 데이터셋에 대한 프로그래밍 접근
from huggingface_hub import HfApi
api = HfApi()

models = api.list_models()
  • task: "image-classification", "text-to-image"
  • sort: 예: "likes", "downloads"
  • limit: 최대 항목 수
  • tags: 모델 관련 추가 정보
Hugging Face로 배우는 멀티모달 모델

모델 검색

models = api.list_models(

task="text-to-image",
author="CompVis",
tags="diffusers:StableDiffusionPipeline",
sort="downloads"
)
top_model = list(models)[0]
print(top_model)
ModelInfo(id='CompVis/stable-diffusion-v1-4', private=False, downloads=1097285, 
          likes=6718, library_name='diffusers', ...
Hugging Face로 배우는 멀티모달 모델

API로 모델 사용

top_model_id = top_model.id
print(top_model_id)
CompVis/stable-diffusion-v1-4
from diffusers import StableDiffusionPipeline
pipe = StableDiffusionPipeline.from_pretrained(top_model_id)
Hugging Face로 배우는 멀티모달 모델

사용 가능한 작업

  • 웹페이지로 문서화됨

  • JSON로도 제공: https://huggingface.co/api/tasks

import json
from urllib.request import urlopen
url = "https://huggingface.co/api/tasks"

with urlopen(url) as url:
    tasks = json.load(url)
print(tasks.keys())
dict_keys(['any-to-any',
'audio-classification',
'audio-to-audio', ...'])
1 https://huggingface.co/tasks 2 https://huggingface.co/api/tasks
Hugging Face로 배우는 멀티모달 모델

연습해 봅시다!

Hugging Face로 배우는 멀티모달 모델

Preparing Video For Download...