# Menggunakan PEFT di Hugging Face

🤗 [Parameter-Efficient Fine-Tuning (PEFT)](https://huggingface.co/docs/peft/index) adalah pustaka untuk menyesuaikan model bahasa yang telah dilatih sebelumnya secara efisien ke berbagai aplikasi turunan tanpa melakukan fine-tuning pada semua parameter model.

## Menjelajahi PEFT di Hub

Anda dapat menemukan model PEFT dengan memfilter di bagian kiri [halaman model](https://huggingface.co/models?library=peft&sort=trending).

## Instalasi

Untuk memulai, Anda dapat melihat [Quick Tour di dokumentasi PEFT](https://huggingface.co/docs/peft/quicktour). Untuk menginstal, ikuti [panduan instalasi PEFT](https://huggingface.co/docs/peft/install). Anda juga dapat menggunakan instalasi satu baris berikut melalui pip:

```
$ pip install peft
```

## Menggunakan model yang sudah ada

Semua model PEFT dapat dimuat dari Hub. Untuk menggunakan model PEFT, Anda juga perlu memuat model dasar yang telah dihaluskan, seperti yang ditunjukkan di bawah ini. Setiap model yang telah dihaluskan mencantumkan model dasarnya di kartu modelnya.

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

Setelah dimuat, Anda dapat meneruskan input Anda ke tokenizer untuk mempersiapkannya, lalu memanggil `model.generate()` dengan cara reguler `transformers`.

```py
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])
```

Itu menghasilkan output berikut:

```text
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
```

Jika Anda ingin memuat model PEFT tertentu, Anda dapat mengklik `Use in PEFT` di kartu model dan Anda akan diberikan potongan kode yang siap digunakan!

## Sumber daya tambahan

* repository [PEFT](https://github.com/huggingface/peft)
* Dokumentasi [PEFT](https://huggingface.co/docs/peft/index)
* Model [PEFT](https://huggingface.co/models?library=peft&sort=trending)

