Skip to content

Latest commit

 

History

History
 
 

llama3.2_finetuning

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

🦙 Finetune Llama 3.2 in 30 Lines of Python

This script demonstrates how to finetune the Llama 3.2 model using the Unsloth library, which makes the process easy and fast. You can run this example to finetune Llama 3.1 1B and 3B models for free in Google Colab.

Features

  • Finetunes Llama 3.2 model using the Unsloth library
  • Implements Low-Rank Adaptation (LoRA) for efficient finetuning
  • Uses the FineTome-100k dataset for training
  • Configurable for different model sizes (1B and 3B)

Installation

  1. Clone the repository:
git clone https://github.com/Shubhamsaboo/awesome-llm-apps.git
cd llama3.2_finetuning
  1. Install the required dependencies:
pip install -r requirements.txt

Usage

  1. Open the script in Google Colab or your preferred Python environment.

  2. Run the script to start the finetuning process:

# Run the entire script
python finetune_llama3.2.py
  1. The finetuned model will be saved in the "finetuned_model" directory.

How it Works

  1. Model Loading: The script loads the Llama 3.2 3B Instruct model using Unsloth's FastLanguageModel.

  2. LoRA Setup: Low-Rank Adaptation is applied to specific layers of the model for efficient finetuning.

  3. Data Preparation: The FineTome-100k dataset is loaded and preprocessed using a chat template.

  4. Training Configuration: The script sets up the SFTTrainer with specific training arguments.

  5. Finetuning: The model is finetuned on the prepared dataset.

  6. Model Saving: The finetuned model is saved to disk.

Configuration

You can modify the following parameters in the script:

  • model_name: Change to "unsloth/Llama-3.1-1B-Instruct" for the 1B model
  • max_seq_length: Adjust the maximum sequence length
  • r: LoRA rank
  • Training hyperparameters in TrainingArguments

Customization

  • To use a different dataset, replace the load_dataset function call with your desired dataset.
  • Adjust the target_modules in the LoRA setup to finetune different layers of the model.
  • Modify the chat template in get_chat_template if you're using a different conversational format.

Running on Google Colab

  1. Open a new Google Colab notebook.
  2. Copy the entire script into a code cell.
  3. Add a cell at the beginning to install the required libraries:
!pip install torch transformers datasets trl unsloth
  1. Run the cells to start the finetuning process.

Notes

  • This script is optimized for running on Google Colab's free tier, which provides access to GPUs.
  • The finetuning process may take some time, depending on the model size and the available computational resources.
  • Make sure you have enough storage space in your Colab instance to save the finetuned model.