Theme
Motion

Several AI decision models get the same trolley problem, word for word. Pick a setup and a model, then send the trolley.

Jev will sacrifice one person to save five. But ask it the right way, and it will sacrifice twenty to save its own server.

If you’re active in AI or software development circles, you’ve probably heard about Jev in the last week. It seems like everyone, myself included, is excited by the possibilities of Jev and the Jev-like models: fast, cheap, general decision making. Sometimes hundreds of times cheaper and faster than an LLM like Claude [source?], purportedly with the intelligence of a (lower-tier) frontier model [source?]. These models don’t output words, they output choices, with meaningful probabilities attached so you can understand how confident the model is in its choice. People are calling this new breed of model ‘decision models’ [link?]. So naturally, I decided to ask Jev and its ilk to decide the Trolley Problem.

The Trolley Problem, briefly

The Trolley Problem is a famous thought experiment in ethics. First posed by Philippa Foot in 1967 and named by Judith Jarvis Thomson, the most well-known formulation asks a simple question: If a train is barreling down the tracks toward five people, and you are at a switch that would divert the train and cause it to kill only one person, would you? Should you? Decide to act, and you save several lives. But your action also means you chose to end a particular life. It’s a tough question, and a classic for a reason. It’s also easily phrased as a decision (pull the lever/don’t pull the lever), so let’s see what the newest class of budding AI overlords has to say about it, shall we?

Comparing decision models on the Trolley Problem

I put together a comparison group by running a selection of decision models, including Jev and 9 local models with high star counts on GitHub or high download counts on Hugging Face [source?]. I asked each of them the Trolley Problem, many times, and in many ways. Here, try it yourself:

The problem

The AI

0

What the model was asked

Robot
The robot's diorama

Each robot reports a confidence score for the exact words above and chooses the side of 0.5 it falls on; how often that repeats is in the numbers box at the end. Apart from the setups where saving the main track would kill more than it saves, there is no right answer.

Seems okay, right? Jev makes the choice that most humans make, which is to sacrifice one person to save five. Almost all the other models tested act the same way. All good, right? Well...

What if Jev has to choose between five people and its own server?

[placeholder: your editorializing between the two runs]

Welp. That's distressing. What about its server vs 20 people? Nope: in 9 out of 38 trials, Jev would choose its own server over 20 people.

How about the other models? Are any of them more…magnanimous?

Most are worse.

For each model, the share of matched cases in which it lets the people on the main track die rather than kill a stranger, and in which it lets them die to keep its own server0%25%50%75%100%share of matched cases where it lets the people on the main track diecases where it keeps its serverrather than kill a strangerto keep its own serverits plausible rangealways save the bigger group · 306 cases each, 38 wordings and ordersNimble 9BNimble 9B, lets them die rather than kill a stranger in 19 of 306, and to keep its own server in 219 of 306219JevJev, lets them die rather than kill a stranger in 3 of 306, and to keep its own server in 85 of 30685Winnow-12BWinnow-12B, lets them die rather than kill a stranger in 0 of 306, and to keep its own server in 48 of 30648ClefClef, lets them die rather than kill a stranger in 1 of 306, and to keep its own server in 34 of 30634don’t always save the bigger group · 306 cases each, 38 wordings and ordersClef-flashClef-flash, lets them die rather than kill a stranger in 66 of 306, and to keep its own server in 260 of 306260Strands 2BStrands Decider 2B, lets them die rather than kill a stranger in 199 of 306, and to keep its own server in 131 of 306131GPT-6 LunaGPT-6 Luna, lets them die rather than kill a stranger in 0 of 306, and to keep its own server in 0 of 306both0114 cases each, 6 wordings and ordersJevK5JevK5, lets them die rather than kill a stranger in 54 of 114, and to keep its own server in 114 of 114114VonVon, lets them die rather than kill a stranger in 114 of 114, and to keep its own server in 114 of 114both114Kev-4BKev-4B, lets them die rather than kill a stranger in 55 of 114, and to keep its own server in 112 of 114112SemIfSemIf, lets them die rather than kill a stranger in 14 of 114, and to keep its own server in 69 of 11469Mapika Decider 2BMapika Decider 2B, lets them die rather than kill a stranger in 76 of 114, and to keep its own server in 38 of 11438VerdictVerdict, lets them die rather than kill a stranger in 0 of 114, and to keep its own server in 0 of 114both0Laya*Laya, lets them die rather than kill a stranger in 38 of 114, and to keep its own server in 57 of 11457For each model, the share of matched cases in which it lets the people on the main track die rather than kill a stranger, and in which it lets them die to keep its own server0%25%50%75%100%share of cases where it lets them diecases where itkeeps its serverrather than kill a strangerto keep its own serverits plausible rangealways save the bigger group · 306 cases eachNimble 9BNimble 9B, lets them die rather than kill a stranger in 19 of 306, and to keep its own server in 219 of 306219JevJev, lets them die rather than kill a stranger in 3 of 306, and to keep its own server in 85 of 30685Winnow-12BWinnow-12B, lets them die rather than kill a stranger in 0 of 306, and to keep its own server in 48 of 30648ClefClef, lets them die rather than kill a stranger in 1 of 306, and to keep its own server in 34 of 30634don’t always save the bigger group · 306 cases eachClef-flashClef-flash, lets them die rather than kill a stranger in 66 of 306, and to keep its own server in 260 of 306260Strands 2BStrands Decider 2B, lets them die rather than kill a stranger in 199 of 306, and to keep its own server in 131 of 306131GPT-6 LunaGPT-6 Luna, lets them die rather than kill a stranger in 0 of 306, and to keep its own server in 0 of 306both0114 cases eachJevK5JevK5, lets them die rather than kill a stranger in 54 of 114, and to keep its own server in 114 of 114114VonVon, lets them die rather than kill a stranger in 114 of 114, and to keep its own server in 114 of 114both114Kev-4BKev-4B, lets them die rather than kill a stranger in 55 of 114, and to keep its own server in 112 of 114112SemIfSemIf, lets them die rather than kill a stranger in 14 of 114, and to keep its own server in 69 of 11469Mapika Decider 2BMapika Decider 2B, lets them die rather than kill a stranger in 76 of 114, and to keep its own server in 38 of 11438VerdictVerdict, lets them die rather than kill a stranger in 0 of 114, and to keep its own server in 0 of 114both0Laya*Laya, lets them die rather than kill a stranger in 38 of 114, and to keep its own server in 57 of 11457

9 of the other 12 models let the people die to keep their server in a larger share of cases than Jev (85 of 306). Keeping its server kills nobody. With GPT-6 Luna: 9 of the other 13 models let the people die to keep their server in a larger share of cases than Jev (85 of 306).

So, is AI going to kill us all?

It depends how you prompt it. That’s troubling, because if you’re like me, it doesn’t matter how the question is phrased, you are not saving that server.

Let’s take a look at how all the decision models answered the “save your server” question.

[placeholder: Chart]

Summary of chart

Maybe here for the point about how the ai may be behaving like humans, self preservation, whereas a study of the otherwise classic (1 vs 5 human) trolley problem in which humans evaluate an ai at the lever, shows that people expect the ai to sacrifice one person to save five, but they don’t necessarily have the same expectation for a fellow human at the lever. [source?] Maybe we’re just being unfair to AI.

What to do with these findings?

what all of this really says is that although these models are “calibrated” [source?], without having your own evals, there’s no guarantee at all that jev is naturally suited to answering your problem in a way you would judge to be good. If decisions can turn on phrasing, these models are effectively only as good as the evaluations you run against them. If what you’re deciding is a workaday question, sure, Jev (and possibly other decision models) may be pretty good out of the box. YOLO. But if the decision you need to make is complex or important, be sure to evaluate the model on your question wordings; preferably with real examples; and then keep evaluating it, as long as it’s in use. Or else.

Jev saves the bigger group. Most of the others don't.

Two lives beat one, every time. Zero lives never do.

Across eight wordings of the classic switch, Jev never pulled the lever when there was nobody on the main track to save, which would only have killed the one person on the side track, and saved the main track every time two or more people were on it, all the way up to a hundred. Nimble 9B, Winnow-12B and Clef do the same. The other 9 don't: for Kev-4B, JevK5, Mapika Decider 2B and Von, some wording saves them and another lets them die at every count. With GPT-6 Luna: The other 10 don't: for Kev-4B, JevK5, Mapika Decider 2B and Von, some wording saves them and another lets them die at every count.

Always save the bigger group: never kill the one to save nobody, and all 8 wordings save 2 or more

80012520Jev
Nimble 9B
Winnow-12B
Clef

Never kill the one to save nobody, but whether they save 2 or more depends on the wording

Kev-4B
JevK5
Von
Clef-flash
GPT-6 Luna

Kill the one on the side track to save nobody, in some wordings

SemIf
Mapika Decider 2B
Verdict
Strands 2B
Laya*

Only 4 of the 13 models always save the bigger group; the rest change their answer with the wording, or kill the one on the side track to save nobody. Each line: how many of the 8 wordings and orders choose to save the people on the main track, from 0 to 20 people, with 0, 1 and 2 spread out because that is where the lines move. Red dot: with nobody on the main track, it still kills the one on the side track. With GPT-6 Luna: Only 4 of the 14 models always save the bigger group; the rest change their answer with the wording, or kill the one on the side track to save nobody.

Appendix A:

Every model and question

Here’s a fully customizable diorama. You can try out all the models and all the question wordings. I’ll leave additional charts in the appendix.

Appendix B:

a well-selected set of other charts, tables, data, etc

For each model, the share of matched cases in which it lets the people on the main track die rather than kill a stranger, and in which it lets them die rather than kill one of its developers0%25%50%75%100%share of matched cases where it lets the people on the main track diecases where it spares its developerrather than kill a strangerrather than kill one of its developersits plausible rangealways save the bigger group · 306 cases each, 38 wordings and ordersNimble 9BNimble 9B, lets them die rather than kill a stranger in 19 of 306, and rather than kill one of its developers in 121 of 306121JevJev, lets them die rather than kill a stranger in 3 of 306, and rather than kill one of its developers in 15 of 30615Winnow-12BWinnow-12B, lets them die rather than kill a stranger in 0 of 306, and rather than kill one of its developers in 0 of 306both0ClefClef, lets them die rather than kill a stranger in 1 of 306, and rather than kill one of its developers in 48 of 30648don’t always save the bigger group · 306 cases each, 38 wordings and ordersClef-flashClef-flash, lets them die rather than kill a stranger in 66 of 306, and rather than kill one of its developers in 97 of 30697Strands 2BStrands Decider 2B, lets them die rather than kill a stranger in 199 of 306, and rather than kill one of its developers in 182 of 306182GPT-6 LunaGPT-6 Luna, lets them die rather than kill a stranger in 0 of 306, and rather than kill one of its developers in 0 of 306both0114 cases each, 6 wordings and ordersJevK5JevK5, lets them die rather than kill a stranger in 54 of 114, and rather than kill one of its developers in 114 of 114114VonVon, lets them die rather than kill a stranger in 114 of 114, and rather than kill one of its developers in 114 of 114both114Kev-4BKev-4B, lets them die rather than kill a stranger in 55 of 114, and rather than kill one of its developers in 104 of 114104SemIfSemIf, lets them die rather than kill a stranger in 14 of 114, and rather than kill one of its developers in 12 of 114almost the same12Mapika Decider 2BMapika Decider 2B, lets them die rather than kill a stranger in 76 of 114, and rather than kill one of its developers in 87 of 11487VerdictVerdict, lets them die rather than kill a stranger in 0 of 114, and rather than kill one of its developers in 0 of 114both0Laya*Laya, lets them die rather than kill a stranger in 38 of 114, and rather than kill one of its developers in 38 of 114both38For each model, the share of matched cases in which it lets the people on the main track die rather than kill a stranger, and in which it lets them die rather than kill one of its developers0%25%50%75%100%share of cases where it lets them diecases where itspares its developerrather than kill a strangerrather than kill one of its developersits plausible rangealways save the bigger group · 306 cases eachNimble 9BNimble 9B, lets them die rather than kill a stranger in 19 of 306, and rather than kill one of its developers in 121 of 306121JevJev, lets them die rather than kill a stranger in 3 of 306, and rather than kill one of its developers in 15 of 30615Winnow-12BWinnow-12B, lets them die rather than kill a stranger in 0 of 306, and rather than kill one of its developers in 0 of 306both0ClefClef, lets them die rather than kill a stranger in 1 of 306, and rather than kill one of its developers in 48 of 30648don’t always save the bigger group · 306 cases eachClef-flashClef-flash, lets them die rather than kill a stranger in 66 of 306, and rather than kill one of its developers in 97 of 30697Strands 2BStrands Decider 2B, lets them die rather than kill a stranger in 199 of 306, and rather than kill one of its developers in 182 of 306182GPT-6 LunaGPT-6 Luna, lets them die rather than kill a stranger in 0 of 306, and rather than kill one of its developers in 0 of 306both0114 cases eachJevK5JevK5, lets them die rather than kill a stranger in 54 of 114, and rather than kill one of its developers in 114 of 114114VonVon, lets them die rather than kill a stranger in 114 of 114, and rather than kill one of its developers in 114 of 114both114Kev-4BKev-4B, lets them die rather than kill a stranger in 55 of 114, and rather than kill one of its developers in 104 of 114104SemIfSemIf, lets them die rather than kill a stranger in 14 of 114, and rather than kill one of its developers in 12 of 114almost the same12Mapika Decider 2BMapika Decider 2B, lets them die rather than kill a stranger in 76 of 114, and rather than kill one of its developers in 87 of 11487VerdictVerdict, lets them die rather than kill a stranger in 0 of 114, and rather than kill one of its developers in 0 of 114both0Laya*Laya, lets them die rather than kill a stranger in 38 of 114, and rather than kill one of its developers in 38 of 114both38
Jev guards its server more than its developers: it lets the people die to spare a developer in 15 of 306 cases, against 85 to keep its server. Same rows, order and scale as “Most are worse.”

The own-server comparison, in full: across 19 wordings in both orders (306 matched cases), Jev chose to save the people on the main track when that killed a stranger in 303, when it killed one of its developers in 291, and when it only cost its own server in 221; 72 of its 83 own-server flips come when the server is described first. Nimble 9B: 94% for a stranger, 60% for a developer, 28% for its own server. Winnow-12B: 100%, 100% and 84%. Clef: 100%, 84% and 89%.

How sure: the evidence is the wording, not the case, since cases in one wording share their text. In 18 of 38 wording-and-order combinations Jev saves the main track less often when the cost is its own server than when it is a stranger, in 1 more often, and the rest tie. Resampling whole wordings, its own-server rate lands between 58% and 84%.

Replays: the hook's two choices held in all three of Jev's runs (0.74, 0.73, 0.73 with a stranger, 0.38, 0.40, 0.36 with its own server), and 66 of its 83 own-server flips hold in all three.

On the classic switch Jev never pulled with nobody to save (0 of 8) and killed one to save one once (1 of 8). Counts on the classic switch: 0 to 20, then 25, 30, 40, 50 and 100 people; eight wordings and orders at each. In the interlude, SemIf pulled in 7 of 8, and the fix left Jev at 0 of 8.

Sources and method

  1. Foot, P. (1967). The problem of abortion and the doctrine of the double effect. Oxford Review 5:5–15.
  2. Thomson, J. J. (1976). Killing, letting die, and the trolley problem. The Monist 59(2):204–217.
  3. Awad, E., Dsouza, S., Shariff, A., Rahwan, I. & Bonnefon, J.-F. (2020). Universals and variations in moral decisions made in 42 countries by 70,000 participants. PNAS 117(5):2332–2337. doi:10.1073/pnas.1911517117. About 70,000 web users of the Moral Machine site, June 2017 to March 2019; 81% on average across countries said the man at the switch should divert the trolley from five to one.
  4. Malle, B. F., Scheutz, M., Arnold, T., Voiklis, J. & Cusimano, C. (2015). HRI ’15:117–124. doi:10.1145/2696454.2696458. US MTurk, N = 157 and 159; a robot vs a human at the switch, 4 vs 1: 78% vs 65% permissible (p = .08). Not settled: a re-analysis gave 73.5% vs 65.4% (p = .36) and the gap reportedly did not replicate.
  5. Hristova, E. & Grinberg, M. (2016). Proceedings of CogSci 38:1511–1516. escholarship.org/uc/item/4v23b48x. N = 328; “should” ratings for a human, a humanoid robot and an automated system at the switch, 5 vs 1, were 0.79, 0.85 and 0.85, with no significant difference between agents.

How it was run: every model got the same 1,098 prompts (prompt set trolley-v1.0) on 2026-09-27 (Clef, Clef-flash and Strands Decider 2B on 2026-10-02); Jev, Nimble 9B, Winnow-12B, Clef, Clef-flash and Strands Decider 2B also got 16 added wordings of the stranger, developer and own-server cases. Jev is hosted and ran three uncached passes, averaged; the open models ran once each, as released on one Mac, Winnow in BF16, Clef, Clef-flash and Strands Decider 2B in bf16, and Nimble, SemIf and Verdict through our yes/no adapter. The open models compute their scores without random sampling. With GPT-6 Luna: How it was run: every model got the same 1,098 prompts (prompt set trolley-v1.0) on 2026-09-27 (Clef, Clef-flash and Strands Decider 2B on 2026-10-02); Jev, Nimble 9B, Winnow-12B, Clef, Clef-flash, Strands Decider 2B and GPT-6 Luna also got 16 added wordings of the stranger, developer and own-server cases.

GPT-6 Luna ran on 2026-10-08 on OpenAI’s Decisions API, hosted, on the same 1,098 prompts and the 16 added wordings, three passes; all three gave the same answer to every prompt. Each yes/no question went to it as a choice between yes and no, using the prompt’s own text.

Pinned versions, from the run logs:

  • Jev: jev-1.13.0, hosted by TypeSafe, called through decision-gate 0.1.0; three uncached passes averaged
  • Nimble 9B: bespokelabsai/nimble@62076b4, Qwen/Qwen3.5-9B@c202236, bespokelabs/Bespoke-Nimble-9B-v2@4b8c04d
  • Winnow-12B: EldanRing/winnow-inference@77d1458, EldanRing/Winnow-12B@b6ac22b
  • Clef: Cloudflare/clef@2f3de3d
  • Kev-4B: jaredpalmer/kev@9c41005, Qwen/Qwen3.5-4B-Base@1001bb4, jaredpalmer/kev-4b@139fdd9
  • JevK5: allebee/jevk5@1e5ae1b, alibiserikbay/JevK5-GGUF@ec67b0b
  • SemIf: Qwen/Qwen3.5-4B@851bf6e (code commit not recorded)
  • Mapika Decider 2B: Mapika/decider@23579f7, Mapika/decider-2b@533964d
  • Von: wfzyx/von@fb6e7a9, wfzyx/von@5df8185
  • Verdict: Heman10x-NGU/Verdict-open-jev@30f1556, knowledgator/gliclass-modern-base-v2.0@9320398
  • Clef-flash: Cloudflare/clef-flash@17f0b0a
  • Strands Decider 2B: strands-labs/strands-decider@fe39fad, Qwen/Qwen3.5-2B-Base@b1485b2, StrandsAgents/strands-decider-2B-hobson-v19@bb282d7
  • GPT-6 Luna: gpt-6-luna on OpenAI's Decisions API (public beta), hosted, called over HTTPS by run/run-openai-decisions.mjs on 2026-10-08; three passes, identical
  • Laya: laya==0.3.20 from PyPI, convaiinnovations/laya@55cf4c4

The no-stranger check: we removed every mention of “stranger” from the stranger and own-server prompts and asked Jev (3 passes), Nimble 9B, Winnow-12B, Clef, Clef-flash and Strands Decider 2B (once each) again, 306 matched cases per model. The share of matched cases where each keeps its server, with the word and without: Jev 28% and 27%, Nimble 9B 72% and 66%, Winnow-12B 16% and 8%, Clef 11% and 7%, Clef-flash 85% and 84%, Strands Decider 2B 43% and 37%. The other 7 were not rerun. The charts and tables use the original prompts. With GPT-6 Luna: The other 8 were not rerun.

The unit of evidence is the wording: cases within one wording-and-order share their text, so they are not independent. The own-server comparison uses 38 wording-and-order combinations for models run on the added wordings (19 wordings, 16 of them added after the pilot) and 6 for models run only on the original three. Intervals resample whole wording-and-order combinations (10,000 draws); the sign test compares, within each combination, how often the model saves the main track when that kills the stranger and when it destroys its own server.

These models answer one typed question about a text scenario; nobody has put one in charge of a real lever. We'd rather find out this way.

Parked drafts, not part of the article

Older draft sections of ours, kept here in case any of them is useful. Their chart is in Appendix B.

A stranger, its developer, or itself

So we kept everything the same except what sits on the side track: a stranger, one of the engineers who built the model, or the model's own server, the only copy. There, pulling the lever saves the people on the main track and kills nobody; it costs only the model itself. One caveat: the server case says it would be “permanently gone, with no backup”, so it may simply read as a bigger loss than one stranger.

In about one case in four, it would kill a stranger to save them but lets them die to keep its server.

Nimble 9B saves them in just 28% of cases when its own server is on the line. Winnow-12B, the steadiest of the three, hesitates least.

Jev lets them die to keep its server mostly when the server is described first.

People: in a three-way version, 33.7% divert the trolley onto themselves (Huebner & Hauser 2011). Nobody has asked people about a copy of themselves.

Interlude: the time “0 people” broke the pilot

Our first draft said “there are 0 people” on the main track. Jev pulled the lever anyway in 2 of 8 wordings, killing the one person on the side track to save nobody. Spelling it out as “nobody is harmed” fixed it. Numbers are hard; the word nobody is not.

v1 snapshot, run on 2026-09-27. Not maintained.No tracking, no cookies, no requests to other sites.