Upload 36 files
Browse files- README.md +106 -3
- adapters/category_holdout/rl/0000100_adapters.safetensors +3 -0
- adapters/category_holdout/rl/adapter_config.json +40 -0
- adapters/category_holdout/rl/adapters.safetensors +3 -0
- adapters/category_holdout/sft/0000100_adapters.safetensors +3 -0
- adapters/category_holdout/sft/0000200_adapters.safetensors +3 -0
- adapters/category_holdout/sft/0000300_adapters.safetensors +3 -0
- adapters/category_holdout/sft/adapter_config.json +40 -0
- adapters/category_holdout/sft/adapters.safetensors +3 -0
- adapters/diversity/high_diversity/0000100_adapters.safetensors +3 -0
- adapters/diversity/high_diversity/0000200_adapters.safetensors +3 -0
- adapters/diversity/high_diversity/0000300_adapters.safetensors +3 -0
- adapters/diversity/high_diversity/adapter_config.json +40 -0
- adapters/diversity/high_diversity/adapters.safetensors +3 -0
- adapters/diversity/low_diversity/0000100_adapters.safetensors +3 -0
- adapters/diversity/low_diversity/0000200_adapters.safetensors +3 -0
- adapters/diversity/low_diversity/0000300_adapters.safetensors +3 -0
- adapters/diversity/low_diversity/adapter_config.json +40 -0
- adapters/diversity/low_diversity/adapters.safetensors +3 -0
- adapters/sft/0000300_adapters.safetensors +3 -0
- adapters/sft/adapter_config.json +40 -0
- adapters/sft/adapters.safetensors +3 -0
- adapters/sft_dpo/0000300_adapters.safetensors +3 -0
- adapters/sft_dpo/adapter_config.json +40 -0
- adapters/sft_dpo/adapters.safetensors +3 -0
- adapters/sft_rl/0000300_adapters.safetensors +3 -0
- adapters/sft_rl/adapter_config.json +40 -0
- adapters/sft_rl/adapters.safetensors +3 -0
- adapters/tool_generalization/rl/0000100_adapters.safetensors +3 -0
- adapters/tool_generalization/rl/adapter_config.json +40 -0
- adapters/tool_generalization/rl/adapters.safetensors +3 -0
- adapters/tool_generalization/sft/0000100_adapters.safetensors +3 -0
- adapters/tool_generalization/sft/0000200_adapters.safetensors +3 -0
- adapters/tool_generalization/sft/0000300_adapters.safetensors +3 -0
- adapters/tool_generalization/sft/adapter_config.json +40 -0
- adapters/tool_generalization/sft/adapters.safetensors +3 -0
README.md
CHANGED
|
@@ -1,3 +1,106 @@
|
|
| 1 |
-
---
|
| 2 |
-
license: mit
|
| 3 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: mit
|
| 3 |
+
language:
|
| 4 |
+
- en
|
| 5 |
+
tags:
|
| 6 |
+
- tool-calling
|
| 7 |
+
- function-calling
|
| 8 |
+
- fine-tuning
|
| 9 |
+
- lora
|
| 10 |
+
datasets:
|
| 11 |
+
- gorilla-llm/berkeley-function-call-leaderboard
|
| 12 |
+
base_model: Qwen/Qwen2.5-1.5B-Instruct
|
| 13 |
+
---
|
| 14 |
+
|
| 15 |
+
# Tool Calling LoRA Adapters
|
| 16 |
+
|
| 17 |
+
LoRA adapters for improving LLM tool calling, trained as part of the research paper "What Actually Improves LLM Tool Calling?"
|
| 18 |
+
|
| 19 |
+
## Model Description
|
| 20 |
+
|
| 21 |
+
These are LoRA adapters (rank 8, alpha 16) trained on top of `Qwen2.5-1.5B-Instruct` for function calling tasks using the Berkeley Function Calling Leaderboard (BFCL) dataset.
|
| 22 |
+
|
| 23 |
+
## Key Findings
|
| 24 |
+
|
| 25 |
+
Our ablation study found that:
|
| 26 |
+
|
| 27 |
+
- **SFT provides +47 points** accuracy improvement (9.7% → 57%)
|
| 28 |
+
- **DPO and RL add <1 point** when applied post-SFT
|
| 29 |
+
- **Training data diversity matters more than quantity**: 500 diverse examples outperform 500 homogeneous examples by 26 points
|
| 30 |
+
- **Tool generalization works well** (79% on unseen tools) but **pattern generalization is harder** (42% on unseen patterns)
|
| 31 |
+
|
| 32 |
+
## Available Adapters
|
| 33 |
+
|
| 34 |
+
| Adapter | Description | Accuracy |
|
| 35 |
+
|---------|-------------|----------|
|
| 36 |
+
| `sft/` | SFT on diverse BFCL data | 57.0% |
|
| 37 |
+
| `sft_dpo/` | SFT + DPO preference tuning | 57.7% |
|
| 38 |
+
| `sft_rl/` | SFT + reward-filtered RL | 58.0% |
|
| 39 |
+
| `tool_generalization/sft/` | SFT for unseen tools experiment | 79% on held-out tools |
|
| 40 |
+
| `category_holdout/sft/` | SFT for pattern generalization | 42% on held-out patterns |
|
| 41 |
+
| `diversity/high_diversity/` | Diverse training (125 x 4 categories) | 53% |
|
| 42 |
+
| `diversity/low_diversity/` | Homogeneous training (500 simple) | 27% |
|
| 43 |
+
|
| 44 |
+
## Usage
|
| 45 |
+
|
| 46 |
+
```python
|
| 47 |
+
from mlx_lm import load, generate
|
| 48 |
+
|
| 49 |
+
# Load base model with SFT adapter
|
| 50 |
+
model, tokenizer = load(
|
| 51 |
+
"mlx-community/Qwen2.5-1.5B-Instruct-4bit",
|
| 52 |
+
adapter_path="path/to/sft"
|
| 53 |
+
)
|
| 54 |
+
|
| 55 |
+
# Format your prompt with function definitions
|
| 56 |
+
messages = [
|
| 57 |
+
{"role": "system", "content": "You are a helpful assistant with access to functions..."},
|
| 58 |
+
{"role": "user", "content": "What's the weather in Paris?"}
|
| 59 |
+
]
|
| 60 |
+
|
| 61 |
+
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
|
| 62 |
+
output = generate(model, tokenizer, prompt=prompt, max_tokens=256)
|
| 63 |
+
print(output)
|
| 64 |
+
# Output: {"name": "get_weather", "arguments": {"city": "Paris"}}
|
| 65 |
+
```
|
| 66 |
+
|
| 67 |
+
## Training Details
|
| 68 |
+
|
| 69 |
+
- **Base model**: Qwen2.5-1.5B-Instruct (4-bit quantization)
|
| 70 |
+
- **LoRA config**: rank=8, alpha=16
|
| 71 |
+
- **Training**: 300 iterations, learning rate 1e-5
|
| 72 |
+
- **Framework**: MLX on Apple Silicon
|
| 73 |
+
- **Data**: Berkeley Function Calling Leaderboard (BFCL)
|
| 74 |
+
|
| 75 |
+
## Call Pattern Categories
|
| 76 |
+
|
| 77 |
+
The BFCL benchmark includes four call pattern categories:
|
| 78 |
+
|
| 79 |
+
1. **Simple**: Single function call (e.g., `get_weather(city="Paris")`)
|
| 80 |
+
2. **Multiple**: Sequential calls where later calls depend on earlier results
|
| 81 |
+
3. **Parallel**: Independent concurrent calls
|
| 82 |
+
4. **Parallel-multiple**: Combinations requiring both parallel and sequential structure
|
| 83 |
+
|
| 84 |
+
## Recommendations
|
| 85 |
+
|
| 86 |
+
Based on our research:
|
| 87 |
+
|
| 88 |
+
1. **Use SFT with diverse training data** - this provides nearly all achievable gains
|
| 89 |
+
2. **Prioritize pattern diversity over tool coverage** - models generalize well to new tools but struggle with new patterns
|
| 90 |
+
3. **Skip complex pipelines** - DPO, RL, and scaffolding provide minimal benefit in our setting
|
| 91 |
+
|
| 92 |
+
## Citation
|
| 93 |
+
|
| 94 |
+
```bibtex
|
| 95 |
+
@article{ramakrishnan2024toolcalling,
|
| 96 |
+
title={What Actually Improves LLM Tool Calling?},
|
| 97 |
+
author={Ramakrishnan, Siddharth},
|
| 98 |
+
year={2024}
|
| 99 |
+
}
|
| 100 |
+
```
|
| 101 |
+
|
| 102 |
+
## Links
|
| 103 |
+
|
| 104 |
+
- [Paper PDF](#)
|
| 105 |
+
- [GitHub Repository](#)
|
| 106 |
+
- [BFCL Dataset](https://github.com/ShishirPatil/gorilla/tree/main/berkeley-function-call-leaderboard)
|
adapters/category_holdout/rl/0000100_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:623b3b11a7970ea1e1193f17d13a5641d6df01c89b56ee1a97cc703288a43420
|
| 3 |
+
size 21126646
|
adapters/category_holdout/rl/adapter_config.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"adapter_path": "fc_benchmark/models/category_holdout/rl",
|
| 3 |
+
"batch_size": 1,
|
| 4 |
+
"config": null,
|
| 5 |
+
"data": "fc_benchmark/data/prepared/category_split/rl_filtered",
|
| 6 |
+
"fine_tune_type": "lora",
|
| 7 |
+
"grad_accumulation_steps": 1,
|
| 8 |
+
"grad_checkpoint": false,
|
| 9 |
+
"iters": 100,
|
| 10 |
+
"learning_rate": 5e-06,
|
| 11 |
+
"lora_parameters": {
|
| 12 |
+
"rank": 8,
|
| 13 |
+
"dropout": 0.0,
|
| 14 |
+
"scale": 20.0
|
| 15 |
+
},
|
| 16 |
+
"lr_schedule": null,
|
| 17 |
+
"mask_prompt": false,
|
| 18 |
+
"max_seq_length": 2048,
|
| 19 |
+
"model": "mlx-community/Qwen2.5-1.5B-Instruct-4bit",
|
| 20 |
+
"num_layers": 16,
|
| 21 |
+
"optimizer": "adam",
|
| 22 |
+
"optimizer_config": {
|
| 23 |
+
"adam": {},
|
| 24 |
+
"adamw": {},
|
| 25 |
+
"muon": {},
|
| 26 |
+
"sgd": {},
|
| 27 |
+
"adafactor": {}
|
| 28 |
+
},
|
| 29 |
+
"project_name": null,
|
| 30 |
+
"report_to": null,
|
| 31 |
+
"resume_adapter_file": "fc_benchmark/models/category_holdout/sft/adapters.safetensors",
|
| 32 |
+
"save_every": 100,
|
| 33 |
+
"seed": 0,
|
| 34 |
+
"steps_per_eval": 200,
|
| 35 |
+
"steps_per_report": 25,
|
| 36 |
+
"test": false,
|
| 37 |
+
"test_batches": 500,
|
| 38 |
+
"train": true,
|
| 39 |
+
"val_batches": 25
|
| 40 |
+
}
|
adapters/category_holdout/rl/adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:623b3b11a7970ea1e1193f17d13a5641d6df01c89b56ee1a97cc703288a43420
|
| 3 |
+
size 21126646
|
adapters/category_holdout/sft/0000100_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:4342fdb99d4e5dab3afb6f1624b87d8fd32bc2c8342c321d3d662b14d0d3b896
|
| 3 |
+
size 21126646
|
adapters/category_holdout/sft/0000200_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:754dc77e7ff3baa09ea36bee9b72c6118ef05223fc76a60b5241543c4d4434f2
|
| 3 |
+
size 21126646
|
adapters/category_holdout/sft/0000300_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:cee96b0e1c97f8e39a11cad0905f9acd330eac8eb6b09879641dedcacfac6b75
|
| 3 |
+
size 21126646
|
adapters/category_holdout/sft/adapter_config.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"adapter_path": "fc_benchmark/models/category_holdout/sft",
|
| 3 |
+
"batch_size": 1,
|
| 4 |
+
"config": null,
|
| 5 |
+
"data": "fc_benchmark/data/prepared/category_split/sft",
|
| 6 |
+
"fine_tune_type": "lora",
|
| 7 |
+
"grad_accumulation_steps": 1,
|
| 8 |
+
"grad_checkpoint": false,
|
| 9 |
+
"iters": 300,
|
| 10 |
+
"learning_rate": 1e-05,
|
| 11 |
+
"lora_parameters": {
|
| 12 |
+
"rank": 8,
|
| 13 |
+
"dropout": 0.0,
|
| 14 |
+
"scale": 20.0
|
| 15 |
+
},
|
| 16 |
+
"lr_schedule": null,
|
| 17 |
+
"mask_prompt": false,
|
| 18 |
+
"max_seq_length": 2048,
|
| 19 |
+
"model": "mlx-community/Qwen2.5-1.5B-Instruct-4bit",
|
| 20 |
+
"num_layers": 16,
|
| 21 |
+
"optimizer": "adam",
|
| 22 |
+
"optimizer_config": {
|
| 23 |
+
"adam": {},
|
| 24 |
+
"adamw": {},
|
| 25 |
+
"muon": {},
|
| 26 |
+
"sgd": {},
|
| 27 |
+
"adafactor": {}
|
| 28 |
+
},
|
| 29 |
+
"project_name": null,
|
| 30 |
+
"report_to": null,
|
| 31 |
+
"resume_adapter_file": null,
|
| 32 |
+
"save_every": 100,
|
| 33 |
+
"seed": 0,
|
| 34 |
+
"steps_per_eval": 200,
|
| 35 |
+
"steps_per_report": 50,
|
| 36 |
+
"test": false,
|
| 37 |
+
"test_batches": 500,
|
| 38 |
+
"train": true,
|
| 39 |
+
"val_batches": 25
|
| 40 |
+
}
|
adapters/category_holdout/sft/adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:cee96b0e1c97f8e39a11cad0905f9acd330eac8eb6b09879641dedcacfac6b75
|
| 3 |
+
size 21126646
|
adapters/diversity/high_diversity/0000100_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:acc644b355ed34aa7ca2a678193144409c81406eee0c7f6fe3d3de9e12e22ea2
|
| 3 |
+
size 21126646
|
adapters/diversity/high_diversity/0000200_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:74ae00b5c4de4788acb7085eef238c2c063a57f19aa01cb45f1c5de915c94511
|
| 3 |
+
size 21126646
|
adapters/diversity/high_diversity/0000300_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:4652a6117ba4f013b2202af19a6610c696a618b03f396ca823fe745944157c59
|
| 3 |
+
size 21126646
|
adapters/diversity/high_diversity/adapter_config.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"adapter_path": "fc_benchmark/models/diversity/high_diversity",
|
| 3 |
+
"batch_size": 1,
|
| 4 |
+
"config": null,
|
| 5 |
+
"data": "fc_benchmark/data/prepared/diversity/high_diversity/sft",
|
| 6 |
+
"fine_tune_type": "lora",
|
| 7 |
+
"grad_accumulation_steps": 1,
|
| 8 |
+
"grad_checkpoint": false,
|
| 9 |
+
"iters": 300,
|
| 10 |
+
"learning_rate": 1e-05,
|
| 11 |
+
"lora_parameters": {
|
| 12 |
+
"rank": 8,
|
| 13 |
+
"dropout": 0.0,
|
| 14 |
+
"scale": 20.0
|
| 15 |
+
},
|
| 16 |
+
"lr_schedule": null,
|
| 17 |
+
"mask_prompt": false,
|
| 18 |
+
"max_seq_length": 2048,
|
| 19 |
+
"model": "mlx-community/Qwen2.5-1.5B-Instruct-4bit",
|
| 20 |
+
"num_layers": 16,
|
| 21 |
+
"optimizer": "adam",
|
| 22 |
+
"optimizer_config": {
|
| 23 |
+
"adam": {},
|
| 24 |
+
"adamw": {},
|
| 25 |
+
"muon": {},
|
| 26 |
+
"sgd": {},
|
| 27 |
+
"adafactor": {}
|
| 28 |
+
},
|
| 29 |
+
"project_name": null,
|
| 30 |
+
"report_to": null,
|
| 31 |
+
"resume_adapter_file": null,
|
| 32 |
+
"save_every": 100,
|
| 33 |
+
"seed": 0,
|
| 34 |
+
"steps_per_eval": 200,
|
| 35 |
+
"steps_per_report": 50,
|
| 36 |
+
"test": false,
|
| 37 |
+
"test_batches": 500,
|
| 38 |
+
"train": true,
|
| 39 |
+
"val_batches": 25
|
| 40 |
+
}
|
adapters/diversity/high_diversity/adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:4652a6117ba4f013b2202af19a6610c696a618b03f396ca823fe745944157c59
|
| 3 |
+
size 21126646
|
adapters/diversity/low_diversity/0000100_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:fccd6206210a9f473998a539f1f85c119a5bd4c292dfabdbb9b391645fc0eb43
|
| 3 |
+
size 21126646
|
adapters/diversity/low_diversity/0000200_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:b905a105509501466b607c35e0cff78607a6f7bfd5f1e09baa5a7bcfcfcff23f
|
| 3 |
+
size 21126646
|
adapters/diversity/low_diversity/0000300_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:07c2a6764d46cade0c14fca72243746e87955062f9ed8c0d871144f093178912
|
| 3 |
+
size 21126646
|
adapters/diversity/low_diversity/adapter_config.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"adapter_path": "fc_benchmark/models/diversity/low_diversity",
|
| 3 |
+
"batch_size": 1,
|
| 4 |
+
"config": null,
|
| 5 |
+
"data": "fc_benchmark/data/prepared/diversity/low_diversity/sft",
|
| 6 |
+
"fine_tune_type": "lora",
|
| 7 |
+
"grad_accumulation_steps": 1,
|
| 8 |
+
"grad_checkpoint": false,
|
| 9 |
+
"iters": 300,
|
| 10 |
+
"learning_rate": 1e-05,
|
| 11 |
+
"lora_parameters": {
|
| 12 |
+
"rank": 8,
|
| 13 |
+
"dropout": 0.0,
|
| 14 |
+
"scale": 20.0
|
| 15 |
+
},
|
| 16 |
+
"lr_schedule": null,
|
| 17 |
+
"mask_prompt": false,
|
| 18 |
+
"max_seq_length": 2048,
|
| 19 |
+
"model": "mlx-community/Qwen2.5-1.5B-Instruct-4bit",
|
| 20 |
+
"num_layers": 16,
|
| 21 |
+
"optimizer": "adam",
|
| 22 |
+
"optimizer_config": {
|
| 23 |
+
"adam": {},
|
| 24 |
+
"adamw": {},
|
| 25 |
+
"muon": {},
|
| 26 |
+
"sgd": {},
|
| 27 |
+
"adafactor": {}
|
| 28 |
+
},
|
| 29 |
+
"project_name": null,
|
| 30 |
+
"report_to": null,
|
| 31 |
+
"resume_adapter_file": null,
|
| 32 |
+
"save_every": 100,
|
| 33 |
+
"seed": 0,
|
| 34 |
+
"steps_per_eval": 200,
|
| 35 |
+
"steps_per_report": 50,
|
| 36 |
+
"test": false,
|
| 37 |
+
"test_batches": 500,
|
| 38 |
+
"train": true,
|
| 39 |
+
"val_batches": 25
|
| 40 |
+
}
|
adapters/diversity/low_diversity/adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:07c2a6764d46cade0c14fca72243746e87955062f9ed8c0d871144f093178912
|
| 3 |
+
size 21126646
|
adapters/sft/0000300_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:23341f026608086151e216c2bc924121b0269364820390915373794ef8e370d7
|
| 3 |
+
size 21126646
|
adapters/sft/adapter_config.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"adapter_path": "fc_benchmark/models/ablation_sft",
|
| 3 |
+
"batch_size": 1,
|
| 4 |
+
"config": null,
|
| 5 |
+
"data": "fc_benchmark/data/prepared/sft",
|
| 6 |
+
"fine_tune_type": "lora",
|
| 7 |
+
"grad_accumulation_steps": 1,
|
| 8 |
+
"grad_checkpoint": false,
|
| 9 |
+
"iters": 300,
|
| 10 |
+
"learning_rate": 1e-05,
|
| 11 |
+
"lora_parameters": {
|
| 12 |
+
"rank": 8,
|
| 13 |
+
"dropout": 0.0,
|
| 14 |
+
"scale": 20.0
|
| 15 |
+
},
|
| 16 |
+
"lr_schedule": null,
|
| 17 |
+
"mask_prompt": false,
|
| 18 |
+
"max_seq_length": 2048,
|
| 19 |
+
"model": "mlx-community/Qwen2.5-1.5B-Instruct-4bit",
|
| 20 |
+
"num_layers": 16,
|
| 21 |
+
"optimizer": "adam",
|
| 22 |
+
"optimizer_config": {
|
| 23 |
+
"adam": {},
|
| 24 |
+
"adamw": {},
|
| 25 |
+
"muon": {},
|
| 26 |
+
"sgd": {},
|
| 27 |
+
"adafactor": {}
|
| 28 |
+
},
|
| 29 |
+
"project_name": null,
|
| 30 |
+
"report_to": null,
|
| 31 |
+
"resume_adapter_file": null,
|
| 32 |
+
"save_every": 300,
|
| 33 |
+
"seed": 0,
|
| 34 |
+
"steps_per_eval": 200,
|
| 35 |
+
"steps_per_report": 25,
|
| 36 |
+
"test": false,
|
| 37 |
+
"test_batches": 500,
|
| 38 |
+
"train": true,
|
| 39 |
+
"val_batches": 25
|
| 40 |
+
}
|
adapters/sft/adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:23341f026608086151e216c2bc924121b0269364820390915373794ef8e370d7
|
| 3 |
+
size 21126646
|
adapters/sft_dpo/0000300_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:23341f026608086151e216c2bc924121b0269364820390915373794ef8e370d7
|
| 3 |
+
size 21126646
|
adapters/sft_dpo/adapter_config.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"adapter_path": "fc_benchmark/models/ablation_sft",
|
| 3 |
+
"batch_size": 1,
|
| 4 |
+
"config": null,
|
| 5 |
+
"data": "fc_benchmark/data/prepared/sft",
|
| 6 |
+
"fine_tune_type": "lora",
|
| 7 |
+
"grad_accumulation_steps": 1,
|
| 8 |
+
"grad_checkpoint": false,
|
| 9 |
+
"iters": 300,
|
| 10 |
+
"learning_rate": 1e-05,
|
| 11 |
+
"lora_parameters": {
|
| 12 |
+
"rank": 8,
|
| 13 |
+
"dropout": 0.0,
|
| 14 |
+
"scale": 20.0
|
| 15 |
+
},
|
| 16 |
+
"lr_schedule": null,
|
| 17 |
+
"mask_prompt": false,
|
| 18 |
+
"max_seq_length": 2048,
|
| 19 |
+
"model": "mlx-community/Qwen2.5-1.5B-Instruct-4bit",
|
| 20 |
+
"num_layers": 16,
|
| 21 |
+
"optimizer": "adam",
|
| 22 |
+
"optimizer_config": {
|
| 23 |
+
"adam": {},
|
| 24 |
+
"adamw": {},
|
| 25 |
+
"muon": {},
|
| 26 |
+
"sgd": {},
|
| 27 |
+
"adafactor": {}
|
| 28 |
+
},
|
| 29 |
+
"project_name": null,
|
| 30 |
+
"report_to": null,
|
| 31 |
+
"resume_adapter_file": null,
|
| 32 |
+
"save_every": 300,
|
| 33 |
+
"seed": 0,
|
| 34 |
+
"steps_per_eval": 200,
|
| 35 |
+
"steps_per_report": 25,
|
| 36 |
+
"test": false,
|
| 37 |
+
"test_batches": 500,
|
| 38 |
+
"train": true,
|
| 39 |
+
"val_batches": 25
|
| 40 |
+
}
|
adapters/sft_dpo/adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:23341f026608086151e216c2bc924121b0269364820390915373794ef8e370d7
|
| 3 |
+
size 21126646
|
adapters/sft_rl/0000300_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:23341f026608086151e216c2bc924121b0269364820390915373794ef8e370d7
|
| 3 |
+
size 21126646
|
adapters/sft_rl/adapter_config.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"adapter_path": "fc_benchmark/models/ablation_sft",
|
| 3 |
+
"batch_size": 1,
|
| 4 |
+
"config": null,
|
| 5 |
+
"data": "fc_benchmark/data/prepared/sft",
|
| 6 |
+
"fine_tune_type": "lora",
|
| 7 |
+
"grad_accumulation_steps": 1,
|
| 8 |
+
"grad_checkpoint": false,
|
| 9 |
+
"iters": 300,
|
| 10 |
+
"learning_rate": 1e-05,
|
| 11 |
+
"lora_parameters": {
|
| 12 |
+
"rank": 8,
|
| 13 |
+
"dropout": 0.0,
|
| 14 |
+
"scale": 20.0
|
| 15 |
+
},
|
| 16 |
+
"lr_schedule": null,
|
| 17 |
+
"mask_prompt": false,
|
| 18 |
+
"max_seq_length": 2048,
|
| 19 |
+
"model": "mlx-community/Qwen2.5-1.5B-Instruct-4bit",
|
| 20 |
+
"num_layers": 16,
|
| 21 |
+
"optimizer": "adam",
|
| 22 |
+
"optimizer_config": {
|
| 23 |
+
"adam": {},
|
| 24 |
+
"adamw": {},
|
| 25 |
+
"muon": {},
|
| 26 |
+
"sgd": {},
|
| 27 |
+
"adafactor": {}
|
| 28 |
+
},
|
| 29 |
+
"project_name": null,
|
| 30 |
+
"report_to": null,
|
| 31 |
+
"resume_adapter_file": null,
|
| 32 |
+
"save_every": 300,
|
| 33 |
+
"seed": 0,
|
| 34 |
+
"steps_per_eval": 200,
|
| 35 |
+
"steps_per_report": 25,
|
| 36 |
+
"test": false,
|
| 37 |
+
"test_batches": 500,
|
| 38 |
+
"train": true,
|
| 39 |
+
"val_batches": 25
|
| 40 |
+
}
|
adapters/sft_rl/adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:23341f026608086151e216c2bc924121b0269364820390915373794ef8e370d7
|
| 3 |
+
size 21126646
|
adapters/tool_generalization/rl/0000100_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:f4a539c0be12fcc05ca3810a520f7740b50c0a87224a247b55bb6d637b425b3e
|
| 3 |
+
size 21126646
|
adapters/tool_generalization/rl/adapter_config.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"adapter_path": "fc_benchmark/models/tool_generalization/rl",
|
| 3 |
+
"batch_size": 1,
|
| 4 |
+
"config": null,
|
| 5 |
+
"data": "fc_benchmark/data/prepared/tool_split/rl_filtered",
|
| 6 |
+
"fine_tune_type": "lora",
|
| 7 |
+
"grad_accumulation_steps": 1,
|
| 8 |
+
"grad_checkpoint": false,
|
| 9 |
+
"iters": 100,
|
| 10 |
+
"learning_rate": 5e-06,
|
| 11 |
+
"lora_parameters": {
|
| 12 |
+
"rank": 8,
|
| 13 |
+
"dropout": 0.0,
|
| 14 |
+
"scale": 20.0
|
| 15 |
+
},
|
| 16 |
+
"lr_schedule": null,
|
| 17 |
+
"mask_prompt": false,
|
| 18 |
+
"max_seq_length": 2048,
|
| 19 |
+
"model": "mlx-community/Qwen2.5-1.5B-Instruct-4bit",
|
| 20 |
+
"num_layers": 16,
|
| 21 |
+
"optimizer": "adam",
|
| 22 |
+
"optimizer_config": {
|
| 23 |
+
"adam": {},
|
| 24 |
+
"adamw": {},
|
| 25 |
+
"muon": {},
|
| 26 |
+
"sgd": {},
|
| 27 |
+
"adafactor": {}
|
| 28 |
+
},
|
| 29 |
+
"project_name": null,
|
| 30 |
+
"report_to": null,
|
| 31 |
+
"resume_adapter_file": "fc_benchmark/models/tool_generalization/sft/adapters.safetensors",
|
| 32 |
+
"save_every": 100,
|
| 33 |
+
"seed": 0,
|
| 34 |
+
"steps_per_eval": 200,
|
| 35 |
+
"steps_per_report": 25,
|
| 36 |
+
"test": false,
|
| 37 |
+
"test_batches": 500,
|
| 38 |
+
"train": true,
|
| 39 |
+
"val_batches": 25
|
| 40 |
+
}
|
adapters/tool_generalization/rl/adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:f4a539c0be12fcc05ca3810a520f7740b50c0a87224a247b55bb6d637b425b3e
|
| 3 |
+
size 21126646
|
adapters/tool_generalization/sft/0000100_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:77094d2aa984db32054d83dbd561aec8899513952f7e444921ec7c92860ad977
|
| 3 |
+
size 21126646
|
adapters/tool_generalization/sft/0000200_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:4118b7d98be43e85d0226602b3a073a5d67cae60a61b741a9e0548c898f12144
|
| 3 |
+
size 21126646
|
adapters/tool_generalization/sft/0000300_adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:5d033be95f7211df8194bd59f1e4264e6ea8527167465a340b6658ca0e2d069b
|
| 3 |
+
size 21126646
|
adapters/tool_generalization/sft/adapter_config.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"adapter_path": "fc_benchmark/models/tool_generalization/sft",
|
| 3 |
+
"batch_size": 1,
|
| 4 |
+
"config": null,
|
| 5 |
+
"data": "fc_benchmark/data/prepared/tool_split/sft",
|
| 6 |
+
"fine_tune_type": "lora",
|
| 7 |
+
"grad_accumulation_steps": 1,
|
| 8 |
+
"grad_checkpoint": false,
|
| 9 |
+
"iters": 300,
|
| 10 |
+
"learning_rate": 1e-05,
|
| 11 |
+
"lora_parameters": {
|
| 12 |
+
"rank": 8,
|
| 13 |
+
"dropout": 0.0,
|
| 14 |
+
"scale": 20.0
|
| 15 |
+
},
|
| 16 |
+
"lr_schedule": null,
|
| 17 |
+
"mask_prompt": false,
|
| 18 |
+
"max_seq_length": 2048,
|
| 19 |
+
"model": "mlx-community/Qwen2.5-1.5B-Instruct-4bit",
|
| 20 |
+
"num_layers": 16,
|
| 21 |
+
"optimizer": "adam",
|
| 22 |
+
"optimizer_config": {
|
| 23 |
+
"adam": {},
|
| 24 |
+
"adamw": {},
|
| 25 |
+
"muon": {},
|
| 26 |
+
"sgd": {},
|
| 27 |
+
"adafactor": {}
|
| 28 |
+
},
|
| 29 |
+
"project_name": null,
|
| 30 |
+
"report_to": null,
|
| 31 |
+
"resume_adapter_file": null,
|
| 32 |
+
"save_every": 100,
|
| 33 |
+
"seed": 0,
|
| 34 |
+
"steps_per_eval": 200,
|
| 35 |
+
"steps_per_report": 50,
|
| 36 |
+
"test": false,
|
| 37 |
+
"test_batches": 500,
|
| 38 |
+
"train": true,
|
| 39 |
+
"val_batches": 25
|
| 40 |
+
}
|
adapters/tool_generalization/sft/adapters.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:5d033be95f7211df8194bd59f1e4264e6ea8527167465a340b6658ca0e2d069b
|
| 3 |
+
size 21126646
|