81 lines
2.2 KiB
Markdown
81 lines
2.2 KiB
Markdown
|
|
---
|
||
|
|
base_model: unsloth/Llama-3.1-8B-Instruct
|
||
|
|
tags:
|
||
|
|
- text-generation-inference
|
||
|
|
- transformers
|
||
|
|
- unsloth
|
||
|
|
- llama
|
||
|
|
license: apache-2.0
|
||
|
|
language:
|
||
|
|
- en
|
||
|
|
datasets:
|
||
|
|
- CreitinGameplays/mango-v2
|
||
|
|
---
|
||
|
|
|
||
|
|
# Uploaded finetuned model
|
||
|
|
|
||
|
|
- **Developed by:** CreitinGameplays
|
||
|
|
- **License:** apache-2.0
|
||
|
|
- **Finetuned from model :** unsloth/Llama-3.1-8B-Instruct
|
||
|
|
|
||
|
|
This llama model was trained 2x faster with [Unsloth](https://github.com/unslothai/unsloth) and Huggingface's TRL library.
|
||
|
|
|
||
|
|
[<img src="https://raw.githubusercontent.com/unslothai/unsloth/main/images/unsloth%20made%20with%20love.png" width="200"/>](https://github.com/unslothai/unsloth)
|
||
|
|
|
||
|
|
Trained using the following parameters:
|
||
|
|
```python
|
||
|
|
model = FastLanguageModel.get_peft_model(
|
||
|
|
model,
|
||
|
|
r = 16,
|
||
|
|
target_modules = ["q_proj", "k_proj", "v_proj", "o_proj",
|
||
|
|
"gate_proj", "up_proj", "down_proj",],
|
||
|
|
lora_alpha = 16,
|
||
|
|
lora_dropout = 0,
|
||
|
|
bias = "none",
|
||
|
|
use_gradient_checkpointing = "unsloth",
|
||
|
|
random_state = 3407,
|
||
|
|
use_rslora = False,
|
||
|
|
loftq_config = None,
|
||
|
|
)
|
||
|
|
|
||
|
|
training_args = TrainingArguments(
|
||
|
|
per_device_train_batch_size = 16,
|
||
|
|
gradient_accumulation_steps = 2,
|
||
|
|
warmup_steps = 100,
|
||
|
|
num_train_epochs = 2,
|
||
|
|
learning_rate = 2e-4,
|
||
|
|
fp16 = not torch.cuda.is_bf16_supported(),
|
||
|
|
bf16 = torch.cuda.is_bf16_supported(),
|
||
|
|
logging_steps = 10,
|
||
|
|
optim = "adamw_8bit",
|
||
|
|
weight_decay = 0.01,
|
||
|
|
lr_scheduler_type = "linear",
|
||
|
|
seed = 3407,
|
||
|
|
output_dir = OUTPUT_DIR,
|
||
|
|
report_to = "none",
|
||
|
|
save_strategy = "steps",
|
||
|
|
save_steps = 50,
|
||
|
|
save_total_limit = 2,
|
||
|
|
load_best_model_at_end = False,
|
||
|
|
)
|
||
|
|
|
||
|
|
trainer = SFTTrainer(
|
||
|
|
model = model,
|
||
|
|
tokenizer = tokenizer,
|
||
|
|
train_dataset = dataset,
|
||
|
|
dataset_text_field = "text",
|
||
|
|
max_seq_length = max_seq_length,
|
||
|
|
dataset_num_proc = 2,
|
||
|
|
packing = False,
|
||
|
|
args = training_args,
|
||
|
|
)
|
||
|
|
|
||
|
|
trainer = train_on_responses_only(
|
||
|
|
trainer,
|
||
|
|
instruction_part = "<|start_header_id|>user<|end_header_id|>\n\n", # llama
|
||
|
|
response_part = "<|start_header_id|>assistant<|end_header_id|>\n\n",
|
||
|
|
)
|
||
|
|
```
|
||
|
|
|
||
|
|
Note: this model version was finetuned and saved with `model.merge_and_unload()` instead of `model.save_pretrained_merged()` to ensure better compatibility.
|