탭 세 개가 아니라 계약 세 개
Hub에는 model, dataset, Space라는 세 저장소 종류가 있어. 웹에서는 나란히 보이지만 URL 경로, 메타데이터 스키마, 저장 방식, 요청 제한이 서로 달라. 같은 Git 기반이라고 해서 같은 저장소로 취급하면 안 돼.
huggingface.co/{org}/{name}은 model 저장소야. 가중치, 설정, tokenizer, YAML front matter가 붙은 모델 카드를 담아.huggingface.co/datasets/{org}/{name}은 dataset 저장소야. Parquet·CSV·JSONL·오디오·이미지 같은 데이터와 선택적인 로딩 스크립트, 데이터셋 카드를 담아.huggingface.co/spaces/{org}/{name}은 실행되는 앱인 Space야. Gradio·Streamlit·Docker·정적 사이트 가운데 런타임을 고르고, 비밀값과 하드웨어 등급을 따로 관리해.
repo_type을 빠뜨리지 마
huggingface_hub의 저장소 API는 repo_type으로 어느 이름 공간을 볼지 정해. 데이터셋 ID를 넘기면서 기본값인 model을 그대로 두면 실제 저장소가 있어도 404가 나와. list_models(), list_datasets(), list_spaces() 역시 이름만 다른 별칭이 아니라 서로 다른 색인과 필터를 조회하는 함수야.
저장소 종류는 페이지 기능도 결정해. 모델에는 추론 위젯과 Use This Model 버튼, 데이터셋에는 Data Studio 뷰어, Space에는 실행 중인 앱이 나타나. 화면 설정이 아니라 저장소 계약에 묶인 차이야.