Zacznij terazZacznij za darmo

Dostrajanie Llamy metodą LoRA na potrzeby obsługi klienta

Twoim zadaniem jest dostrojenie modelu językowego do odpowiadania na pytania z zakresu obsługi klienta. Modele Llama świetnie radzą sobie z odpowiadaniem na pytania i powinny dobrze sprawdzić się w tym zadaniu. Niestety nie masz wystarczających zasobów obliczeniowych, aby przeprowadzić standardowe dostrajanie – zamiast tego musisz skorzystać z techniki LoRA i zbioru danych bitext.

Chcesz wytrenować model Maykeye/TinyLLama-v0. Skrypt treningowy jest już prawie gotowy – masz dostęp do kodu treningowego, brakuje jedynie parametrów konfiguracji LoRA.

Odpowiedni model, tokenizer, zbiór danych i argumenty treningowe zostały już wczytane odpowiednio jako model, tokenizer, dataset i training_arguments.

To ćwiczenie jest częścią kursu

Fine-Tuning z Llama 3

Zobacz kurs

Instrukcje do ćwiczenia

  • Dodaj argument ustawiający rangę adapterów LoRA na 2.
  • Ustaw współczynnik skalowania tak, aby był dwukrotnie większy od rangi.
  • Ustaw typ zadania stosowany z modelami w stylu Llama w konfiguracji LoRA.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

from peft import LoraConfig, get_peft_model

peft_config = LoraConfig(
    # Set rank parameter 
  	____=____,
  	# Set scaling factor
    ____=____,
  	# Set the type of task
  	____=____,
    lora_dropout=0.05,
    bias="none",
    target_modules=['q_proj', 'v_proj']
)

trainer = SFTTrainer(
    model=model,
    train_dataset=dataset,
    max_seq_length=250,
    dataset_text_field='conversation',
    tokenizer=tokenizer,
    args=training_arguments,
  	peft_config=peft_config,
)

trainer.train()
Edytuj i uruchom kod