Hub documentation

Использование адаптеров на Hugging Face

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Использование адаптеров на Hugging Face

Примечание: Adapters заменила библиотеку adapter-transformers и полностью совместима с ней в части весов моделей. Подробнее — здесь.

Adapters — это дополнительная библиотека для 🤗 transformers, предназначенная для эффективной дообучения предобученных языковых моделей с помощью адаптеров и других методов с высокой эффективностью по параметрам. Adapters также предоставляет различные методы для композиции модулей адаптеров во время обучения и вывода. Подробнее об этом можно узнать в статье Adapters.

Исследование адаптеров на Hub

Модели Adapters можно найти, используя фильтр слева на странице моделей. Некоторые адаптерные модели доступны в репозитории Adapter Hub repository. Модели из обоих источников агрегируются на сайте AdapterHub.

Установка

Для начала вы можете обратиться к руководству по установке AdapterHub. Также можно использовать следующую однострочную установку через pip:

pip install adapters

Использование существующих моделей

Для полного руководства по загрузке предобученных адаптеров мы рекомендуем обратиться к официальному руководству.

Кратко: полная настройка состоит из трёх шагов:

  1. Загрузите базовую модель transformers с помощью класса AutoAdapterModel, предоставляемого Adapters.
  2. Используйте метод load_adapter() для загрузки и добавления адаптера.
  3. Активируйте адаптер через active_adapters (для инференса) или активируйте и установите его как обучаемый через train_adapter() (для обучения). Также обратите внимание на композицию адаптеров.
from adapters import AutoAdapterModel

# 1.
model = AutoAdapterModel.from_pretrained("FacebookAI/roberta-base")
# 2.
adapter_name = model.load_adapter("AdapterHub/roberta-base-pf-imdb")
# 3.
model.active_adapters = adapter_name
# or model.train_adapter(adapter_name)

Вы также можете использовать list_adapters, чтобы программно найти все адаптерные модели:

from adapters import list_adapters

# source can be "ah" (AdapterHub), "hf" (hf.co) or None (for both, default)
adapter_infos = list_adapters(source="hf", model_name="FacebookAI/roberta-base")

Если вы хотите узнать, как загрузить конкретную модель, нажмите Use in Adapters — вам будет предоставлен рабочий фрагмент кода для её загрузки!

Обмен моделями

Для полного руководства по обмену моделями с Adapters рекомендуем обратиться к официальному руководству.

Вы можете поделиться своим адаптером, используя метод push_adapter_to_hub из модели, которая уже содержит адаптер.

model.push_adapter_to_hub(
    "my-awesome-adapter",
    "awesome_adapter",
    adapterhub_tag="sentiment/imdb",
    datasets_tag="imdb"
)

Эта команда создаёт репозиторий с автоматически сгенерированной карточкой модели и всеми необходимыми метаданными.

Дополнительные ресурсы

Update on GitHub