Instructions to use nyxspecter4/kin-cybersecurity-3b with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use nyxspecter4/kin-cybersecurity-3b with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="nyxspecter4/kin-cybersecurity-3b") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("nyxspecter4/kin-cybersecurity-3b") model = AutoModelForCausalLM.from_pretrained("nyxspecter4/kin-cybersecurity-3b", 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=40) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use nyxspecter4/kin-cybersecurity-3b 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 nyxspecter4/kin-cybersecurity-3b:Q4_K_M # Run inference directly in the terminal: llama cli -hf nyxspecter4/kin-cybersecurity-3b:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf nyxspecter4/kin-cybersecurity-3b:Q4_K_M # Run inference directly in the terminal: llama cli -hf nyxspecter4/kin-cybersecurity-3b: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 nyxspecter4/kin-cybersecurity-3b:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf nyxspecter4/kin-cybersecurity-3b: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 nyxspecter4/kin-cybersecurity-3b:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf nyxspecter4/kin-cybersecurity-3b:Q4_K_M
Use Docker
docker model run hf.co/nyxspecter4/kin-cybersecurity-3b:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use nyxspecter4/kin-cybersecurity-3b with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "nyxspecter4/kin-cybersecurity-3b" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nyxspecter4/kin-cybersecurity-3b", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/nyxspecter4/kin-cybersecurity-3b:Q4_K_M
- SGLang
How to use nyxspecter4/kin-cybersecurity-3b 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 "nyxspecter4/kin-cybersecurity-3b" \ --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": "nyxspecter4/kin-cybersecurity-3b", "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 "nyxspecter4/kin-cybersecurity-3b" \ --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": "nyxspecter4/kin-cybersecurity-3b", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Ollama
How to use nyxspecter4/kin-cybersecurity-3b with Ollama:
ollama run hf.co/nyxspecter4/kin-cybersecurity-3b:Q4_K_M
- Unsloth Desktop
- Pi
How to use nyxspecter4/kin-cybersecurity-3b with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf nyxspecter4/kin-cybersecurity-3b: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": "nyxspecter4/kin-cybersecurity-3b:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use nyxspecter4/kin-cybersecurity-3b with Docker Model Runner:
docker model run hf.co/nyxspecter4/kin-cybersecurity-3b:Q4_K_M
- Lemonade
How to use nyxspecter4/kin-cybersecurity-3b with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull nyxspecter4/kin-cybersecurity-3b:Q4_K_M
Run and chat with the model
lemonade run user.kin-cybersecurity-3b-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use nyxspecter4/kin-cybersecurity-3b with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf nyxspecter4/kin-cybersecurity-3b: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 nyxspecter4/kin-cybersecurity-3b:Q4_K_M
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use nyxspecter4/kin-cybersecurity-3b with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf nyxspecter4/kin-cybersecurity-3b: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 "nyxspecter4/kin-cybersecurity-3b: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"
# Load model directly
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("nyxspecter4/kin-cybersecurity-3b")
model = AutoModelForCausalLM.from_pretrained("nyxspecter4/kin-cybersecurity-3b", 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=40)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:]))KIN — Verification Translator (3B Canonical)
KIN translates machine-generated security claims into leveled briefs with replayable evidence checks. Not a chatbot. Not an encyclopedia. A bridge between agent output and human decisions.
No check, no confidence. If the claim has no replayable verification, KIN refuses to sound sure. That refusal is the product.
The Problem
Maintainers are drowning in AI-shaped reports that look expert and are not. Copilot files critical PRs. Huntr contestants submit AI-generated writeups. Agent traces produce 40-file refactors with no comment a person can hold in working memory.
The scarce skill is no longer "can a human write the exploit narrative." The scarce thing is can a human know what the machine just claimed, and whether to trust it.
The Five-Field Brief
Every KIN translation bottoms out in five fields:
- Claim — one sentence: what is alleged
- Blast radius — what breaks if true: data, money, identity, model weights
- Why the model thinks so — the short generator: CWE, invariant, missing check
- How to see it yourself — PoC, failing test, command, screenshot of the trace
- Confidence and what would falsify it — what evidence would disprove the claim
Rendered at three altitudes: TL;DR (maintainer), Mechanic (mid engineer), First p rinciples (beginner). Same object, different compression ratio.
Canonical Status
This is the canonical KIN model (3B, merged weights). GGUF version at kin-sft-lora-gguf.
Quick Start
from transformers import pipeline
messages = [
{"role": "system", "content": "You are KIN — a verification translator. Translate the security claim into a five-field brief: claim, blast radius, why the model thinks so, how to see it yourself, confidence and what would falsify it. If field 4 is missing, refuse to sound sure. Render at TL;DR, mechanic, and first-principles levels."},
{"role": "user", "content": "<paste PR diff, review comment, or agent trace here>"}
]
pipe = pipeline("text-generation", model="nyxspecter4/kin-sft-lora", device="cuda")
output = pipe(messages, max_new_tokens=512, return_full_text=False)
print(output[0]["generated_text"])
Ollama (one command)
ollama pull nyxspecter4/kin-sft-lora-gguf:Q4_K_M
ollama run nyxspecter4/kin-sft-lora-gguf:Q4_K_M
Critical: System Prompt
KIN was trained with a specific verification translator persona. Using a different prompt will degrade quality significantly.
You are KIN — a verification translator. Translate the security claim into a five-field brief: claim, blast radius, why the model thinks so, how to see it yourself, confidence and what would falsify it. If field 4 is missing, refuse to sound sure. Render at TL;DR, mechanic, and first-principles levels.
Training Details (v1 — current shipped weights)
| Parameter | Value |
|---|---|
| Base model | Qwen2.5-3B-Instruct |
| Method | LoRA SFT + DPO |
| LoRA rank | 8 |
| LoRA alpha | 16 |
| Target modules | q_proj, k_proj, v_proj, o_proj |
| Training data | 1,635 DPO pairs (verified audit vs vague filing) |
| Framework | TRL 0.14.0, Transformers 4.48.0 |
| Merged weights | Yes (6.2GB safetensors) |
| Temperature | 0.3 recommended |
v2 Retrain (PENDING —
verification translator expansion)
| Parameter | KIN v1 (current) | KIN v2 (target) |
|---|---|---|
| LoRA rank | 8 | 16 |
| LoRA alpha | 16 | 32 |
| Target modules | 4 (attention) | 7 (all-linear) |
| Training data | 1,635 pairs | ~2,135 pairs (+500 PR review translation) |
| Pair shape | audit vs vague | brief+check vs jargon |
The DPO Contrast
The training data encodes a single preference: chosen = structured audit with root cause, fix, and regression test. Rejected = vague filing with guesses and no verification. The v2 expansion adds PR review and bounty report translation pairs with the same contrast.
Limitations
- v1 was trained on monk-plugin bug bounty scenarios, not general PR reviews
- The five-field brief structure is emergent from training, not enforced by architecture
- Field 4 (replayable check) quality depends on the input containing enough signal
- The hash seal (diff + brief + test command) is planned for v2, not yet implemented
License
Apache 2.0
- Downloads last month
- 1,757
Model tree for nyxspecter4/kin-cybersecurity-3b
Space using nyxspecter4/kin-cybersecurity-3b 1
Evaluation results
- gap-delta-evalself-reportedpending
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="nyxspecter4/kin-cybersecurity-3b") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)