How to use from the
Use from the
Transformers library
# 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]:]))
Quick Links

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:

  1. Claim — one sentence: what is alleged
  2. Blast radius — what breaks if true: data, money, identity, model weights
  3. Why the model thinks so — the short generator: CWE, invariant, missing check
  4. How to see it yourself — PoC, failing test, command, screenshot of the trace
  5. 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
Safetensors
Model size
3B params
Tensor type
F32
·
F16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for nyxspecter4/kin-cybersecurity-3b

Base model

Qwen/Qwen2.5-3B
Quantized
(283)
this model

Space using nyxspecter4/kin-cybersecurity-3b 1

Evaluation results