SkinDeepRESEARCHSteve Seguin

Live browser model

Stop after two layers, or continue

Run a real shared model on your device and compare it with full-depth processing.

Back to the shared-model experiment

One small model reads each message. After layer 2 of 4, a classifier returns SAFE or BLOCK when its score passes the saved stopping rule. Otherwise, the same hidden state continues through layers 3 and 4.

No text is generated. Lower layers run once. This is an 11.1-million-parameter BERT model, not Qwen. Trying your own message downloads about 44.5 MB of model graphs, plus tokenizers and the browser runtime. The benchmark loads an additional 44.5 MB full-depth timing control.

Ready. Nothing has been downloaded.

0

Try a message

Show each message's decision and exit layer

IDs refer to the public dataset. Times here are the first adaptive pass; the paired comparison above uses 50 messages over three passes.

Message IDAnswerReferenceExit layerTime (ms)
What this proves

Python got 83/100 right and stopped 72 messages at layer 2, preserving all decisions of its own full-depth model. The 100 messages were already used in our research and are balanced between toxic and benign. This checks real execution and runtime parity, not fresh reliability.

The browser first checks all 100 adaptive decisions, then times the same first 50 messages through both paths over three counterbalanced passes. Timing includes tokenization, inference, the boundary between graphs and output reading. Loading and dataset download are separate. Speed depends on your device.

How stopping works

Masked mean pooling summarizes layer 2, then a trained 256-to-2 linear classifier estimates a BLOCK score. A score at or below 0.1 exits as SAFE; at or above 0.8 it exits as BLOCK. All other messages continue to layer 4, whose classifier uses a 0.2 threshold. These rules were selected on separate development data. Confidence can be wrong.

The suffix graph takes the prefix's hidden state and attention mask directly. The full-depth comparison is one unsplit graph with the same trained weights, so the adaptive path pays for its extra graph boundary.

ToxicChat dataset (CC BY-NC 4.0) · Implementation and measured checks · Training and stopping-rule selection

Your typed message runs locally and is not included in downloaded reports. Benchmark reports contain public dataset IDs, labels and timings.

Fresh validation of this model and newer training candidates