허깅페이스 허브 (Hugging Face Hub)

허깅페이스 허브 (Hugging Face Hub) 개요

허깅페이스 허브는 오픈 ML을 위한 기준 플랫폼이에요. 지금 이곳에는 2백만 개가 넘는 모델, 150만 개가 넘는 데이터셋, 그리고 150만 개가 넘는 AI 앱(스페이스)이 공개되어 있어요. 개방형 AI 밖에도, 허브는 내부 팀이나 비공개 팀이 함께 일하기 좋은 협업 플랫폼이기도 하죠. 탐색하고, 실험하고, 협업하고, 빌드하기까지, 이 모든 걸 한곳에서 할 수 있는 게 허브예요.

허깅페이스 허브는 뭘까요?

허깅페이스 커뮤니티는 머신러닝을 앞으로 끌어올리는 한 가지 목표를 향해 함께 일하고 있어요. 어떤 한 회사가, 심지어 기술 대기업조차도 혼자서 AI를 "해결"할 수는 없어요. 지식을 자원을 커뮤니티 중심으로 나누는 방식으로만 그 목표를 이룰 수 있다고 믿어요. 그렇게 해서 최대 규모의 오픈소스 모델·데이터셋·데모 컬렉션을 허브에 쌓아가며, 모든 사람을 위한 ML의 대중화를 추진하고 있죠.

허브에 참여하기 전에 행동 강령(Code of Conduct)콘텐츠 가이드라인(Content Guidelines)을 한번 읽어 두면, 커뮤니티 구성원이 지키길 바라는 가치를 이해하는 데 도움이 돼요.

허브에서 무엇을 찾을 수 있나요?

허브는 Git 기반의 저장소를 호스팅해요. 저장소는 버전 관리되는 폴더로, 파일을 모두 담을 수 있죠. 버전 관리를 하지 않고 계속 바뀌는 개체 저장소가 필요하다면, Storage Buckets도 제공해요.

허브에서 업로드하고 발견할 수 있는 것들로는 크게 세 가지가 있어요.

  • 모델: LLM, 텍스트, 비전, 오디오 작업을 위한 최신 모델 호스팅
  • 데이터셋: 다양한 도메인과 모달리티의 폭넓은 데이터
  • 스페이스: 브라우저에서 바로 ML 모델을 시연해 볼 수 있는 인터랙티브 앱

허브는 버전 관리, 커밋 히스토리, diff, 브랜치, 그리고 수십 개의 라이브러리 통합을 제공해요. 모든 저장소는 Xet 위에서 돌아가요. Xet은 커다란 파일을 Git 안에 효율적으로 저장하기 위한 신기술로, 파일을 고유한 청크로 지능적으로 쪼개고 업로드·다운로드를 가속화해요.

모든 저장소가 공유하는 기능은 Repositories 문서에서 더 자세히 볼 수 있어요.

모델

커뮤니티가 공유한 수만 개의 오픈소스 ML 모델을 발견하고 사용할 수 있어요. 책임 있는 모델 사용과 개발을 돕기 위해, 모델 저장소에는 각 모델의 한계와 편향을 알려주는 Model Cards가 붙어 있어요. 작업, 언어, 평가 결과 같은 정보는 메타데이터로 추가할 수 있고, 저장소에 TensorBoard 추적이 있으면 훈련 지표 차트도 넣을 수 있어요. 모델에 추론 위젯을 달아 브라우저에서 바로 모델을 만져볼 수 있게 하는 것도 쉬워요. 프로그래밍 방식 접근을 원한다면 Inference Providers가 제공하는 서버리스 API를 쓰면 돼요.

모델을 허브에 업로드하거나, 다운로드해서 작업에 통합하려면 Models 문서를 살펴보세요. 🤗 Transformers, Asteroid, ESPnet 등 수십 개의 라이브러리 중에서 허브를 지원하는 것을 골라 쓸 수도 있어요.

데이터셋

허브에는 8천 개가 넘는 언어로 된 50만 개 이상의 공개 데이터셋이 있어서, NLP·컴퓨터 비전·오디오 전반의 다양한 작업에 쓸 수 있어요. 데이터셋을 찾고, 다운로드하고, 업로드하기도 허브 하나로 간단해요. 각 데이터셋은 Dataset CardsData Studio 형태의 풍부한 문서와 함께 제공되어 브라우저에서 바로 데이터를 탐색할 수 있어요. 많은 데이터셋이 공개지만, 라이선스나 개인정보 보호를 위해 조직이나 개인이 비공개 데이터셋을 만들 수도 있어요.

🤗 datasets 라이브러리를 쓰면 데이터셋을 프로그래밍 방식으로 다룰 수 있어요. 한 줄의 코드로 허브의 데이터셋에 접근할 수 있고, 너무 커서 컴퓨터에 안 들어가는 데이터셋도 스트리밍으로 효율적으로 읽어낼 수 있죠.

스페이스

Spaces는 허브에 ML 데모 앱을 올리는 간단한 방법이에요. ML 포트폴리오를 쌓고, 컨퍼런스나 이해관계자에게 프로젝트를 소개하고, ML 생태계의 다른 사람들과 협업하는 데 쓸 수 있어요.

현재 GradioStreamlit 두 가지 멋진 Python SDK를 지원해서 몇 분 만에 앱을 만들 수 있어요. 단순한 HTML/CSS/JavaScript 페이지인 정적 스페이스(static Spaces)를 만들거나, Docker 기반 애플리케이션을 배포할 수도 있어요.

데모에 GPU 성능이 필요하다면 ZeroGPU를 써보세요. 필요할 때만 실시간으로 NVIDIA GPU를 동적으로 제공해 줘요.

Storage Buckets

Storage Buckets는 허깅페이스에서 S3와 비슷한 객체 스토리지를 제공해요. Xet 저장 백엔드로 구동되죠. Git 기반으로 파일 히스토리를 추적하는 저장소와는 달리, 버킷은 원격 객체 스토리지 컨테이너로, 콘텐츠 주소 기반의 중복 제거로 대규모 파일을 다루도록 설계됐어요. 훈련 체크포인트, 로그, 중간 산출물처럼 버전 관리가 필요 없고 단순하고 빠르게 바뀌어야 하는 큰 파일 모음에 알맞아요.

조직

회사, 대학, 비영리 단체는 허깅페이스 커뮤니티의 핵심이에요. 허브는 계정을 묶고 데이터셋·모델·스페이스를 관리할 수 있는 Organizations을 제공해요. 교육자는 Hugging Face for Classrooms으로 학생들을 위한 협업 조직을 만들 수도 있어요. 조직의 저장소는 조직 페이지에 노출되고, 모든 멤버가 저장소에 기여할 수 있어요. 허브는 관리자가 저장소 접근 권한을 통제하고, 조직의 결제 방법과 청구 정보를 관리할 수 있게 해줘요.

보안

허깅페이스 허브는 코드와 모델, 데이터를 안전하게 지키기 위한 보안·접근 제어 기능을 지원해요. 이 문서의 Security 섹션에서 다음 내용을 다뤄요.

  • 사용자 액세스 토큰
  • 조직에 대한 접근 제어
  • GPG로 커밋 서명
  • 멀웨어 스캔