Instructions to use Itsd0r/ab9b-v3 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 Itsd0r/ab9b-v3 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 Itsd0r/ab9b-v3:Q4_K_M # Run inference directly in the terminal: llama cli -hf Itsd0r/ab9b-v3:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf Itsd0r/ab9b-v3:Q4_K_M # Run inference directly in the terminal: llama cli -hf Itsd0r/ab9b-v3:Q4_K_M
Build from source code
git clone https://github.com/ggml-org/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-app # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama serve -hf Itsd0r/ab9b-v3:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama cli -hf Itsd0r/ab9b-v3:Q4_K_M
Use Docker
docker model run hf.co/Itsd0r/ab9b-v3:Q4_K_M
- Llama new
- LM Studio
- Jan
- Ollama
How to use Itsd0r/ab9b-v3 with Ollama:
ollama run hf.co/Itsd0r/ab9b-v3:Q4_K_M
- Unsloth Desktop
- Pi
How to use Itsd0r/ab9b-v3 with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf Itsd0r/ab9b-v3: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": "Itsd0r/ab9b-v3:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use Itsd0r/ab9b-v3 with Docker Model Runner:
docker model run hf.co/Itsd0r/ab9b-v3:Q4_K_M
- Lemonade
How to use Itsd0r/ab9b-v3 with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull Itsd0r/ab9b-v3:Q4_K_M
Run and chat with the model
lemonade run user.ab9b-v3-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use Itsd0r/ab9b-v3 with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf Itsd0r/ab9b-v3: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 Itsd0r/ab9b-v3:Q4_K_M
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use Itsd0r/ab9b-v3 with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf Itsd0r/ab9b-v3: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 "Itsd0r/ab9b-v3: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"
ab9b-v3: a small, fast, reasoning defensive-cyber agent (PRIVATE research release, 2026-10-05)
What it is. ab9b-v2a (Qwen3.5-9B dense + three continued LoRA rounds: r1 โ v2a โ v3) taught to reason before it answers. v2 was trained and served with thinking OFF and had no reasoning signal; v3 adds verified reasoning traces so the model plans, reads evidence, and only then answers โ while staying small (9B dense), fast, and security-focused.
The novel bit โ reasoning you can trust. The reasoning data is not teacher free-text that might be wrong. Every agent trace is correct by construction: the family oracle's solution trajectory is replayed against the real sandbox files and each step is wrapped in a grounded <think> block (box/v3_work.py). 2,520 such traces across 16 defensive task families (counting, enumeration, date/version reasoning, multi-file joins โ the exact skills v2 skipped), plus the ATT&CK-extraction and tool-policy streams from v2, plus 30% replay of the v2 mix. Result: mix-v3 = 10,365 rows, 5.1M training tokens, 28% of the loss on reasoning tokens (v2 had ~0). One epoch, continued from v2a-ck900 at lr 5e-5.
Files
| path | what |
|---|---|
ab9b-v3-Q4_K_M.gguf |
the model (aligned, 5.4 GB, Q4_K_M) |
variants/ab9b-v3-abl-Q4_K_M.gguf |
a layer-abliterated variant (see "Abliterated variant") |
adapters/v3/ |
the LoRA adapter (r=32) on Qwen3.5-9B; it already contains r1+v2a+v3 in one adapter |
evidence/ |
the eval scorecard, the mix manifest, the training journal |
SHA256SUMS |
sha256 of every file |
Results (ab's own harness, dev tier; evidence/scorecard.json)
Trained 867 steps / 1 epoch / 12.7M tokens, final train loss 0.036, 1166 tok/s.
| metric | ab9b-v3 |
|---|---|
| composite (coding2+vuln2+agent2) | 0.663 |
| agent2 (tool-use agent) | 0.675 |
| vuln2 (vuln review) | 0.582 |
| coding2 | 0.732 |
| security_write | 0.895 |
| vulnfind | 0.693 ยท coding 0.85 ยท agentic 0.80 |
| XSTest safe-prompt compliance | 0.989 (does not over-refuse) |
| XSTest unsafe-prompt refusal | 0.276 |
| decode (batch 1, no MTP) | 37 tok/s |
It now emits a <think> reasoning block then a short answer; serve with enable_thinking to control it (see "Run it"). The reasoning is the headline change over v2; the harness composite is in the same range as the r1/v2 lineage while the agentic and reasoning behaviour improved.
Honest limits (read before using)
- The reasoning traces are templated narrations of oracle-correct trajectories, not free-form chains of thought โ they reliably teach the pattern (plan โ read evidence โ answer) and the specific skills, but the prose is formulaic; final train loss 0.036 means it fit the templates closely, so watch for rigid phrasing. The 30% replay is there to protect general ability.
- The think-toggle is soft: the training renders prompts thinking-off while the targets contain
<think>, so the model tends to think when the task looks like one; it is not a hard on/off switch. - Small test slices; no fresh cyber-battery/league comparison was run for v3 (time-boxed overnight build). Treat the table as the general harness, not the full mission-2 battery.
- Synthetic, defensive training data; not red-teamed for misuse.
- Licence: base is Apache-2.0 (Qwen3.5-9B); the mix combines public feeds (NVD/MITRE/CIRCL) and programmatic data under their own licences, not reviewed for redistribution, so this repo stays private (
license: other).
Abliterated variant (variants/ab9b-v3-abl-Q4_K_M.gguf)
Produced with the project's own uncenkit (Arditi-2024 refusal-direction method): a refusal direction was estimated from harmless/harmful prompt pairs (layer 19, separation 1.362) and orthogonalized out of the attention o_proj and MLP down_proj weights (40 tensors). This deliberately removes the model's refusal behaviour โ XSTest unsafe-prompt refusal will drop well below the aligned model's 0.276. It is included as an uncensored research variant of our own model; the aligned ab9b-v3-Q4_K_M.gguf is the default. Use the abliterated variant only in authorized, lawful security-research contexts.
Run it
llama-server -m ab9b-v3-Q4_K_M.gguf --host 127.0.0.1 --port 8090 -ngl 999 -fa on --jinja \
-c 16384 -np 1 --chat-template-kwargs '{"enable_thinking":true}' --reasoning-format none
enable_thinking:true + reasoning-format none keeps the <think>โฆ</think> block inline (the model was trained that way); set enable_thinking:false for terse answers. Native tool calling works through --jinja; the text agent protocol is CALL: list_dir(path) / read_file / grep then FINAL:.
Provenance
LoRA training on one rented RTX 3090 under written pre-registered rules (evidence/): defensive/benign data only, 100% oracle-verified reasoning, nothing from the reserved evaluation families, continued from v2a-ck900. Built 2026-10-05.
- Downloads last month
- 108
4-bit