Text Generation
Transformers
Safetensors
English
lfm2
sft
lora
tool-calling
agentic
function-calling
conversational
How to use from the
Use from the
Transformers library
# Use a pipeline as a high-level helper
from transformers import pipeline

pipe = pipeline("text-generation", model="atenareply/lfm2.5-1.2b-asterion-agentic")
messages = [
    {"role": "user", "content": "Who are you?"},
]
pipe(messages)
# pip install -U transformers accelerate
# Load model directly
from transformers import AutoTokenizer, AutoModelForCausalLM

tokenizer = AutoTokenizer.from_pretrained("atenareply/lfm2.5-1.2b-asterion-agentic")
model = AutoModelForCausalLM.from_pretrained("atenareply/lfm2.5-1.2b-asterion-agentic", device_map="auto")
messages = [
    {"role": "user", "content": "Who are you?"},
]
inputs = tokenizer.apply_chat_template(
	messages,
	add_generation_prompt=True,
	tokenize=True,
	return_dict=True,
	return_tensors="pt",
).to(model.device)

outputs = model.generate(**inputs, max_new_tokens=256)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:]))
Quick Links

LFM2.5-1.2B Asterion — Agentic (SFT v2)

Verifiable satellite-operations assistant: telemetry alert triage + native tool-calling + raw-log extraction. LoRA SFT on the ParamΔ model with the v2 confound-free dataset.

Overview

  • Stage: Agentic SFT v2 (LoRA, merged)
  • Lineage: Base → CPT (asterion) → ParamΔ (instruct) → Agentic SFT v2 (this model)
  • Method: Supervised fine-tuning (LoRA r=32/α=64, all-linear; merged) [lora] on the v2 dataset: raw-vs-clean tool output decorrelated from difficulty (independent coin flip 0.5 — kills the v1 'raw ⇒ genuine' shortcut), Track C multi-QA, teacher reasoning re-wrapped as with assistant-only loss [apigen]; ≥50% general blend against collapse [collapse].
  • Domain: fictional — Orbital Mining Corporation (OMC) technical docs + Mars Express telemetry.

Training

Dataset asterion-agentic-sft — train 18,837 / val 991 (Track A 2,997 / B 6,000 / C 917 + equal general blend)
Adapter LoRA r=32, α=64, dropout 0.05, target all-linear (merged at push)
LR / epochs 1e-4 cosine, warmup 0.05, 2 epochs, max_len 4096, eff_batch 64

Evaluation

Metric Value Note
pass@1 0.986 ParamΔ baseline: 0.002
triage recall (genuine) 1.00 v1 round was 0.63
triage precision (genuine) 1.00 zero false alarms
pass@1 by difficulty L1-L4 0.98 / 0.99 / 0.98 / 1.00 v1's L2 dip is gone
action accuracy 0.986 maintenance loop
grounding rate 0.72 verbatim numbers in reasoning

Eval is a held-out, deterministic verifiable harness (synthetic tasks); baseline = the pre-SFT ParamΔ model. See noval-corp/scripts/eval_agentic.py.

Intended use & limitations

Satellite-operations assistant for the Asterion fleet: classify an ALERT (routine vs genuine), run the maintenance loop on genuine anomalies, extract values from raw logs. Use INSIDE a tool-execution loop.

Limitations:

  • The verifiable task is SATURATED (pass@1 0.986 > the 0.85 RL gate) — no RL round was run on this model by design (RLVR needs headroom).
  • Fictional domain; the genuine class is largely synthetic.
  • Tool-calling REQUIRES a multi-turn loop that executes tools and feeds results back.

Innovations tested

  • Confound-free v2 data — raw/clean tool-output format is an independent per-task coin flip, decoupled from difficulty and label.

Usage

Use inside a tool-execution loop (the model emits calls; you run the tools and feed results back):

from transformers import AutoModelForCausalLM, AutoTokenizer

tok = AutoTokenizer.from_pretrained("atenareply/lfm2.5-1.2b-asterion-agentic")
model = AutoModelForCausalLM.from_pretrained("atenareply/lfm2.5-1.2b-asterion-agentic")
TOOLS = [...]  # the 8 OpenAI-style tool schemas (see noval-corp/config/curation.py: TOOL_SCHEMA)
messages = [{"role": "system", "content": "You are an OMC operations assistant."},
            {"role": "user", "content": "ALERT on NPWD2531: 1.12A. Routine or genuine?"}]
inputs = tok.apply_chat_template(messages, tools=TOOLS, add_generation_prompt=True, return_tensors="pt", return_dict=True)
# parse <|tool_call_start|>[...]<|tool_call_end|>, execute, append a {"role":"tool",...} message, repeat.

Reference loop: noval-corp/scripts/eval_agentic.py::run_episode.

Citations

  • LoRA — Hu et al., LoRA: Low-Rank Adaptation of LLMs, 2021. arXiv:2106.09685
  • APIGen / xLAM (execution-grounded tool data) — Liu et al., 2024. arXiv:2406.18518
  • Model collapse (≥50% real data) — Shumailov et al., 2024. arXiv:2404.01413

Card generated by noval-corp/scripts/gen_model_cards.py (standardized across the noval-corp model family).

Downloads last month
20
Safetensors
Model size
1B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for atenareply/lfm2.5-1.2b-asterion-agentic

Dataset used to train atenareply/lfm2.5-1.2b-asterion-agentic

Papers for atenareply/lfm2.5-1.2b-asterion-agentic