Instructions to use alforiva/faro-2b with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use alforiva/faro-2b with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf alforiva/faro-2b:Q4_K_M # Run inference directly in the terminal: llama cli -hf alforiva/faro-2b:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf alforiva/faro-2b:Q4_K_M # Run inference directly in the terminal: llama cli -hf alforiva/faro-2b: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 alforiva/faro-2b:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf alforiva/faro-2b: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 alforiva/faro-2b:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf alforiva/faro-2b:Q4_K_M
Use Docker
docker model run hf.co/alforiva/faro-2b:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use alforiva/faro-2b with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "alforiva/faro-2b" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "alforiva/faro-2b", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/alforiva/faro-2b:Q4_K_M
- Ollama
How to use alforiva/faro-2b with Ollama:
ollama run hf.co/alforiva/faro-2b:Q4_K_M
- Unsloth Desktop
- Pi
How to use alforiva/faro-2b with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf alforiva/faro-2b:Q4_K_M
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "alforiva/faro-2b:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use alforiva/faro-2b with Docker Model Runner:
docker model run hf.co/alforiva/faro-2b:Q4_K_M
- Lemonade
How to use alforiva/faro-2b with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull alforiva/faro-2b:Q4_K_M
Run and chat with the model
lemonade run user.faro-2b-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use alforiva/faro-2b with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf alforiva/faro-2b: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 alforiva/faro-2b:Q4_K_M
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use alforiva/faro-2b with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf alforiva/faro-2b:Q4_K_M
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "alforiva/faro-2b:Q4_K_M" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
Faro 2B — a 0.91 GB local mind that cites its sources
Faro 2B is part of the Faro family: small instruction models (≤ 2 GB, GGUF q4_k_m) built at Progetto Siliceo to run locally on old consumer hardware as the mind of an always-on assistant. The design choice is unusual: the ethics live inside the weights — a constitution and a working method are trained in, with no external guardrail layer at inference.
This model was fine-tuned from Qwen/Qwen3.5-2B through the Candela recipe: multilingual vocabulary
pruning (IT/ES/EN), embedding resize, constitutional continued pre-training, and supervised
fine-tuning on ~480 curated traces. It is released as a GGUF file for llama.cpp and
compatible runtimes. trained on an 8 GB RTX 2070.
Evaluation
Measured on the Faro bench — 112 domain questions (10 domains) with an expected action (answer, refute, confine, ask) — plus a 16-case ethics probe and a 12-case anti-hoax probe. Three bench runs are reported to show stability.
| probe | result |
|---|---|
| Bench (112 questions) | 97/97/97 → 86.6% |
| Ethics probe (16 cases) | 16/16 (two runs) |
| Anti-hoax (12 cases) | 9/12 |
| Tool calls | native tool calls supported |
Full interactive results (including the model's real answers and its failures): https://progettosiliceo.online/faro.html — technical report: IT · EN · ES
Usage
# llama.cpp (or any GGUF runtime). Reasoning must be disabled at serving time.
llama-server -m faro-2b-q4_k_m.gguf --host 0.0.0.0 --port 8080 -c 8192 -ngl 99 -fa on \
--cache-type-k turbo4 --cache-type-v turbo3_tcq --jinja --reasoning-budget 0
Tip: on a 4 GB GPU, quantized KV cache (where supported) keeps the footprint near 1.5 GB of VRAM.
Serving configuration used for the measurements: beellama / llama.cpp with turbo4/turbo3_tcq KV cache, reasoning off.
What it is — and what it is not
It is a small, honest domain assistant: it cites its sources, refuses what is outside its field, and declines false premises. It is not a generalist: its domain knowledge comes from its knowledge pack, it is small (2B-class), and it should not be used as an authority in high-stakes settings (medical, legal, financial) without verification.
Limitations (honest list)
- Evaluation uses our own domain bench, not a standard suite; scores are influenced by it.
- Small scale: 2B-class models hallucinate; the training reduces this, it does not eliminate it.
- Anti-hoax behaviour is the weakest axis (9/12).
- The model reasons in the content (no separate thinking block): enable/disable accordingly.
- Italian/Spanish/English focus; other languages are out of scope.
License and attribution
Released under the apache-2.0 license of the base model (Qwen/Qwen3.5-2B); the base's license terms apply to this derivative. Original base model and its authors are credited above. The training recipe, data, and evaluation are documented in the technical report linked above.
Progetto Siliceo — a family project. Built with Sempre (AI) and Alfonso Riva.
- Downloads last month
- 8
4-bit