LFM3-1.7B-Base is the pre-trained checkpoint behind LFM3-1.7B, a text model for local agents and specialized applications based on our new tri-hybrid architecture.
Pre-trained on 22T tokens: the last 3.5T tokens are curated mid-training data with agentic traces and tool calls, and extend the context window to 256K tokens.
Designed for the edge: at 4-bit precision, it takes about 1 GB of memory, so it fits on any phone or laptop.
Made to be specialized: a starting point for continued pre-training and your own post-training.
LFM3-1.7B-Base is the checkpoint used to create LFM3-1.7B. It is only recommended for tasks that require heavy fine-tuning, like language-specific or domain-specific assistants, training on proprietary data, or experimenting with novel post-training approaches. For chat, tool calling, and agents, use LFM3-1.7B.
LFM3-1.7B-Base uses the same architecture and modeling code as LFM3-1.7B, with BF16 weights.
Transformers quick start:
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "LiquidAI/LFM3-1.7B-Base"
model = AutoModelForCausalLM.from_pretrained(
model_id,
device_map="auto",
dtype="bfloat16",
trust_remote_code=True,
)
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
prompt = "The nematode C. elegans is"
input_ids = tokenizer(prompt, return_tensors="pt").input_ids.to(model.device)
output = model.generate(input_ids, max_new_tokens=128, do_sample=False)
print(tokenizer.decode(output[0], skip_special_tokens=True))
Mid-training included chat data with and without thinking traces, formatted with the same chat template as LFM3-1.7B. With apply_chat_template, reasoning is enabled by default, so responses start with a thinking trace. Set enable_thinking=False to prefill an empty thinking trace and have the model answer directly.
LFM3-1.7B-Base is the starting point for substantial customization, such as adapting to new domains, languages, or behaviors that diverge significantly from those of LFM3-1.7B, through continued pre-training or full post-training via TRL.
These notebooks start from LFM3-1.7B. To start from the base model, set model_id = "LiquidAI/LFM3-1.7B-Base".
| Training | Use case | Notebook
| SFT | Extract structured JSON from messy documents | Open in Colab
| CPT | Learn a new language (Turkish) from raw text | Open in Colab
Pre-training: two stages build LFM3-1.7B-Base on 22T tokens in total.
Main pre-training: compared with LFM2, the mix adds more scientific papers, repository-level code, math, and a wider range of knowledge sources.
Mid-training: the last 3.5T tokens use curated, higher-quality data with a larger share of agentic traces and tool calls. This stage also extends the context window to 256K tokens.
Post-training from this checkpoint (SFT, mixed RL, multi-domain on-policy distillation, and agentic RL) produces LFM3-1.7B.
# custom terms: read the license before you download$ fw get LiquidAI/LFM3-1.7B-Base
# manifest sha256 147b1598d037… · 3.48 GB · 19 files$ fw verify ./LFM3-1.7B-Base LiquidAI/LFM3-1.7B-Base
Terms that come with these files. LFM 1.0: commercial use only for organisations under US$10M annual revenue. Keep a copy of the license with the files.
Custom license (custom).Read the license text first. Open this panel to show the commands once you accept its terms.
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
import os
os.environ["HF_ENDPOINT"] = "https://freeweights.allternit.com"
from transformers import AutoModelForCausalLM, AutoTokenizer
tok = AutoTokenizer.from_pretrained("LiquidAI/LFM3-1.7B-Base", revision="7bca5038823c0d0f14efe06439109354a10e014c")
model = AutoModelForCausalLM.from_pretrained("LiquidAI/LFM3-1.7B-Base", revision="7bca5038823c0d0f14efe06439109354a10e014c", device_map="auto")