Bibliotecile de fine-tuning pentru Llama

Fine-Tuning cu Llama 3

Francesca Donadoni

Curriculum Manager, DataCamp

Când se utilizează fine-tuning-ul

  • Model pre-antrenat
  • Utilizează date specializate

Un inginer AI privind o reprezentare a parametrilor unui model.

  • Îmbunătățirea acurateței
  • Reducerea erorilor sistematice
  • Extinderea bazei de cunoștințe
Fine-Tuning cu Llama 3

Cum se utilizează fine-tuning-ul

  • Calitatea datelor
  • Capacitatea modelului
  • Definirea sarcinii

 

  • Procesul de fine-tuning

Bucla de antrenament. Antrenamentul produce un model ajustat. Evaluarea are loc cu modelul ajustat și un set de date de evaluare.

Fine-Tuning cu Llama 3

Cum se utilizează fine-tuning-ul

  • Calitatea datelor
  • Capacitatea modelului
  • Definirea sarcinii

 

  • Procesul de fine-tuning

Bucla de antrenament. Un set de date de antrenament este folosit pentru a începe antrenamentul, care produce un model ajustat. Evaluarea are loc cu modelul ajustat și un set de date de evaluare.

Fine-Tuning cu Llama 3

Cum se utilizează fine-tuning-ul

  • Calitatea datelor
  • Capacitatea modelului
  • Definirea sarcinii

 

  • Procesul de fine-tuning

Bucla de antrenament. Un set de date de antrenament, un model și un tokenizer sunt folosite pentru a începe antrenamentul, care produce un model ajustat. Evaluarea are loc cu modelul ajustat și un set de date de evaluare.

Fine-Tuning cu Llama 3

Cum se utilizează fine-tuning-ul

  • Calitatea datelor
  • Capacitatea modelului
  • Definirea sarcinii

 

  • Procesul de fine-tuning

Bucla de antrenament. Un set de date de antrenament, argumente, un model și un tokenizer sunt folosite pentru a începe antrenamentul, care produce un model ajustat. Evaluarea are loc cu modelul ajustat și un set de date de evaluare.

Fine-Tuning cu Llama 3

Cum se utilizează fine-tuning-ul

  • Calitatea datelor
  • Capacitatea modelului
  • Definirea sarcinii

 

  • Procesul de fine-tuning
  • Model nou
  • Evaluare

Bucla de antrenament. Un set de date de antrenament, argumente, un model, un tokenizer și o clasă de fine-tuning sunt folosite pentru a începe antrenamentul, care produce un model ajustat. Evaluarea are loc cu modelul ajustat și un set de date de evaluare.

Fine-Tuning cu Llama 3

Bibliotecile de fine-tuning pentru Llama

 

  • 📚 Mai multe biblioteci pentru fine-tuning

 

  • 🦙 TorchTune pentru fine-tuning Llama

 

  • 🚀 Lansarea unei sarcini de fine-tuning cu TorchTune
Fine-Tuning cu Llama 3

Opțiuni pentru fine-tuning Llama

  • TorchTune
    • Bazat pe șabloane configurabile
    • Ideal pentru: scalare rapidă

O iconiță de ceas reprezentând experimentarea rapidă.

  • SFTTrainer din Hugging Face
    • Acces la alte LLM-uri
    • Ideal pentru: fine-tuning pe mai multe modele

O iconiță reprezentând mai multe modele.

  • Unsloth
    • Utilizare eficientă a memoriei
    • Ideal pentru: hardware limitat

O iconiță reprezentând hardware CPU.

  • Axolotl
    • Abordare modulară
    • Ideal pentru: fără reconfigurare extinsă

O iconiță cu un angrenaj și o mână reprezentând o configurație.

Fine-Tuning cu Llama 3

TorchTune și rețetele pentru fine-tuning

 

 

  • Rețete TorchTune:

    • Șabloane modulare
    • Configurabile pentru diferite proiecte
    • Mențin codul organizat
    • Asigură reproductibilitatea

O ilustrație cu o supă în preparare pentru a reprezenta conceptul de rețetă.

Fine-Tuning cu Llama 3

Lista TorchTune

 

  • Rulare din terminal
  • Mediu cu Python
  • Instalare TorchTune
    pip3 install torchtune
    
  • Listare rețete disponibile

    tune ls
    
  • ! dacă se folosește IPython

    !tune ls
    
Fine-Tuning cu Llama 3

Lista TorchTune

!tune ls
  • Rezultat:
RECIPE                                   CONFIG                                  
full_finetune_single_device              llama3/8B_full_single_device            
                                         llama3_1/8B_full_single_device          
                                         llama3_2/1B_full_single_device          
                                         llama3_2/3B_full_single_device       
full_finetune_distributed                llama3/8B_full                          
                                         llama3_1/8B_full                        
                                         llama3_2/1B_full                          
                                         ...
Fine-Tuning cu Llama 3

Rulare TorchTune

 

  • Utilizare rețetă + --config + configurație
  • Rulare fine-tuning

    tune run full_finetune_single_device --config \
    llama3_1/8B_lora_single_device
    
  • Parametrii device=cpu sau device=cuda

  • epochs=<int> (<int> este 0 sau un număr întreg pozitiv)
Fine-Tuning cu Llama 3

Să exersăm!

Fine-Tuning cu Llama 3

Preparing Video For Download...