Hub documentation
Использование PEFT в Hugging Face
Использование PEFT в Hugging Face
🤗 Parameter-Efficient Fine-Tuning (PEFT) — это библиотека для эффективной адаптации предобученных языковых моделей к различным прикладным задачам без дообучения всех параметров модели.
Исследование PEFT на Hub
Модели PEFT можно найти, применив фильтр слева на странице моделей.
Установка
Для начала вы можете ознакомиться с кратким обзором в документации PEFT. Чтобы установить, следуйте инструкции по установке PEFT. Вы также можете использовать следующую однострочную установку через pip:
$ pip install peftИспользование существующих моделей
Все модели PEFT можно загрузить с Hub. Для использования модели PEFT также необходимо загрузить базовую модель, на основе которой проводилась дообучение, как показано ниже. В карточке каждой дообученной модели указана её базовая модель.
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel, PeftConfig
base_model = "mistralai/Mistral-7B-v0.1"
adapter_model = "dfurman/Mistral-7B-Instruct-v0.2"
model = AutoModelForCausalLM.from_pretrained(base_model)
model = PeftModel.from_pretrained(model, adapter_model)
tokenizer = AutoTokenizer.from_pretrained(base_model)
model = model.to("cuda")
model.eval()После загрузки вы можете передать входные данные в токенизатор для их подготовки и вызвать model.generate() в обычном стиле transformers.
inputs = tokenizer("Tell me the recipe for chocolate chip cookie", return_tensors="pt")
with torch.no_grad():
outputs = model.generate(input_ids=inputs["input_ids"].to("cuda"), max_new_tokens=10)
print(tokenizer.batch_decode(outputs.detach().cpu().numpy(), skip_special_tokens=True)[0])Выводится следующее:
Tell me the recipe for chocolate chip cookie dough. 1. Preheat oven to 375 degrees F (190 degrees C). 2. In a large bowl, cream together 1/2 cup (1 stick) of butter or margarine, 1/2 cup granulated sugar, and 1/2 cup packed brown sugar. 3. Beat in 1 egg and 1 teaspoon vanilla extract. 4. Mix in 1 1/4 cups all-purpose flour. 5. Stir in 1/2 teaspoon baking soda and 1/2 teaspoon salt. 6. Fold in 3/4 cup semisweet chocolate chips. 7. Drop by
Если вы хотите загрузить конкретную модель PEFT, нажмите Use in PEFT на карточке модели, и вы получите готовый фрагмент кода!


Дополнительные ресурсы
- Репозиторий PEFT repository
- PEFT документация
- Модели PEFT models