Kev: Tiny Jev-like family of decision models built on top of Qwen3.5 (github.com)
soundworlds 2 minutes ago
nico 6 hours ago
For emails, I get 95% accuracy with this method, with only 50-100 examples for training
Training the model takes less than 5 minutes on a CPU
The resulting model is <1MB, and inference is sub 100ms
Some other cool things about this approach:
* the model doesn’t train on some “ideal” or general classification, instead it learns your preferences
* the model runs on pretty much any mobile device and can be retrained online on the device
* privacy, the whole training and inference is 100% local, no data goes anywhere (except whatever you feed codex/claude while building the model)
Note: to do a more general test, I made a classifier for the Banking77 dataset. The model is <10MB, trains in <30s on CPU and gets 94.5% accuracy, which puts it in the top 5?models by accuracy for that set (the best one is at 94.86%, but it’s 350MB in size and takes hours to train on a GPU).
rgbrgb 5 hours ago
nico 5 hours ago
The type of task in which it does really well, especially against Laya, is classification with >50 classes
But this architecture has no “reasoning”, so it performs rather poorly on tasks that require it, like the ones from the XLNI dataset (Jev/Laya do a lot better on this one)
For the latter cases, you could probably enhance the architecture with a lightweight LLM, something like a Gemma model. Or even some basic MLP
samuel 5 hours ago
This is the same route but WAAAY faster and cheaper. And you can modify it like you do with code or prompts. It's really appealing, TBH.
0x457 4 hours ago
Originally it was so I can label data to fine-tune a VLM, but now a few tiny classifiers that run in milliseconds on cpu.
Now its collecting data to make a domain specific BERT and do what Jev does.
nico 4 hours ago
Also curious about if you plan on doing some sort of routing for the requests. Like detecting the type of task to decide which model to route the request to
0x457 2 hours ago
This whole thing started because I wanted something to help me play Dune Imperium. Even relatively large models with vision encoders couldn't reliably extract the full state of the board. Now that I have ~2k labeled screenshots, I want to train heads on top of SigLIP2 to extract all of that data in one go.
That's how it started. Now the thing supports multiple kinds of datasets:
Images - currently the Dune Imperium and Bolatro screenshots, with SigLIP2 heads being the next step.
STT - my self-hosted Linux dictation tool feeds this dataset. I run Nemotron ASR tuned for my voice.
TTS - for Piper TTS, trained to speak like SHODAN. Trained from data generated by Qwen3-tts + original video games files.
Text pairs - for a 1.2B model that converts normal text into "what would SHODAN say?"
FastApply - a Qwen3.5-4B LoRA adapter for doing fast edits.
Chat threads - all agent/chat threads get saved too, so eventually I can turn the useful ones into a dataset and train a LoRA for a really good Rust-specialized version of Qwen3.8-27B.
Tool calls (extracted from chat threads) - this is where I want something Jev-like, mainly to add an auto-approval mode to my agent harness.
A model router isn't planned because I'm trying to gear everything toward self-hosting, and there just isn't that much to route between. I’ll probably build something Jev-like for smart-home control, though.The FastApply dataset is already ~20k entries, with the majority of outputs being 8k–16k tokens. The STT dataset is roughly 30 hours and growing.
Basically, the whole thing has turned into a Collect -> Distill -> Train pipeline for whatever I happen to need.
nico 2 hours ago
Amazing, thank you for sharing your setup. Very cool applications
constantlm an hour ago
prodigycorp 7 hours ago
The one thing jev has going for it is a dedicated company focused entirely on making the product good and keeping it maintained. I haven't been willing to jump on board with all these jev-shaped projects because their releases feel driven mostly by opportunism. I'm fine waiting a bit for the opportunists to shake out so we can see who is genuinely committed to bringing something valuable to the open-weight community.
Jev is much better than the traditional ML crowd gives it credit for, but my enthusiasm hits a wall when it comes to their data policy. It is completely draconian. Whatever you feed into the system, they retain.
The jev team needs to release a ZDR product, or their platform is dead on arrival. An open, jev-shaped model will win out solely on that basis.
kerwioru9238492 7 hours ago
In their privacy policy they say
We (1) will not train or fine tune any artificial intelligence or machine learning models on Input, and (2) will not disclose any Input to a third party other than our service providers.
prodigycorp 6 hours ago
These aren’t acceptable terms on a personal or corporate level. I’ve seen some fools brag about proxying their life through jev. Messages, emails, LLM calls, files.
zambal 5 hours ago
prodigycorp 5 hours ago
preuceian 6 hours ago
cle 6 hours ago
I'd prefer if these companies would just enumerate what they will do with my data rather than these vague over-specific claims about what they will not do, which leave me with more questions than answers.
aand16 15 minutes ago
doublerabbit 6 hours ago
prodigycorp 6 hours ago
magimas 6 hours ago
that is generally a very healthy attitude in the AI space anyway in my opinion.
Some of our R&D departments haven't actually finished an interesting project in years because they keep jumping from trend to trend wanting to try out all the latest shit all the time.
jldugger 6 hours ago
max-privatevoid 5 hours ago
Does anyone actually believe this?
hhh 4 hours ago
oscarfr 9 hours ago
There are already many Jev-like models in there.
Edit: No affiliation. Just found it and thought others might find it interesting.
jasonjmcghee 8 hours ago
Anything that required knowledge / familiarity mmBERT and ModernBERT post-trains performed much worse.
So it seems like they did some kind of useful expansive pre-training.
Things that were Qwen or Gemma Diffusion did better at those kinds of tasks but were generally pretty inconsistent in terms of whether they could succeed repeatedly (and be stable + reliable) on the many types of tasks that are in the cookbook part of the Jev docs.
If you ask Jev similar input + questions, it's pretty stable. And does a reasonable job on a lot of questions.
This one public benchmark (the only I've seen) seems to give the open versions way too much credit. It wasn't my experience at all.
It gave my a false wrong sense of what might be required to get it working for something at work to avoid needing a new subprocessor as - at least on Cloudflare / OpenRouter Jev is third-party not hosted.
oscarfr 7 hours ago
We are working on running our own benchmark of Jev and some of the other models. Our use case is classification that runs in a UI. Currently LLMs have good accuracy, but are too slow (and expensive).
Jev not being available through a cloud provider (Bedrock or similar) makes it more challenging for us to start testing and rolling it out.
bglusman 7 hours ago
oscarfr 6 hours ago
jasonjmcghee 6 hours ago
So it's a new subprocessor. Which can often be painful to onboard, especially if not compliant according to your needs.
raybb 7 hours ago
hbarka 13 hours ago
tietjens 13 hours ago
mohsen1 12 hours ago
also tried myself: https://console.typesafe.ai/playground?share=shr_1690a3160f1...
rrr_oh_man 11 hours ago
fxwin 11 hours ago
prodigycorp 11 hours ago
dr_dshiv 11 hours ago
prodigycorp 11 hours ago
cleaning 11 hours ago
dr_dshiv 5 hours ago
cleaning 2 hours ago
bityard 10 hours ago
dr_dshiv 5 hours ago
irthomasthomas 10 hours ago
mohsen1 9 hours ago
bityard 10 hours ago
Unless specifically told in a system prompt, the pile of weights has absolutely no knowledge of itself. You could hypothetically train it to answer such questions, but nobody bothers to do this, and ALL "knowledge" embedded in the weights is probabalistic anyway.
(I feel like this should be common knowledge in LLM discussions on HN by now.)
spiderfarmer 10 hours ago
tlb 10 hours ago
mohsen1 9 hours ago
So a model correctly identifying its family doesn't necessarily mean it inferred that from pretraining.
I think with Jev, they took a posttrained model and trained it further, so it did not forget about its earlier knowledge during Owen's own RL.
janalsncm 3 hours ago
It’s also entirely possible that they used completions from a pool of open weight models.
akx 9 hours ago
$ ./build/bin/llama-cli -m Qwen3.6-35B-A3B-UD-Q4_K_XL.gguf --system-prompt "(this prompt explicitly left empty)"
build : b10889-6e41074fc
model : Qwen3.6-35B-A3B-UD-Q4_K_XL.gguf
ftype : Q4_K - Medium
modalities : text
using custom system prompt
> What model are you?
[Start thinking]
Here's a thinking process:
1. **Analyze User Input:** The user asks "What model are you?"
2. **Identify Core Question:** The user wants to know my identity/model name.
3. **Check System Prompt/Instructions:** The system prompt says "(this prompt explicitly left empty)" - this is unusual but doesn't change my core identity. I need to respond based on my actual identity as Qwen / 通义千问.
4. **Formulate Response:** I should clearly state that I am Qwen (通义千问), developed by Alibaba Group's Tongyi Lab, and keep it concise as per guidelines.
5. **Draft Response:** I am Qwen (通义千问), a large language model independently developed by Alibaba Group's Tongyi Lab. How can I assist you today?
6. **Refine according to guidelines:** The draft matches the required identity and tone. It's direct and helpful. Ready.
[End thinking]
I am Qwen (通义千问), a large language model independently developed by Alibaba Group's Tongyi Lab. How can I assist you today?bityard 5 hours ago
Historically, many do not and there are lots of counter-examples proving this. They merely hallucinate an answer just like anything else. The SAME model may even give different answers to the same prompt when asked multiple times... sometimes they claim to be ChatGPT, sometimes Gemma, etc. The fact that the answer is delivered confidently fools people who don't understand this, and these people then run straight to social media with "proof" of their conspiracy theory that one AI lab "stole" another AI lab's model.
My point stands that unless specifically trained or told, big bags of weights do not possess any inherent introspection. LLMs have many fascinating emergent properties, but this is not one of them.
mohsen1 3 hours ago
temperature?
c7b 8 hours ago
HenryMulligan 7 hours ago
c7b 4 hours ago
But in general, we might be reading too much into this. If I were to build something like this, a Qwen model would be among the first things I'd reach for too. Initially just prompted inside a little harness to guarantee you get the desired output. Next step would be finetuning, finally training your own foundation model, if you can muster the funding. In this fast-moving space, I think it's quite understandable that they'd go public with an MVP asap, so likely not much training on their own. And even if they're finetuning, Qwen's baked-in answer (through Alibaba's finetuning) seems likely to survive unless it was explicitly overridden.
riedel 5 hours ago
llm_nerd 11 hours ago
Big if. More likely, it seems, is they started with an open LLM model and fine-tuned and repurposed it via their "RLCD" process.
jrmg 7 hours ago
Where Does Our Training Data Come From?
TypeSafe is primarily a data research lab, which is how the biggest results in AI get made. We make all the data ourselves. We wouldn’t train on your data even if you asked us to (no offense). We do some pretty sophisticated stuff, but if you want to find out more, we’d have to hire you.
llm_nerd 7 hours ago
I mean, this claim is simply preposterous, and is discountable as ridiculous nonsense on its face.
brookst 2 hours ago
alfalfasprout an hour ago
llm_nerd 11 minutes ago
How do you create "100% synthetic data" that is filled with countless facts, coding patterns, medicine, law, philosophy, etc? The notion is farcical.
monkeydust 14 hours ago
Tycho 14 hours ago
petesergeant 13 hours ago
I think that there are not _that_ many use-cases that have been opened up by this that tool-calling on other models didn't solve already. Really depends what benchmark you're looking at. This one against BANKING77[0] has many issues, but suggests it's really not far off DeepSeek 4.1 Flash. This one against BoolQ[1] shows marginal improvement over Qwen3.6. This one against MMLU-Pro[2] (same author as the previous) shows significant improvements over two Qwen models.
So there's definitely _some_ alpha there, but I don't think it's the sea-change that the hype would suggest; that is to say, yes, some things that weren't practical before are now, but many things were already very practical with the existing tools.
0: https://sanand0.github.io/llmevals/jev/
1: https://github.com/ekzhang/openjev-sglang/blob/a3554ed9e9c26...
2: https://github.com/ekzhang/openjev-sglang/blob/a3554ed9e9c26...
Fabricio20 9 hours ago
petesergeant 7 hours ago
anentropic 13 hours ago
So you have more flexibility to get on with building, evolve your business logic etc
badatnames 13 hours ago
colordrops 12 hours ago
badatnames 11 hours ago
stonogo 9 hours ago
embedding-shape 11 hours ago
It does "work", you can download ansible today and use it, it does what it says. Is it the greatest solution for all use cases in infrastructure? Of course not, nothing is. Do people misuse it? Of course too, we're all human.
Regardless of what tooling you use, we're all building houses of cards, and depending on the situation, try to hold down those cards as well as we can, balancing a ton of other needs and requirements.
reacharavindh 13 hours ago
Jev came in, and added that magic of "you dont need to train your classifier or determine the weights" if you dont want to, and just get the classified answer out. I think that's what is making people see this with a glitter in their eyes.
justincormack 12 hours ago
jsw97 12 hours ago
Just to be helpful if anyone is searching for layla, it's laya.
BoorishBears 13 hours ago
Like even 5 minutes of tinkering captures why this isn't anymore like BERT or any past classification model than ChatGPT is like those old Markov Chain generators, yet folks cannot shut up about how this is nothing new.
Absolutely scary and makes me wonder how much of the field is just people super confidently discrediting otherwise promising/interesting directions for development for a cheap dunk!
kingkongjaffa 12 hours ago
Why is Jev fundamentally better than classification models like BERT or traditional ML?
Happy to read a written response or if you suggest a prompt to put into my LLM to get it to research and explain the relevant details.
mlloyd 12 hours ago
I did the first part yesterday, jumped down the rabbit hole, and have 3 product ideas in my head now.
"Why is Jev fundamentally better than classification models like BERT or traditional ML?"
BoorishBears 2 hours ago
You're going to post-train 100s of instances of BERT? Traditional ML had world knowledge more than a fart?
The closest/fairest comparison is still an LLM, but no one has actually chucked enough compute at post-training to make a better Jev yet.
I'm sure in more time that'll happen, and so my excitement is expanded to Jev-like things... but so far most Jev like things are this weirdly reactionary attempts to steal thunder: is it so bad if we have some team actually invest in a quality post-training receipe to compete?
npn 7 hours ago
Or even llm if you claim about versatility. You can easily modify the llm inference code to make it predict a single token represent the classification choice and extract the probability that way.
Sure jev will still be faster, but a local deployed Bert model is way faster than both.
And to get the most out of it you still need to fine tune the models anyway, unless your classification task is just one of those mainstream ones.
BoorishBears 3 hours ago
And even if BERT wasn't woefully underintelligent for the task... have 100+ instances of BERT running locally faster than Jev API response times? Sweet rig you must have...
LLMs would not be fast enough without constrained decoding tricks that people fundamentally don't seem to understand make the models much dumber, and sure wouldn't be cheaper or faster.
Again I feel this deep discomfort because presumably you're somewhat intelligent but your opening salvo made it hard not to scream DO YOU EVEN HAVE A SINGLE CLUE WHAT IT DOES instead of giving you my actual answer... yet you're speaking from the chest! If I didn't try it for myself I would have been 100% sucked into you and this ocean of clueless negativity.
-
I apologize if that sounds harsh but it angers me because why should I have to deal with this kind of noise in an already insanely noisy environment? What do you gain from being cluelessly pessimistic?
And dwelling a but more I think it breaks one of my most used filters which was assuming people who know the "old world" of AI/ML are better at judging the "new world" full of hype and noise. Maybe my frustration is also just fear that things moved so quickly that the "old world" is becoming increasingly irrelevant. That'd be really disappointing.
npn 11 minutes ago
why the heck do you need 100+ instances of bert. do you even attempt to research about this before?
the laya paper show that you can do the similar stuff with jev using modern bert only: https://laya.convaiinnovations.com/
and even without the newer wave of applying llm techniques to the older bert models, even flan-t5 was trained for handling 1800+ tasks.
Oras 13 hours ago
cedws 11 hours ago
zenapollo 11 hours ago
llm_nerd 10 hours ago
Is it truly useful or accurate or beneficial? To be seen. But it's the idea that has everyone so captivated. An expert system that is an expert at most everything is a lot more useful than an expert system that is an expert at choosing a bar of soap, for instance.
apeci 10 hours ago
whazor 10 hours ago
Compared to traditional ML classification, Jev works without training, like a LLM.
googletron 10 hours ago
vintermann 8 hours ago
I think specialized models of all sorts, if it were possible to train them on equally much data, would outperform general models. In cases where we can have the data, like in self-play in games, they clearly do and have done so for a long time.
But it's a lot of effort to train specialized models. I think it's too early to tell if Jev delivers on its promises to give the best of both worlds, but if it doesn't, we'll have to make it work. It's just the right thing to try.
qudat 7 hours ago
LLMs can act as classifiers but they still have to generate text output in the form of a JSON object. This means they have to generate every single curly bracket, quote, command, etc. This turns out to be pretty expensive. On the other hand, Jev uses a different decision head so it doesn't generate text output at all, it outputs logits *only* for the choices provided. So it completely avoids the need to generate text at all, which means no malformed JSON and it's much faster as a result.
Finally, Jev also provides confidence scores that are actually reliable (not made up like LLMs).
nater5000 7 hours ago
I'm still trying to catch-up on the Jev stuff, but my understanding is that it's basically just a more efficient LLM when all you want is the LLM to produce a classification.
There's more to it, of course, but it's not just "generic" classification ML because it accepts arbitrary inputs and can produce probabilities over arbitrary classes. Not saying this is the first time people have done this, but typically classification tasks are more static and limited.
In the same vein, it's also not just an LLM with structured outputs (which have been a thing for a while) specifically because that is a very inefficient way to approach classification using this kind of architecture. Jev models are much more performant because of how limited they are compared to a full LLM.
So when you want an LLM, but you only really need this kind of classification from the LLM, then Jev makes a ton of sense. This makes sense for me, since I've definitely used LLMs for this kind of classification work and, even then, it kind of felt like using a jackhammer to place some nails, etc.
Happy to be correct, though.
dwedge 6 hours ago
Not normally one to point out a typo but this one made me smile
ryeights 3 hours ago
With such an approach you could even retain full reasoning capability
xrisk 3 hours ago
jasonjmcghee 6 hours ago
Now there's a new training-free thing that is fast enough to be useful on a new class of problem.
If you have a little data and can ask a frontier LLM to train a model, you can probably beat it on average for a specific task.
But... This is the case with LLMs too.
nullbio 14 hours ago
spockz 13 hours ago
Try constructing reusable components out of what you are doing instead of building everything up from basic building blocks. This also allows more concrete testing of individual parts and then if you want to change the look you can change it in one place and have it apply everywhere.
Agentic development doesn’t mean “throw all what we learned out of the window”, the same practices that helped speed up and improve quality of work of humans also helps agents. In fact, the multiplier is even bigger. You will notice it in development speed and reduced cost due to avoiding churn.
nullbio 10 hours ago
I've also built up a suite of linter rules to catch the same mistakes the model makes over and over. Still, there are a lot of gaps. I think it's mostly because my codebase is massive at this point. It was easy when the codebase was small and didn't require context gathering to make good decisions.
physicallyIllfr 9 hours ago
When comes to frontend work, the handmade UX designed by a professional will always outperform whats made by an llm.
Sure its 10x slower, but you'll get 20x more usere because it will obvious it was made with care (if done well, and you should learn to do it well). Its the same reason handmade clothing, watches and other luxery items speak to us more, sometimes its marketing but often times its the craft.
There's a reason why all the companies selling the idea that web dev is dead, like lovable, still hire designers with 50k retainers to do their landing pages.
nightpool 7 hours ago
spockz 7 hours ago
Then every time it tries to do so ask it why it didn’t use one of the ones from the list. Update the list with more ifthenusethis texts. Also negatives, if such then use y instead.
sim04ful 13 hours ago
nullbio 9 hours ago
aetherspawn 9 hours ago
ranyume 9 hours ago
--
The setup was a simple map with different rooms. Each room had 1-3 doors.
For the inputs: The AI had an array of "known places" empty at the start, the current position, the current doors with no information about where they lead to, and the list of past actions
The goal / task for the AI was to explore all rooms and save them to known places. The AI needed to decide if to move or save the place at every turn.
--
So I wasn't able to make the AI explore all of the rooms. The AI kinda always wanted to move to the first option when moving. Out of 6 rooms it was able to save 3. My hypothesis is that jev as it is now is really bad at making connections and understanding it's input. So for example, even if it had a list of previous actions, it wasn't able to reason about it and know where to go. For this to work I'd need to explicitly tell it where it did not go. So you could say that the model is also not good with uncertainty / ambiguous scenarios.
edit: one last thing is that i replaced jev with an standard llm and it finished the goal no problem with the same information given
edit 2: it also felt like the same tradeoffs between small model vs large model. With small models you need to be very conscious and careful with the input while large models are more forgiving. Maybe jev is a small model, and we just need a larger one.
merqurio 9 hours ago
That showed us the best results at least
mugul 14 hours ago
I understand the hype but I wonder: what are the use cases for this kind of model? Could it be used in the context of coding agents, or is it more relevant in totally different situations?
Havoc 14 hours ago
lucrbvi 14 hours ago
Edit: I want to add that you can see Jev like a smart if-statement.
saejox 14 hours ago
vidarh 14 hours ago
For coding agents it'd only be useful in a subset of situations. E.g. you could imagine using one to classify bash tool calls into safe and unsafe for example.
NitpickLawyer 14 hours ago
Yeah, it could. The most obvious usage would be to have local fast cheap "feedback" / "control" over a slower more expensive agent (i.e. cc / codex / opencode). Things like "goals" could now be split from a long prompt into "actions" and "verifiers". Where for each action you also produce a verifier. Then after each action you run the verifier w/ this kind of "universal classifier" and decide if the step was done correctly, if it needs follow-up and so on.
Example: implement auth in this repo -> llm_plan() -> for item in plan generate_verifier() -> for item in plan implement() ; verify() ; accept() / followup().
Verifiers could be something like this. take a plan item as input, generate classification questions that might verify the task "is this following project conventions?" | "is this touching files from other tasks?", etc.
You can do that with LLMs, but some things might become cheaper / faster. And you can pretty much use it to check against an ever growing list of conventions. Yours or project specific.
jeeeb 12 hours ago
The problem is that you want the model to carefully reason about the goal and code.
Zero shot classification with an approach like this isn’t going to do that. It’ll answer on first pass vibes.
altmanaltman 10 hours ago
Schlagbohrer 8 hours ago
Edit: The Flipper One is planning to have an LLM acceleration co-processor, and be able to host up to a 4GB VRAM size LLM. One use case they envision in their planning is using the microphone along with text to speech to be able to say, "Create an .ini file for this system with these specs" and the small LLM can do that on-device (its a handheld device) and then the user can use/send/upload that file.
Second Edit: I would love a mini LLM in KiCad or Altium that could take a component datasheet and produce a good footprint and schematic symbol for it.
yogthos 8 hours ago
jwr 14 hours ago
walrus01 14 hours ago
Mumps 11 hours ago
walrus01 5 hours ago
faangguyindia 14 hours ago
prompt_eval=244 ms wall=245 ms schema_cache=hit generated=0
Move limit reached after 200 moves: score=16, length=19.
So, if a 12B dense model can offer this latency on a local old PC, then definitely you can scale it up with more powerful machines and get even lower latency.
prometheus1992 7 hours ago
akkad33 14 hours ago
My understanding is: it takes text input and it does one shot classification (no training data)
crackalamoo 14 hours ago
As a corollary, the output classes can be any set, rather than needing to be set before training.
akkad33 13 hours ago
theodoretliu 13 hours ago
My guess would be option 1. Didn’t read the kev repo here which would also explain
andy12_ 12 hours ago
softmax(encode(input)*learned_weights)
You have
softmax(encode(input)*encode(categories))
I'm not sure if Jev does it this way, but it's how you get open-vocabulary zero-shot image classification with models like CLIP [1].
raahelb 14 hours ago
giuscri 14 hours ago
cedws 11 hours ago
algoth1 6 hours ago
k__ 8 hours ago
Is Jev a decoder (e.g., BERT) or is it some kind of encoder (e.g., GPT) that just happens to be trimmed down to only outputting a handful of tokens for the answers and their probability?
Alpha3031 8 hours ago
npn 8 hours ago
loclol101 5 hours ago
floatrock 4 hours ago
dunlin 14 hours ago
webprofusion 14 hours ago
webprofusion 14 hours ago
tacomagick 14 hours ago
Schlagbohrer 8 hours ago
raahelb 13 hours ago
raybb 7 hours ago
yunusabd 6 hours ago
andy12_ 12 hours ago
I have tried many of these open-source Jev-like models on some linguistic tasks and they are so bad compared to Jev.
Tostino 10 hours ago
The number of people working on this is crazy. Something will coalesce.
andy12_ 10 hours ago
Tostino 10 hours ago
Schlagbohrer 8 hours ago
monxer 13 hours ago
epsilonic 8 hours ago