Jev Prime
A chatbot with no language model: every word is chosen by Jev Choice questions from thousands of options, with lookahead and self-critique.
Overview
talk to jev (Jev Prime) is a chatbot with no language model. Every word is picked from a list by Jev, which can only choose among options. The project's claim, written up in a paper, is that generation is classification repeated with memory in between. Questions are asked at several grains: for the reply (what the user is doing, how much to say, how it feels, whether to look something up), for each sentence (what it does, who it is about, whether the reply is complete), for each word (one of about 150 function words, one of the user's words, or a kind of word), with lookahead when unsure, digit-by-digit for numbers, and a post-reply check of grammar, relevance and naturalness that rewrites weak sentences.
Per the list summary, words come from about 4,700 options, lookahead triggers when the top pick falls below 0.65, and beam search explores sentence directions. It can hold a conversation, keep mood across turns, echo the user's words, do small sums and use tools via per-tool yes/no questions. The author calls the code one quick, untidy implementation of the paper's idea. A live site runs with rate limits.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which word comes next? | — |
| Choice | What does the next sentence do? | — |
| Yes / no | Would it help to look up the time? | yes · no |
| Yes / no | Is the reply complete? | yes · no |
How it works
- Ask reply-level questions about intent, length and mood
- Plan each sentence with Choice questions
- Pick each word from function words, user words or word kinds
- Use lookahead when the top pick is uncertain
- Critique the reply and rewrite weak sentences
Strengths
- Novel demonstration of generation by repeated classification
- No templates or phrase banks
- Paper and archived code available
Caveats
- Output quality is limited and sometimes odd
- Many sequential calls per reply
- Code is described as untidy and iterative
Getting started
python3 -m venv .venv && ./.venv/bin/pip install -r requirements.txt, put an OpenRouter key in .env, then ./.venv/bin/python server.pyAt a glance
- Type
- Service
- Status
- research
- Language
- Python
- Runtime
- Web server
- Has code
- yes
Use cases and integrations
How curated lists describe it
Text generation: a conversational agent with no language model, where every word is picked from ~4,700 options by Jev `Choice` questions one at a time, with confidence driving lookahead when the top pick falls below 0.65, beam search across sentence directions, and a self-critique loop that rewrites sentences scoring below threshold; live at talktojev.com, paper at doi.org/10.5281/zenodo.22940945.
yibie/awesome-jev
Frequently asked questions
How can a choose-only model chat?
By choosing every word from options, with higher-level choices planning the reply and sentences.
Is there a paper?
Yes, on Zenodo, arguing that generation is repeated classification.
Can I try it?
Yes, at talktojev.com, with rate limits.
Related projects
Turns any local LLM into a Jev-style engine via masked-logit softmax, or proxies OpenAI-compatible APIs or Jev; includes a chat crush radar.
ServiceprototypePythonChat interface with no generative model: Jev picks intent, stance, claim and tone, and a deterministic compiler writes the reply.
DemoprototypeTypeScript- TypeAR★ 946
TypeLLM: Jev-inspired type-safe decoding for existing autoregressive LLMs on SGLang, with schema-guaranteed typed outputs.
ProjectbetaPython llama.cpp-based C++ server that turns any LLM into a System One decision model, reading answers from next-token logits.
ProjectbetaC++Decision-forensics library that explains a Jev answer by ablating parts of the input and measuring how far the probability moves.
ProjectbetaPythonAdapter that turns existing LLMs into Jev-style decision functions with option scores, optional calibration and review thresholds.
ProjectprototypePython