RefAI · the decision layer inside Reflick
RefAI answers with a TYPE and a number saying how much to trust it, so the software around it can act, ask, or pay for a better answer. It is how Reflick decides what you meant before anything bills.
Where these come from.
Round trip: /health from one machine at UTC+4 to our Frankfurt
region, no work behind it — a lower bound, not a benchmark.
Tools and credit cost: this product, today.
Tests: the suite that has to pass before a build ships.
Every figure on this page is one we measured and can reproduce, and where
something is not measured yet the page says so rather than estimating.
Reflick's classifier returns an intent, or nothing. So almost certainly an instruction and no idea at all are the same value, and the code downstream cannot tell them apart. It has one move for both: pay for a model and wait.
That is expensive in the ordinary way and wrong in a worse way. When the model it consults answers "just conversation" for something that needed the agent, the agent never runs, and the request quietly does nothing.
RefAI returns the choice, every alternative it considered, and a calibrated confidence. The caller sets its own threshold, because the cost of being wrong is not symmetric: misrouting a question wastes a turn, and misrouting an instruction starts something that clicks real buttons.
choice: question
confidence: 0.61
alternatives: { question: 0.67, screenContext: 0.33 }
source: local
Two signals, disagreeing. 0.61 is the useful part of that answer: it is below the threshold at which Reflick acts without checking, so this one buys a model call and is right to. The old classifier would have returned the same thing as a bare guess with nothing attached, and the caller would have had no way to know it was a close call.
said was right n
0.25 0.56 9
0.35 0.29 7
0.45 0.60 5
0.55 0.64 14
0.65 0.88 8
0.75 1.00 13
0.85 0.88 8
0.95 1.00 12
Mean calibration error 0.124. Monotonic, and under-confident rather than over-confident — which is the safe direction, because an over-confident number is one whose threshold does nothing.
A confidence nobody checks is decoration. Ours means something testable: of the decisions returned at 0.8, about 80% should be right. Two rules make that possible rather than asserted.
Both rules are enforced by tests that fail if they are removed: delete the second and a single weak signal becomes enough to skip the model.
The curve above is eight thin buckets over a corpus we wrote ourselves. The model is a Create ML text classifier, 8 KB, trained on 1,441 hand-written utterances across four intents, held out at 75/25. It measures how the model behaves on our examples, not on yours, and every bucket is small enough that a handful of rows moves it.
We publish it because a confidence nobody has measured is decoration, and because asserting the word “calibrated” with nothing behind it is the thing this page exists not to do. Read the direction, not the decimals.
A request from the founder's machine to our service in Frankfurt, doing no work at all, takes 419-462ms. That is distance, not slowness, and it is what every model call pays before the model has read anything.
A local decision avoids it entirely. That is the whole economic argument, and it is why the ladder matters more than the model at the top of it.
That figure is a lower bound, not a benchmark. It is
/health with no work behind it, from one machine, to one
region. A user in Europe sees considerably less. We have not measured a
like-for-like comparison against another product, so we are not claiming
one.
It decides one thing: what you meant, out of four possibilities, on your own Mac. It is not a general decision API, it does not take arbitrary state, and it answers no question you did not already ask Reflick.
It also cannot decide to do anything. Everything that clicks or types on your Mac still comes from an exact phrase match or from a model that looked at the screen — never from this. That is a hard rule rather than a confidence threshold, which means the worst RefAI can get wrong is spending a turn that would have been spent anyway.
The same typed decisions, available to anybody's software rather than only to Reflick. Below is the waitlist for a key.
Say "on my Mac, open Safari" to your phone and the sentence is carried to a Mac on your account, which runs it through its own rules and answers back. The phone drives services and system data; the Mac drives applications.
Further out, and stated as a direction rather than a date: the same decision layer as a system service, for personal machines and for servers — including old UNIX boxes that will never run anything newer, given AI capabilities without being replaced.
One email when there is something to use. Reflick itself works today and is the fastest way to see RefAI deciding things: download it for Mac, free to start.
One email, on launch. Unsubscribe is a reply. We store the address and the date, and nothing else.