PEFT
Safetensors
llama
axolotl
Generated from Trainer
minpeter's picture
Upload folder using huggingface_hub
54ec51a verified
---
library_name: peft
license: llama3.2
base_model: meta-llama/Llama-3.2-3B-Instruct
tags:
- axolotl
- generated_from_trainer
datasets:
- minpeter/xlam-function-calling-60k-hermes
- minpeter/xlam-irrelevance-7.5k-qwen2.5-72b-distill-hermes
- minpeter/bfcl-v1-non-live-ast-hermes
model-index:
- name: m-3b-v1-iteration-00-sf-xlam-06
results: []
---
<!-- This model card has been generated automatically according to the information the Trainer had access to. You
should probably proofread and complete it, then remove this comment. -->
[<img src="https://raw.githubusercontent.com/axolotl-ai-cloud/axolotl/main/image/axolotl-badge-web.png" alt="Built with Axolotl" width="200" height="32"/>](https://github.com/axolotl-ai-cloud/axolotl)
<details><summary>See axolotl config</summary>
axolotl version: `0.7.0`
```yaml
base_model: meta-llama/Llama-3.2-3B-Instruct
hub_model_id: morsmordre/m-3b-v1-iteration-00-sf-xlam-06
load_in_8bit: false
load_in_4bit: false
strict: false
datasets:
- path: minpeter/xlam-function-calling-60k-hermes
data_files:
- result.parquet
type: chat_template
chat_template: llama3
field_messages: conversations
message_field_role: from
message_field_content: value
shards: 30
- path: minpeter/xlam-irrelevance-7.5k-qwen2.5-72b-distill-hermes
data_files:
- result.parquet
type: chat_template
chat_template: llama3
field_messages: conversations
message_field_role: from
message_field_content: value
shards: 6
- path: minpeter/bfcl-v1-non-live-ast-hermes
data_files:
- result.parquet
type: chat_template
chat_template: llama3
field_messages: conversations
message_field_role: from
message_field_content: value
chat_template: llama3
dataset_prepared_path: last_run_prepared
output_dir: ./output
adapter: lora
lora_model_dir:
sequence_len: 4096
pad_to_sequence_len: true
sample_packing: true
val_set_size: 0.05
eval_sample_packing: true
evals_per_epoch: 3
lora_r: 8
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: 2
micro_batch_size: 2
num_epochs: 1
optimizer: adamw_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
saves_per_epoch: 1
debug:
deepspeed:
weight_decay: 0.0
fsdp:
fsdp_config:
special_tokens:
pad_token: "<|finetune_right_pad_id|>"
```
</details><br>
# m-3b-v1-iteration-00-sf-xlam-06
This model is a fine-tuned version of [meta-llama/Llama-3.2-3B-Instruct](https://huggingface.co/meta-llama/Llama-3.2-3B-Instruct) on the minpeter/xlam-function-calling-60k-hermes, the minpeter/xlam-irrelevance-7.5k-qwen2.5-72b-distill-hermes and the minpeter/bfcl-v1-non-live-ast-hermes datasets.
It achieves the following results on the evaluation set:
- Loss: 0.1362
## Model description
| Test Type (bfcl) | Base Model Accuracy | This Adapter Accuracy | Improvement |
| ----------------- | ------------------- | --------------------- | ----------- |
| irrelevance | 72.08 | 74.17 | +2.09 |
| parallel_multiple | 10.00 | 90.00 | +80.00 |
| parallel | 11.50 | 92.00 | +80.50 |
| simple | 24.75 | 95.00 | +70.25 |
| multiple | 20.00 | 93.50 | +73.50 |
## Inference
```sh
vllm serve meta-llama/Llama-3.2-3B-Instruct \
--enable-auto-tool-choice --tool-call-parser llama_hermes --tool-parser-plugin github.com/minpeter/hermes-llama-parse/lh_tool_parser.py \
--port 4000 --enable-lora --lora-modules tool='morsmordre/m-3b-v1-iteration-00-sf-xlam-06'
```
*The hermes parser of the existing vllm expects the text <tool_call> and </tool_call> to exist as a single token in the vocab, so a modified "llama_hermes" parser is required. As of v0.7.3, you can inject the plugin using the --tool-parser-plugin flag.*
## Model Evaluation Results
More information needed
## Intended uses & limitations
More information needed
## Training and evaluation data
More information needed
## 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: 2
- total_train_batch_size: 4
- optimizer: Use OptimizerNames.ADAMW_8BIT 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
| Training Loss | Epoch | Step | Validation Loss |
| :-----------: | :----: | :---: | :-------------: |
| 0.6162 | 0.0059 | 1 | 0.4366 |
| 0.2323 | 0.3343 | 57 | 0.1475 |
| 0.1065 | 0.6686 | 114 | 0.1362 |
### Framework versions
- PEFT 0.14.0
- Transformers 4.48.3
- Pytorch 2.5.1+cu124
- Datasets 3.2.0
- Tokenizers 0.21.0