Playing around with Jev
a not so serious eval
TLDR
Everybody is excited about Jev and i just got access to it so i thought it’d be fun to play around with things it’s probably not intended to be the best at.
i’m not claiming this to be a serious eval, and watchful eyes will find some nitpicks and things to complain about, so i just put together a bunch of questions that came to my mind late at night and had Jev run through each one N=50 times.
What is Jev
Jev IMHO sits right in the middle between LLM (too slow and relatively expensive), and training your own specialized classifier (relatively expensive and takes time to train / collect data etc.). i kinda treat it as a classifier on steroids - with primitives for binary (noul), multiclass (choice), and continuous (score).
In any case, the thing that makes it fun to poke at is that you don’t get text back, you get a distribution over the options you handed it. So i can ask the same question 50 times and actually watch which parts move and which parts don’t.
The setup
Each benchmark is a question and a list of options (choice) or true/false (noul). i send the identical request 50 times, record the whole distribution, and then look at the spread. The rest of the parameters were set to default. Running the Python SDK against jev-1.13.0, 3200 calls in total. i also kept the very first one-shot answer for each question, from before i started repeating them. 6 of the 64 came out more than 2 standard deviations off the 50-run mean, which is basically why i stopped trusting single runs.
Here’s the list of all of them below. i put some of my comments in there, take them with a grain of salt. The checkmarks and x’s are my own scoring and a few of them are arguable, which i’ve said on the cards where it matters. For the noul ones i’m calling anything above 0.5 a yes.
showing all 64 benchmarks
- strawberry8
- implications and vacuous truth10
- transitivity2
- digits of pi4
- variable binding4
- functions and derivatives4
- divisibility by 33
- primes and label indirection4
- cardinality3
- irrationality4
- rings and ideals5
- topology2
- Jev on Jev5
- philosophy6
A few that stuck out
i’m not drawing conclusions from any of this, these are just the ones i kept going back to. The ids are searchable in the box above if you want to pull one up.
-
b61andb62. It says “there are 2 r’s in the word strawberry” is true on all 50 runs, and it says “there are 3 r’s” is true on all 50 runs, and those two can’t both hold. Thenb64asks for both at once and it comes back false, also on all 50. So each predicate on its own gets a yes and the conjunction gets a no. -
b44andb46are the same question with the options typed differently. With the ASCII stand-ins it won’t settle,Non 34 runs andotheron 16. Write the options properly asωandℵ₀and it picksℵ₀on all 50, with confidence going from 0.315 to 0.982. That is a lot of movement for a change of characters, though it can probably be explained. -
b31next tob15. The 25th digit of pi comes back at 0.033 confidence, the lowest anywhere in the set, and it still picks the same digit on 49 of 50 runs. The next digit after 3.1415 comes back at 0.584, much higher, and flips 7 times out of 50. So it being unsure doesn’t really tell you the answer is going to move around. -
The primes block,
b57throughb60. Counting them works,4on all 50 runs. Ask for the same count as a letter from a to h and it saysaon all 50, which is just wrong. Give ita1througha6and it outputs correctly, but perhaps because they’re numbered. Then inb60, where i write out a = 7, b = 4, c = 5, d = 3, the correct labelbis last of the four at 0.154, behind every distractor. -
b41is the one i set out to trick, by leaving “continuous” out of the compact to Hausdorff bijection. It answers homeomorphism on all 50 runs at 0.998, which is about the top of the range for this set. It doesn’t waver at all on a question where none of the options is right. -
The implications. Everything with a false antecedent,
b07throughb11, comes back true on all 50 runs, which is correct and pretty solid. The controls with a true antecedent are the ones that wobble:b28andb29sit around 0.41 to 0.45 and cross the line on 2 runs out of 50.