피드로 돌아가기
Welcome fastai to the Hugging Face Hub
Hugging Face BlogHugging Face Blog
AI/ML

Hugging Face Hub이 fastai와 통합되어 Python 한 줄로 학습된 신경망 모델을 공유 및 로드 가능

Welcome fastai to the Hugging Face Hub

2022년 5월 6일10beginner

Context

fastai 개발자들이 학습한 모델을 공유하려면 별도의 호스팅 인프라를 직접 구축하거나 관리해야 했다. 모델 버전 관리, 배포, 공동 사용이 분산되어 있어 생태계 전체의 협업 효율성이 낮았다.

Technical Solution

  • fastai Learner 객체를 push_to_hub_fastai(learner=learn, repo_id=repo_id) 함수로 Hub에 업로드: 사전학습 모델, 데이터 로더, 손실 함수를 한 번에 저장
  • huggingface_hub 라이브러리의 "fastai" 의존성 설치 옵션 제공: pip install huggingface_hub["fastai"]으로 필요한 라이브러리(fastai>=2.4, fastcore>=1.3.27, toml) 자동 설치
  • 계정 기반 인증 세 가지 방식 지원: 터미널 huggingface-cli login, 노트북 notebook_login(), 함수 인자 token 전달
  • Hub에 Git 기반 버전 관리 적용: 대용량 파일용 git-lfs 지원으로 모델 카드, 커밋, 브랜치 관리 가능
  • from_pretrained_fastai(repo_id="namespace/repo_name") 함수로 Hub의 모델 로드: 다른 사용자의 모델을 전이학습 기반으로 활용

Impact

아티클에 정량적 수치가 명시되어 있지 않음.

Key Takeaway

오픈소스 라이브러리를 중앙 Hub에 통합하면 모델 공유와 재사용의 진입장벽을 단순한 API 호출 수준으로 낮출 수 있으며, 이를 통해 분산된 커뮤니티 기여를 하나의 플랫폼으로 수렴시킬 수 있다.


fastai를 사용해 컴퓨터 비전, NLP, 테이블 데이터 모델을 개발하는 팀에서 `push_to_hub_fastai()` 함수를 파이프라인에 추가하면, 모델 공유 인프라 구축 없이 버전 관리되는 모델 리포지토리를 즉시 확보할 수 있고, 다른 개발자들의 사전학습 모델을 `from_pretrained_fastai()`로 직접 로드해 전이학습 시간을 단축할 수 있다.

원문 읽기