Публикация модели на Hub
Учимся делиться своей моделью с миром через Hub.
Публикация — загрузка модели и токенизатора в репозиторий на Hub, после чего их можно скачать одной строкой откуда угодно.
Зачем публиковать
Опубликованная модель доступна вашей команде, заказчику или всему сообществу. Её можно подключить в любом проекте по идентификатору, версионировать через git и снабдить демо в Spaces. Это финальный шаг типичного цикла: взяли базовую модель, дообучили, опубликовали результат.
Как загрузить
Сначала авторизуются токеном доступа, затем вызывают push_to_hub. Код требует transformers и не исполняется в браузере:
from huggingface_hub import login
login(token="hf_...") # токен из настроек аккаунта
model.push_to_hub("my-username/sentiment-ru")
tokenizer.push_to_hub("my-username/sentiment-ru")После этого модель доступна так:
from transformers import pipeline
clf = pipeline("sentiment-analysis",
model="my-username/sentiment-ru")Карточка модели обязательна
Хорошая публикация всегда сопровождается карточкой (README.md): что модель делает, на каких данных обучена, какие ограничения и под какой лицензией. Без карточки модель почти бесполезна для других — никто не поймёт, можно ли ей доверять.
Приватные и публичные репозитории
Репозиторий можно сделать приватным — тогда доступ только у вас и тех, кому вы его дадите. Это важно для коммерческих моделей, которые нельзя выкладывать публично.
Как работает под капотом
push_to_hub создаёт (или обновляет) git-репозиторий на Hub и заливает туда файлы модели через git и Git LFS (большие бинарные веса хранятся через LFS). Каждая загрузка — это коммит, поэтому история версий сохраняется, и любой пользователь может зафиксировать конкретную ревизию через параметр revision. Токен доступа определяет права: read-токен только скачивает, write-токен позволяет публиковать.
Частые ошибки
- Публиковать без карточки и лицензии. Модель станет непонятной и юридически рискованной.
- Заливать модель с приватными данными в публичный репозиторий. Дообученная модель может «помнить» обучающие тексты — проверяйте, что выкладываете.
- Использовать write-токен где попало. Утечка токена даёт чужим людям доступ к вашим репозиториям.
Итог
push_to_hubзаливает модель и токенизатор в git-репозиторий на Hub.- Карточка модели и лицензия обязательны для полезной публикации.
- Репозиторий можно сделать приватным для коммерческих моделей.
- Под капотом — git и Git LFS, каждая загрузка это коммит с версией.