{"slug": "jev-in-25-lines-of-python", "title": "Jev in 25 lines of Python", "summary": "NobodyWho published a parody blog post on September 22, 2026 showing a Jev-style decision model implemented in 25 lines of Python using the Qwen3-0.6B-GGUF model via llama-cpp-python, which classifies an email prompt into Legitimate, Spam, or Phishing with probabilities of 0.031, 0.084, and 0.885 respectively. Author Duarte O.Carmo argues the approach is fast, local, and avoids sending data to an API, and links to fuller open implementations OpenJev, openjev-sglang, and OpenJev on DiffusionGemma.", "body_md": "# Jev in 25 lines of Python\n\nEveryone and their mom is talking about Jev. Jev this, Jev that. Everyone on Twitter is all over Jev, how it's the next frontier of large language models and the AI paradigm. We don’t really think so. So here's Jev in 25 lines of Python.\n\nLoad the model.\n\n```\n# /// script\n# requires-python = \">=3.12\"\n# dependencies = [\"huggingface-hub\", \"llama-cpp-python\", \"numpy\"]\n# ///\n\nimport numpy\nfrom llama_cpp import Llama\n\n# Really, you can use any GGUF model from https://huggingface.co/models?library=gguf\n\nmodel = Llama.from_pretrained(\n    repo_id=\"Qwen/Qwen3-0.6B-GGUF\",\n    filename=\"Qwen3-0.6B-Q8_0.gguf\",\n    n_ctx=512,\n    logits_all=True,\n    verbose=False,\n)\n```\n\nLoad the prompt and define your choices.\n\n```\nlabels = [\"A\", \"B\", \"C\"]\nchoices = [\"Legitimate\", \"Spam\", \"Phishing\"]\nemail = \"Payroll asks for your password on a non-company sign-in page.\"\noptions = \"\\n\".join(\n    f\"{label}. {choice}\" for label, choice in zip(labels, choices, strict=True)\n)\nprompt = f\"\"\"<|im_start|>system\nChoose one option.<|im_end|>\n<|im_start|>user\nEmail: {email}\\n\\n{options}<|im_end|>\n<|im_start|>assistant\n<think>\\n\\n</think>\\n\\n\"\"\"\nmodel.eval(tokens=model.tokenize(text=prompt.encode(), add_bos=False, special=True))\n```\n\nMassage the logits into probabilities.\n\n```\nlogits = model.scores[model.n_tokens - 1]\ntoken_ids = [model.tokenize(text=label.encode(), add_bos=False)[0] for label in labels]\nchoice_logits = numpy.asarray([logits[token_id] for token_id in token_ids])\nlogprobs = choice_logits - numpy.logaddexp.reduce(choice_logits)\nprobabilities = numpy.exp(logprobs)\n\nfor name, scores in (\n    (\"Logits\", choice_logits),\n    (\"Log probabilities\", logprobs),\n    (\"Probabilities\", probabilities),\n):\n    values = numpy.round(scores.astype(float), 3).tolist()\n    print(f\"{name}:\", dict(zip(choices, values, strict=True)))\n\n# Logits: {'Legitimate': 26.254, 'Spam': 27.262, 'Phishing': 29.614}\n# Log probabilities: {'Legitimate': -3.482, 'Spam': -2.474, 'Phishing': -0.122}\n# Probabilities: {'Legitimate': 0.031, 'Spam': 0.084, 'Phishing': 0.885}\n```\n\nThere. That’s Jev.\n\n## But no, you don’t understand Jev!\n\nYeah, we know.\n\n- We don't call it a System One decision model.\n- We didn’t call an API.\n- We didn't create a bunch of synthetic data.\n- We didn't train a model with Reinforcement Learning for Calibrated Decisions (RLCD) to calibrate the decisions and probabilities (even though they are not always correct).\n\n## But yes. This is Jev.\n\n- It classifies: it gets a prompt with choices and outputs probabilities.\n- It's fast.\n- It's local.\n- You don't send your data anywhere else.\n\nAnd we like not sending your data anywhere else. Check out [NobodyWho](https://github.com/nobodywho-ooo/nobodywho).\n\n*(note: this is a parody blog post, see these links for better/more complete open implementations of Jev: OpenJev, openjev-sglang, and OpenJev on DiffusionGemma.)*\n\n                        Everything NobodyWho do is open-source, please leave a\n                        [star on Github](https://github.com/nobodywho-ooo/nobodywho)\n                        to support us ❤️\n                    \n\nPublished Sep 22, 2026 by Duarte O.Carmo", "url": "https://wpnews.pro/news/jev-in-25-lines-of-python", "canonical_source": "https://www.nobodywho.ai/posts/jev-in-25-lines/", "published_at": "2026-09-22 00:00:00+00:00", "updated_at": "2026-09-22 12:26:28.760978+00:00", "lang": "en", "topics": ["large-language-models", "ai-tools", "developer-tools"], "entities": ["NobodyWho", "Duarte O.Carmo", "Qwen3-0.6B-GGUF", "llama-cpp-python", "Hugging Face", "OpenJev", "openjev-sglang", "DiffusionGemma"], "alternates": {"html": "https://wpnews.pro/news/jev-in-25-lines-of-python", "markdown": "https://wpnews.pro/news/jev-in-25-lines-of-python.md", "text": "https://wpnews.pro/news/jev-in-25-lines-of-python.txt", "jsonld": "https://wpnews.pro/news/jev-in-25-lines-of-python.jsonld"}}