CoolFace
Modelpublic

ermiaazarkhalili/LFM2.5-1.2B-Function-Calling-xLAM-Unsloth

sourceHugging Faceapache-2.0updated 5mo agoView on Hugging Face
0likes27downloads
Model Card

LFM2.5-1.2B-xLAM-Unsloth — Fine-tuned on xLAM-60k

Fine-tuned adapter-merged checkpoint of LFM2.5-1.2B-Instruct on the Salesforce/xlam-function-calling-60k dataset, produced via Unsloth + Hugging Face TRL's SFTTrainer.

FieldValue
Base model`LiquidAI/LFM2.5-1.2B-Instruct`
ArchitectureLfm2ForCausalLM
Parameters1.2B
Precisionbfloat16 (merged 16-bit)
Fine-tuning methodQLoRA (4-bit base, LoRA r=16, α=16)
Dataset`Salesforce/xlam-function-calling-60k` (60,000 examples)
TrainingN=1 full epoch (7,500 steps, effective batch=8)
Learning rate2e-4 (linear decay, warmup 5 steps)
Unsloth version2026.4.6
Trained onDRAC Fir cluster, NVIDIA H100 80GB HBM3 MIG 3g.40gb

Usage

Python (transformers)

python
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

model = AutoModelForCausalLM.from_pretrained(
    "ermiaazarkhalili/LFM2.5-1.2B-Function-Calling-xLAM-Unsloth",
    torch_dtype=torch.bfloat16,
    device_map="auto",
    trust_remote_code=True,
)
tokenizer = AutoTokenizer.from_pretrained("ermiaazarkhalili/LFM2.5-1.2B-Function-Calling-xLAM-Unsloth", trust_remote_code=True)

messages = [{"role": "user", "content": "Find flights from SFO to NYC on December 25th"}]
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(text=text, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=256, do_sample=False)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

Unsloth (2× faster inference)

python
from unsloth import FastLanguageModel
model, tokenizer = FastLanguageModel.from_pretrained(
    "ermiaazarkhalili/LFM2.5-1.2B-Function-Calling-xLAM-Unsloth",
    max_seq_length=2048,
    load_in_4bit=False,
)
FastLanguageModel.for_inference(model)

GGUF (llama.cpp / Ollama)

Quantized GGUF versions are available at `ermiaazarkhalili/LFM2.5-1.2B-Function-Calling-xLAM-Unsloth-GGUF`:

bash
# llama-cli
llama-cli -hf ermiaazarkhalili/LFM2.5-1.2B-Function-Calling-xLAM-Unsloth-GGUF --jinja -p "Find flights from SFO to NYC on December 25th" -n 256

# Ollama
ollama run hf.co/ermiaazarkhalili/LFM2.5-1.2B-Function-Calling-xLAM-Unsloth-GGUF:Q4_K_M

Training details

Function-calling fine-tuning on 60,000 examples from Salesforce/xlam-function-calling-60k.

  • —SFTTrainer (trl >= 0.14) via Unsloth's FastLanguageModel
  • —LoRA config: r=16, α=16, dropout=0, targeting qproj/kproj/vproj/oproj/gateproj/upproj/down_proj
  • —Effective batch size: 8 (perdevice=2 × gradaccum=4)
  • —Max sequence length: 2048
  • —Optimizer: adamw_8bit with linear LR scheduler
  • —Seed: 3407

Intended use

For research and non-commercial experimentation only. Outputs should be independently verified before any downstream use.

Limitations

  • —Trained on a single epoch (~7,500 optimizer steps); further training may yield additional gains.
  • —Fine-tuned from LFM2.5-1.2B-Instruct, inherits its limitations and biases.
  • —Evaluated only on training-data perplexity; no external benchmarks run on this checkpoint.
  • —Limited to the 60 function schemas covered in the training dataset; performance on novel APIs may degrade.

Citation

bibtex
@misc{ lfm25_12b_xlam_unsloth_2026 ,
  author = {Ermia Azarkhalili},
  title = { LFM2.5-1.2B-xLAM-Unsloth — Function-calling fine-tune of LFM2.5-1.2B-Instruct },
  year = {2026},
  publisher = {Hugging Face},
  howpublished = {\url{https://huggingface.co/ermiaazarkhalili/LFM2.5-1.2B-Function-Calling-xLAM-Unsloth}}
}

This lfm2 model was trained 2× faster with Unsloth and Hugging Face's TRL library.

<img src="https://raw.githubusercontent.com/unslothai/unsloth/main/images/unsloth%20made%20with%20love.png" width="200"/>