TorchTune के साथ फाइन-ट्यूनिंग

Llama 3 के साथ फाइन-ट्यूनिंग

Francesca Donadoni

Curriculum Manager, DataCamp

TorchTune फाइन-ट्यूनिंग के घटक

  • Model

    • फाइन-ट्यून करने के लिए आर्किटेक्चर और प्री-ट्रेंड वेट्स तय करता है
    • अलग-अलग वर्ज़न और पैरामीटर साइज उपलब्ध
  • Dataset

    • ट्रेनिंग में उपयोग होने वाला डेटा बताता है
  • Recipe

    • सेंट्रल कॉन्फ़िग फाइल जो मॉडल, डेटासेट, और ट्रेनिंग पैरामीटर जोड़ती है
    • एकरूपता और पुनरुत्पादन सुनिश्चित करता है

मॉडल आइकॉन

डेटासेट आइकॉन

रेसिपी आइकॉन

Llama 3 के साथ फाइन-ट्यूनिंग

TorchTune फाइन-ट्यूनिंग के घटक

  • Model

    • !tune ls
      llama3/8B_full
      llama3_1/8B_full
      llama3_2/1B_full ...
      
  • Dataset

    • ds.save_to_disk("new_dataset")
  • Recipe

    • custom_recipe.yaml

मॉडल आइकॉन

डेटासेट आइकॉन

रेसिपी आइकॉन

Llama 3 के साथ फाइन-ट्यूनिंग

TorchTune रेसिपी के घटक

  • General Settings और आउटपुट डायरेक्टरी
    • बैच साइज, डिवाइस और epochs

 

  • Model
    • आर्किटेक्चर और मॉडल कॉन्फ़िगरेशन बताता है

 

  • Optimizer

    • लर्निंग रेट शामिल है
  • Dataset

    • प्रीप्रोसेसिंग और डेटासेट पाथ तय करता है
batch_size: 4
device: cuda
epochs: 20
output_dir: /tmp/full-llama3.2-finetune

model:
  _component_: 
      torchtune.models.llama3_2.llama3_2_1b

optimizer:
  _component_: bitsandbytes.optim.PagedAdamW8bit
  lr: 2.0e-05

dataset:
  _component_: torchtune.datasets.alpaca_dataset
Llama 3 के साथ फाइन-ट्यूनिंग

TorchTune रेसिपी कॉन्फ़िगर करना

  • और भी पैरामीटर उपलब्ध
  • Python में yaml से कॉन्फ़िगर करें
import yaml

config_dict = {"batch_size": 4, "device": "cuda", "model": { "_component_": "torchtune.models.llama3_2.llama3_2_1b" }, ... }
yaml_file_path = "custom_recipe.yaml" with open(yaml_file_path, "w") as yaml_file: yaml.dump(config_dict, yaml_file)
Llama 3 के साथ फाइन-ट्यूनिंग

कस्टम फाइन-ट्यूनिंग चलाना

tune run --config custom_recipe.yaml
INFO:torchtune.utils.logging:Running 
Writing logs to /tmp/full-llama3.2-finetune/log_1732815689.txt
INFO:torchtune.utils.logging:Model is initialized with precision torch.bfloat16.
INFO:torchtune.utils.logging:Tokenizer is initialized from file.
1|52|Loss: 2.3697006702423096:   0%|▏                     | 52/25880
  • लॉग्स सेव हुए
  • सफल initialization
  • Epoch और step काउंट प्रोग्रेस
  • Loss मेट्रिक्स
Llama 3 के साथ फाइन-ट्यूनिंग

अभ्यास करते हैं!

Llama 3 के साथ फाइन-ट्यूनिंग

Preparing Video For Download...