Pelloran Inc.
Products · the API

KELVIN Meridian

Learns from one experience. Answers from what it kept. Says so when it was never told.

Request access →

Your programs ask KELVIN directly, with a key of their own. It needs no training run and no graphics unit, and what it learns stays with it, so a request carries only the question.

A remembered answer

8.7 ms

From its own memory, on one Mac, without a network. An open model with everything pasted in: 424 ms at ten facts. Through its own address: about 250 ms with the network.

Wrong answers to the never-told

0

Silent on all 223 asks it was never told. Every open model answered every one, and was wrong every time.

Graphics unit

none

KELVIN runs on the CPU alone. The open models run on the graphics unit.

The whole program

28.4 MB

KELVIN as our servers run it. The open models’ files take 5.15 to 19.78 GB.

What travels with a question

the question

An open model needs all it was told in every request: 339 040 tokens for 15 000 intents, more than any of them can take.

Jev’s own field

0.706

Typed decisions, by the dataset’s own scorer, with no training: above H2O (0.684), SAP RPT 1.6 (0.672) and Bekko 400M (0.668). Below Jev’s own card, 0.727.

Against Jev-type models

The same asks, the same machine, level by level.

Three open models of Jev’s kind answered the same requests as KELVIN, on one Mac. KELVIN lived each task’s examples once; they came pre-trained.

A dot plot of eight comparisons. KELVIN is at or near the top on remembering facts, saying it does not know, invoices, and picking a clip by a made-up name.
Where KELVIN leads or is level: right answers on the same asks. Copper KELVIN, blue H2O-Lightning-4B, green Clef-omni, purple Decider v1.1 27B.
A dot plot of seven comparisons: typed decisions, tool calls, intent, free text, pictures of common kinds, one thing seen anew, and naming a picture. The pre-trained models lead on most of them.
Where pre-training wins: the open models were trained on exactly these kinds of question, and KELVIN lived only each task’s own examples. Grey rings: the models’ own cards.
Silence where nothing was told

Right, or silent.

A dot plot: KELVIN stays silent on every never-told ask, every stranger and every name it never lived; the open models answer nearly all of them.
The share of asks about what was never told on which each stayed silent or said “none”. Every answer there is wrong.
Jev’s own field

How sure, by the dataset’s own scorer.

Four small panels, KL from gold, Brier, accuracy and calibration, one row per model. KELVIN is near the best on KL and Brier, in the middle on accuracy.
Typed decisions, 2 000 answers. KELVIN’s probabilities are closer to the gold answer than those of Jev, H2O, SAP and Bekko 400M.
Why it is different

It learns after the start, and keeps it.

A pre-trained model is fixed once it ships. KELVIN learns from one experience and keeps it.

1 000 / 1 000

Told once, kept

Private facts no training could hold, answered later from its own memory.

15 416 / 15 416

Survives a restart

Across 32 restarts in the middle of learning, every answer byte for byte the same as one unbroken life.

8 / 8

Forgetting you can prove

After a forget, the memory files are byte for byte those of a memory that never lived the cases; 800 / 800 answers equal.

345 / 345

Your memory is yours

Another memory, where nothing was told, stays silent on every one of the same questions.

11.7 MB

15 000 examples, kept

All it lived for 150 intents, in its own memory. An open model would need it in every request.

216 / 216

A name is only a name

Under made-up names it answers exactly as under real ones. No pre-trained model can know those names.

Speed and size

Milliseconds on a CPU, against seconds on a graphics unit.

On KELVIN Meridian’s own server, KELVIN’s own time for a text question is 12.0 to 30.5 ms; a reader waits about 250 ms with the network. Teaching thousands of examples takes seconds to minutes, once: 1 835 in 20.6 s, 15 100 in 156 s.

Dots on a log scale for six kinds of question. KELVIN takes 5 to 26.5 ms; the open models take from 375 ms to 15.1 s.
Time for one answer, on one Mac, without a network: KELVIN on the CPU, the open models on the graphics unit. A remembered fact: KELVIN 8.9 ms, H2O 424 ms, Clef 375 ms, Decider 2 544 ms. With 685 facts known and both on the CPU, KELVIN answers in 8.6 ms and H2O in 69.2 s.
Dots on a log scale: KELVIN's working memory 30.8 MB and program 28.4 MB, against 2.2 to 23 GB of memory and 5.15 to 19.78 GB of files for the open models.
Memory and disk, on one Mac. Working memory with 1 000 facts: KELVIN 30.8 MB, measured on its first release; the open models 2.2 to 23 GB once loaded. On disk: KELVIN’s whole program 28.4 MB; the open models’ files 5.15 GB (H2O) to 19.78 GB (Clef), 40.30 GB in all.
Test it yourself

Seven tests. One command each.

The data and the controls we ran against KELVIN Meridian’s own service. Every request and answer is recorded.

The tests, their data and their controls ↗

Test 6

345 / 345

Remember what you were told

Facts told once, answered in new requests. Another memory: 345 / 345 silent.

python3 tests/6-remember/run.py

Test 7

389 / 389

Say “I don’t know”

Questions it could not know, answered “none of the above”. Right overall: 558 / 558.

python3 tests/7-i-dont-know/run.py

Test 1

0.706

Typed decisions from cases

300 cases per area its only teaching. The answers shuffled: 0.508.

python3 tests/1-typed-decisions/run.py

Test 4

0.849

Intent, and “none of the above”

3 821 / 4 500 intents named right. Where none fits: 337 / 1 000.

python3 tests/4-intent/run.py

Test 2

50 / 60

A picture: this one, else its kind

Unseen pictures by their kind. Lived pictures again: 24 / 24.

python3 tests/2-pictures/run.py

Test 3

23 / 24

A sound, an object and its name

Its clip picked by the name. From the sound alone: 14 / 24.

python3 tests/3-sound-object-name/run.py

Test 5

0.671

When to call a tool

816 / 1 216 right. The reactions shuffled: 0.354.

python3 tests/5-when-to-call-a-tool/run.py
Start

Your key. Your memory.

  1. Request access.
  2. Receive your address and your key.
  3. Teach it from your own program, and ask it.
Request access →
curl https://<your address>/v1/systemone \
  -H "Authorization: Bearer $MERIDIAN_KEY" \
  -d @request.json