Hub documentation

Uso de PEFT en Hugging Face

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Uso de PEFT en Hugging Face

🤗 Parameter-Efficient Fine-Tuning (PEFT) es una biblioteca para adaptar de manera eficiente modelos de lenguaje preentrenados a diversas aplicaciones de bajo nivel sin ajustar todos los parámetros del modelo.

Explorar PEFT en el Hub

Puedes encontrar modelos PEFT filtrando a la izquierda de la página de modelos.

Instalación

Para empezar, puedes consultar el recorrido rápido en la documentación de PEFT. Para instalarlo, sigue la guía de instalación de PEFT. También puedes usar la siguiente instalación de una línea a través de pip:

$ pip install peft

Uso de modelos existentes

Todos los modelos PEFT se pueden cargar desde el Hub. Para usar un modelo PEFT, también es necesario cargar el modelo base que fue ajustado, como se muestra a continuación. Cada modelo ajustado tiene el modelo base en su tarjeta de modelo.

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()

Una vez cargado, puedes pasar tus entradas al tokenizador para prepararlas y llamar a model.generate() de la manera habitual en 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])

Imprime lo siguiente:

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

Si quieres cargar un modelo PEFT específico, puedes hacer clic en Use in PEFT en la tarjeta del modelo y ¡se te dará un fragmento de código funcional!

Recursos adicionales

Update on GitHub