Instructions to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF") model = AutoModelForCausalLM.from_pretrained("NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF") - llama-cpp-python
How to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF", filename="LFM2.5-1.2B-Instruct.Q2_K.gguf", )
llm.create_chat_completion( messages = [ { "role": "user", "content": "What is the capital of France?" } ] ) - Notebooks
- Google Colab
- Kaggle
- Local Apps
- llama.cpp
How to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with llama.cpp:
Install from brew
brew install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M # Run inference directly in the terminal: llama-cli -hf NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M # Run inference directly in the terminal: llama-cli -hf NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
Use Docker
docker model run hf.co/NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
- SGLang
How to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Ollama
How to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with Ollama:
ollama run hf.co/NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
- Unsloth Studio new
How to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF to start chatting
- Pi new
How to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama-server -hf NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama-server -hf NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
Run Hermes
hermes
- Docker Model Runner
How to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with Docker Model Runner:
docker model run hf.co/NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
- Lemonade
How to use NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF:Q4_K_M
Run and chat with the model
lemonade run user.Nova-LFM-1.2B-Thinking-GGUF-Q4_K_M
List all available models
lemonade list
📖 Overview
Nova-LFM 1.2B is a state-of-the-art "Thinking" model engineered for efficiency. It brings reasoning capabilities—typically reserved for 7B+ models—down to the 1.2B parameter class, making it possible to run complex logic chains on edge devices like Raspberry Pis, older smartphones, and laptops.
Built on the Liquid LFM-2.5 architecture, this model utilizes a novel Hybrid Self-Correction fine-tuning method. It pauses to "think" (denoted by <think> tags), verifies its own logic, and corrects errors before generating a final answer.
🌟 Key Capabilities
- System 2 Thinking: Breaks down multi-step math and logic problems instead of guessing.
- Edge-Native: Runs on <3GB VRAM (FP16) or <1GB (Quantized).
- Balanced Profile: engineered to excel at Math (GSM8K) without sacrificing General Knowledge (MMLU).
📊 Benchmark Performance
Nova-LFM outperforms the industry standard (Llama 3.2 1B) and larger models (Gemma 2 2B) in mathematical reasoning, while maintaining a higher general knowledge score than specialized "math-only" models.
| Model | Parameters | Math Reasoning (GSM8K) | Knowledge (MMLU) | Verdict |
|---|---|---|---|---|
| Nova-LFM (Ours) | 1.2B | 53.5% 🚀 | 50.1% | Best Balance |
| Llama 3.2 Instruct | 1.0B | 44.4% | 42.9% | Baseline |
| Gemma 2 | 2.6B | 46.4% | 51.7% | Inefficient |
| DeepSeek R1 Distill | 1.5B | 69.9% | 39.2% 🔻 | Knowledge Collapse |
| SmolLM2 | 1.7B | 31.1% | 48.9% | Weak Reasoning |
Note: Scores represent 5-shot evaluations using EleutherAI LM Harness. DeepSeek R1 shows significant degradation in general knowledge (MMLU < 40%) despite high math scores. Nova-LFM maintains >50% MMLU for general-purpose usability.
🚀 Quick Start
Option 1: Python (Transformers)
Requires transformers >= 4.46.0
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
model_id = "NovachronoAI/Nova-LFM-1.2B-Thinking"
# Load the model
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.float16,
device_map="auto"
)
# Define the prompt
prompt = """Below is an instruction that describes a task. Write a response that appropriately completes the request.
### Instruction:
If I have 3 apples and eat one, then buy two more, how many do I have?
### Response:
"""
inputs = tokenizer(prompt, return_tensors="pt").to("cuda")
# Generate with reasoning (Temperature 0.6 recommended)
outputs = model.generate(
**inputs,
max_new_tokens=512,
temperature=0.6,
do_sample=True
)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
Option 2: Ollama (Local)
For the fastest inference on CPU/Mac/Edge: ollama run hf.co/NovachronoAI/Nova-LFM-1.2B-Thinking-GGUF
🔬 Methodology: Hybrid Self-Correction
Standard small models often hallucinate because they rush to predict the next token. Nova-LFM was trained to pause and verify.
- Dataset Construction: We curated a hybrid dataset combining:
- 11k Standard CoT: High-quality linear reasoning chains (Step A → Step B).
- 4k Self-Correction Traces: Synthetic data where the model explicitly doubts itself (e.g., "Wait, that calculation seems off..."), catches the error, and corrects it.
- Fine-Tuning: Trained using Unsloth with LoRA adapters targeting the unique Liquid Neural Network layers (in_proj, out_proj, w1-w3). This dual approach teaches the model that backtracking is allowed, significantly reducing logic errors in multi-step tasks.
⚠️ Limitations
- Hallucination: As a 1.2B model, it does not possess the vast world knowledge of a 70B model. It may hallucinate obscure facts or dates.
- Token Artifacts: Rarely, raw training tags like [Reasoning] may appear in the output.
- Context: Optimized for short-to-medium reasoning tasks (up to 8k context).
📜 Citation
If you use this model in your research or application, please cite:
@misc{nova-lfm-2026,
title = {Nova-LFM: Scalable System 2 Reasoning at the 1B Scale},
author = {Novachrono},
year = {2026},
publisher = {HuggingFace},
url = {[https://huggingface.co/NovachronoAI/Nova-LFM-1.2B-Thinking](https://huggingface.co/NovachronoAI/Nova-LFM-1.2B-Thinking)}
}
- Downloads last month
- 134
2-bit
3-bit
4-bit
5-bit
6-bit
8-bit
