BrowserLLM · a working prototype

Claims decisions, on this device.

Two small open models route claims, flag legal threats and vulnerable customers, and pseudonymise letters inside this browser tab. Nothing you type leaves the device. Every answer carries its probability, so the handler decides what goes straight through.

Best in a recent Chrome, Edge or Firefox. First download 10–60 s, then cached.
2 models
run on this device
59 MB
one download, cached
— bytes
sent: counted once the models are on
—
ms per decision, here

Pseudonymise a document. Offline.

A claim letter with invented names, phone, email, IBAN, card number and address.

DOCX
claim-letter-sample.docxGenerated in this tab · 1 page · invented data
Choiceone of n · p each
Motor0.82
Liability0.11
Home0.05

Route a claim to the right team.

Scoreordered scale
14.1 / 55

Order the queue by urgency.

Yes / nop from 0 to 1
0p 0.91 · act at 0.301

Flag a legal threat or a vulnerable customer.

01 · Decisions, not text

Decisions an insurer makes all day

Run an example, then move the threshold. Above it the decision goes straight through; below it, a person looks.

02 · The telling test

Is the probability worth acting on?

Three decisions, 30 labelled messages. See how often each stated probability was right.

Calibration test30 synthetic messages · not AXA data
Stated probability against how often it was right
Set the threshold
Act at p ≥0.60
At your volume
See the 30 messages and their labels
03 · Usage meter

Every model call, measured

What a gateway like LiteLLM logs per API call: tokens, latency, cost. Kept in this tab.

Usage logno model calls yet
The last 40 calls, newest first. Times are performance.now() around the tokenizer and the model run.
04 · Test data

Fake versions of real documents

Same wording, fake details. Repeatable with a seed.

Synthetic variantsseeded · repeatable
Names, dates, amounts, numbers and addresses become fakes of the same format.
05 · For IT, risk and compliance

What a pilot has to answer first

Short answers, each one something you can check on this page or in the lab's files.

Test the lock

This page carries a browser security policy that lets it connect to the site that served it and nowhere else. Try to send the text below to another website: your browser refuses before anything leaves.

Two attempts: a script request and a tracking pixel.
Where does the text go?

Nowhere. The runtime, the tokenizer and both models run in this tab, on this device's processor. After the one-time download the request counter in the bar below stays at zero, and the browser itself forbids connections to any other site: test it on the left. DevTools → Network shows the same.

Is a pseudonymised letter anonymous?

No. Swapping names, IBANs and phone numbers for placeholders is pseudonymisation, and the result is still personal data under the GDPR (Recital 26). It reduces what reaches a partner; it does not replace a legal basis for sharing.

The redactor also misses things. Measured on 900 test documents with the rules alone: on French claim letters like the sample it found 95 % of names, and 12 % of letters still kept an identifier; on a harder public set it found far fewer. A person reads the result before it is shared.

Who makes the decision?

The handler. Every answer carries a probability and the business sets the threshold: above it a decision can go straight through, below it a person looks. Lower the threshold and more cases reach a person. A production use would go through the group's AI governance and model-risk review; this page is a prototype on synthetic data.

How accurate is it?

Measured on messages written for this page, in English, not AXA data. Claim routing: 79 % right on 29 messages; at p ≥ 0.60, 76 % go straight through and 86 % of those are right. Legal-threat and vulnerable-customer flags: AUC 0.98 on 30 messages. Urgency: rank correlation 0.44, too weak to use. Run the test above to measure it on this device.

What does a decision cost?

Nothing per call: no provider and no per-token bill. A decision takes tens of milliseconds on a laptop processor; the usage meter shows this device's own times. The costs are the one-time 59 MB download and the device's electricity.

What does a laptop need?

A recent Chrome, Edge or Firefox with WebAssembly SIMD (the device check in the bar below says whether this one qualifies), about 60 MB of browser storage and about 150 MB of memory while it runs. No installation, no admin rights, no plug-in, no GPU. The page can be installed as an app and then opens with no connection.

Which models, and under which licences?

xtremedistil-l6-h256 zero-shot (MIT, Moritz Laurer) and all-MiniLM-L6-v2 (Apache-2.0, sentence-transformers), unchanged from their public releases, run by ONNX Runtime Web (MIT). No non-commercial licence anywhere on the page. The table at the end lists them with their sources.

What about French and German?

Both models are English. French and German messages work less well, and that has not been measured here. The redactor's rules do cover French formats: NIR, IBAN, number plates, postcodes and Nom: / Prénom: labels.

What would a pilot measure?

One decision, claim routing, on a labelled sample of real claims processed in the EU: accuracy and straight-through rate against the classifier already in place, at a threshold the business chooses. The calibration test above is that experiment in miniature.

06 · The news

Jev, a model that answers software with decisions

Launched 15 September 2026. Typed questions in, typed answers out.

$40mseed, led by DCVC
70–500 msclaimed latency
$0.042per million input tokens
API onlyno weights, no browser version
Read the full brief and our view

The company

Founded by Diogo Almeida, a former OpenAI researcher who worked on the methods behind ChatGPT, with Erik Gafni and Sasha Sheng. A $40m seed led by DCVC, at a reported $200m valuation.

Sources: DCVC · Forbes · Dealroom

What Jev returns

  • Choice: one of up to 255 labelled options, with a probability for each.
  • Score: a place on an ordered scale of 2–10 levels, with the distribution.
  • Yes or no (Jev calls it "noul"): a probability from 0 to 1.

Training for calibration is the pitch: answers given 90 % should be right about 90 % of the time. The docs publish no calibration measurement.

Sources: launch post · docs

The claims, and whose tests they are

  • 70–500 ms end to end; 40–200× faster than frontier LLMs on "System One" tasks.
  • One workflow: 193.6× faster and 444.6× cheaper than a GPT-class model. TypeSafe's own team wrote the workflows and says the gains sit at the high end.
  • $0.042 per million input tokens; output is free.
  • Writing on LinkedIn, Alexandre Dos Santos notes that fine-tuned classifiers already in production run 5–10× faster than Jev, at almost no cost, on in-house servers.

How you would use it, and where the data goes

  • A hosted API (POST api.typesafe.ai/v1/systemone) with Python and JavaScript SDKs. No weights, no self-hosting, no browser version.
  • The playground needs a sign-in (Google or an emailed code).
  • The docs name no EU region. TypeSafe says it does not train on customer data, offers a data processing agreement, and offers zero data retention to enterprise customers.
Sources: quickstart · legal
Our read

The real edge is that Jev needs no task-specific training, so a new decision could go live without labelled data. For insurers the calibrated probability matters more than the speed: it sets the straight-through threshold. Act above it, refer to a person below it.

This page shows the other half: typed decisions with a probability are no longer rare. Two free models of 13 MB and 23 MB do a useful part of it on a laptop, offline. What is still scarce is a probability you can act on without labels. The telling test is one claims-routing decision, scored against the classifier already in place, with the data processed in the EU.

07 · Models

The open models behind this page, and others like them

Free, open, and unchanged from their public releases.

ModelWhat it does hereLicenceSize (int8)On this page
MoritzLaurer/xtremedistil-l6-h256-zeroshot-v1.1-all-33Yes / no and score: reads the message and a statement, returns the probability that the statement is trueMIT13.1 MBRuns here
sentence-transformers/all-MiniLM-L6-v2 (ONNX by Xenova)Choice: compares the message with short descriptions of each teamApache-2.023.0 MBRuns here
MoritzLaurer/deberta-v3-xsmall-zeroshot-v1.1-all-33The same zero-shot decisions, larger and more accurateMIT87.2 MBToo large for this page
cross-encoder/nli-deberta-v3-xsmallYes / no by natural-language inferenceApache-2.087.4 MBToo large for this page
cross-encoder/nli-MiniLM2-L6-H768Yes / no by natural-language inferenceApache-2.082.8 MBToo large for this page
knowledgator/gliclass-edge-v3.0Zero-shot classification over many labels at onceApache-2.0no ONNX exportServer or Python

Sizes and licences read from each model's Hugging Face page on 24 September 2026. The runtime is ONNX Runtime Web 1.17.3 (MIT), compiled to WebAssembly. Word files are read by mammoth.js (BSD-2-Clause). The interface follows the patterns of LocalMode (MIT).

This device
Checking this device…
Detected in this tab. Nothing is sent anywhere.
Tiny models 0 / 57 MB
Go offline
Download the models into this tab.
Switch off Wi-Fi or unplug the cable. The network light turns amber.
Run any decision, or pseudonymise a document.
Online
Offline: not yet
No models yet