See axolotl config
axolotl version: 0.6.0
base_model: meta-llama/Llama-3.2-1B
# Automatically upload checkpoint and final model to HF
# hub_model_id: username/custom_model_name
load_in_8bit: false
load_in_4bit: true
strict: false
datasets:
- path: yahma/alpaca-cleaned
type: alpaca
dataset_prepared_path: last_run_prepared
val_set_size: 0.1
output_dir: ./outputs/qlora-out
adapter: qlora
lora_model_dir:
sequence_len: 2048
sample_packing: true
eval_sample_packing: true
pad_to_sequence_len: true
lora_r: 32
lora_alpha: 16
lora_dropout: 0.05
lora_fan_in_fan_out:
lora_target_modules:
- gate_proj
- down_proj
- up_proj
- q_proj
- v_proj
- k_proj
- o_proj
wandb_project: "axolotl"
wandb_entity: "kasfiekfs-e"
wandb_watch:
wandb_name:
wandb_log_model:
gradient_accumulation_steps: 4
micro_batch_size: 2
num_epochs: 1
optimizer: adamw_bnb_8bit
lr_scheduler: cosine
learning_rate: 0.0002
train_on_inputs: false
group_by_length: false
bf16: auto
fp16:
tf32: false
gradient_checkpointing: true
early_stopping_patience:
resume_from_checkpoint:
local_rank:
logging_steps: 1
xformers_attention:
flash_attention: true
loss_watchdog_threshold: 5.0
loss_watchdog_patience: 3
warmup_steps: 10
evals_per_epoch: 4
eval_table_size:
eval_max_new_tokens: 128
saves_per_epoch: 1
debug:
deepspeed:
weight_decay: 0.0
fsdp:
fsdp_config:
special_tokens:
pad_token: "<|end_of_text|>"
QLoRA-Llama-3.2-1B-Alpaca
This model is a fine-tuned version of meta-llama/Llama-3.2-1B on the yahma/alpaca-cleaned dataset. It achieves the following results on the evaluation set:
- Loss: 1.2517
Model description
This is an instruction-tuned model trained using the Alpaca Prompt Format with the cleaned version of the original Alpaca Dataset (yahma/alpaca-cleaned) released by Stanford.
Please note that this model is based on the Llama 3.2 1B Base (pretrained) model.
Intended uses & limitations
The following chat template provides optimal performance for inference:
# w/o train system prompt
{{ bos_token }}{% for message in messages %}{% if message['role'] == 'user' %}{{ '### Instruction:\n' + message['content'] + '\n\n' }}{% elif message['role'] == 'assistant' %}{{ '### Response:\n' + message['content'] + eos_token + '\n\n' }}{% endif %}{% endfor %}{% if add_generation_prompt %}{{ '### Response:\n' }}{% endif %}
# w/ train system prompt
{{ bos_token }}{{ 'Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request.\n\n' }}{% for message in messages %}{% if message['role'] == 'user' %}{{ '### Instruction:\n' + message['content'] + '\n\n' }}{% elif message['role'] == 'assistant' %}{{ '### Response:\n' + message['content'] + eos_token + '\n\n' }}{% endif %}{% endfor %}{% if add_generation_prompt %}{{ '### Response:\n' }}{% endif %}
The model was trained with the system prompt:
"Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request."
However, it has not been tested whether including this prompt in inference is the optimal choice. Feel free to experiment.
An example rendering with the w/ train system prompt
template is as follows:
<|begin_of_text|>### Instruction:
what is 43 + 12?
### Response:
The sum of numbers 43 and 12 is 55.<|end_of_text|>
In this case, the model output is:The sum of numbers 43 and 12 is 55.<|end_of_text|>
Be mindful of the EOS token.
Training procedure
Training hyperparameters
The following hyperparameters were used during training:
- learning_rate: 0.0002
- train_batch_size: 2
- eval_batch_size: 2
- seed: 42
- gradient_accumulation_steps: 4
- total_train_batch_size: 8
- optimizer: Use OptimizerNames.ADAMW_BNB with betas=(0.9,0.999) and epsilon=1e-08 and optimizer_args=No additional optimizer arguments
- lr_scheduler_type: cosine
- lr_scheduler_warmup_steps: 10
- num_epochs: 1.0
Training results
https://wandb.ai/kasfiekfs-e/axolotl/runs/uzitnvvj
Training Loss | Epoch | Step | Validation Loss |
---|---|---|---|
1.4939 | 0.0018 | 1 | 1.4682 |
1.3169 | 0.2510 | 138 | 1.2773 |
1.2603 | 0.5020 | 276 | 1.2603 |
1.2301 | 0.7531 | 414 | 1.2517 |
Framework versions
- PEFT 0.14.0
- Transformers 4.47.1
- Pytorch 2.5.1+cu124
- Datasets 3.2.0
- Tokenizers 0.21.0
- Downloads last month
- 0
Model tree for minpeter/QLoRA-Llama-3.2-1B-alpaca
Base model
meta-llama/Llama-3.2-1B