<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jev &#8211; About Things | A Hans Scharler Blog</title>
	<atom:link href="https://nothans.com/tag/jev/feed" rel="self" type="application/rss+xml" />
	<link>https://nothans.com</link>
	<description>Life, Comedy, Games, Tech, Marketing, and Community</description>
	<lastBuildDate>Fri, 16 Oct 2026 16:51:37 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://i0.wp.com/nothans.com/wp-content/uploads/2023/02/cropped-settings.png?fit=32%2C32&#038;ssl=1</url>
	<title>Jev &#8211; About Things | A Hans Scharler Blog</title>
	<link>https://nothans.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">114568856</site>	<item>
		<title>TypeSafe Releases an Update to Jev: Jev 1.14 in Numbers</title>
		<link>https://nothans.com/typesafe-releases-an-update-to-jev-jev-1-14-in-numbers</link>
					<comments>https://nothans.com/typesafe-releases-an-update-to-jev-jev-1-14-in-numbers#respond</comments>
		
		<dc:creator><![CDATA[Hans Scharler]]></dc:creator>
		<pubDate>Fri, 16 Oct 2026 16:49:00 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[Jev]]></category>
		<category><![CDATA[TypeSafe]]></category>
		<guid isPermaLink="false">https://nothans.com/?p=5751</guid>

					<description><![CDATA[]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">A month ago <a href="https://nothans.com/my-name-is-jev-meet-the-new-type-of-ai-model">I wrote about Jev</a>, the AI model that never writes a sentence. You hand it some state and a few typed questions, and it hands back yes/no probabilities, picks, and scores. TypeSafe launched it on September 15 with a $40 million seed.</p>



<p class="wp-block-paragraph">On October 9 they raised an $870 million Series A at a $7.5 billion valuation, led by a16z with Sequoia and DCVC. That was 24 days after launch. Twenty-four days.</p>



<p class="wp-block-paragraph">On October 14 they shipped Jev 1.14: pictures, a new Box answer type that finds things in an image, and long context up to 262,000 tokens.</p>



<p class="wp-block-paragraph">I spent the day after it shipped throwing it at my own notes, a phone photo of a circuit board, and 88 illustrations from a 1919 edition of Aesop. I also ran it against the other decision models, because in one month Jev went from the first of its kind to one of eight models on the same OpenRouter endpoint.</p>



<h2 id="jev-got-company-fast" class="wp-block-heading">Jev got company, fast</h2>



<p class="wp-block-paragraph">Jev named the category. It didn&#8217;t stay alone in it for long.</p>



<ul class="wp-block-list">
<li><strong>September 30:</strong> Inception&#8217;s Mercury Decide shows up on OpenRouter at $0.02 per million input tokens.</li>



<li><strong>October 1:</strong> Perplexity open-sources a 27-billion-parameter decider under Apache 2.0, and ships v1.1 five days later.</li>



<li><strong>Early October:</strong> Cloudflare ships Clef and Clef Flash, Amazon ships Strands Decider, Databricks ships <code>ai_decide</code>.</li>



<li><strong>October 6:</strong> OpenAI opens its Decisions API on GPT-6 Luna to every developer.</li>



<li><strong>October 9:</strong> Microsoft ships Microsoft-Decision-1, the same day as TypeSafe&#8217;s Series A.</li>
</ul>



<p class="wp-block-paragraph">On September 23 I logged a call that one of OpenAI, Anthropic, or Google would ship a typed-decision endpoint before March 31, 2027. OpenAI did it 13 days later. I&#8217;ll take the win, even if I set the bar a little low.</p>



<p class="wp-block-paragraph">So for 1.14 I wanted more than a list of what&#8217;s new. I wanted to know how Jev stacks up now, and I had a way to find out.</p>



<h2 id="eight-decision-models-one-notebook" class="wp-block-heading">Eight decision models, one notebook</h2>



<p class="wp-block-paragraph"><a href="https://github.com/nothans/sieve">Sieve</a> is my open-source tool for asking questions of a folder of notes with Jev. It has an <code>eval</code> command that measures accuracy against labels I already have. My research notebook has 240 insights, predictions, and trend signals that I filed into six topics by hand, so that&#8217;s the test: strip the topic tags, ask &#8220;which topic is this mainly about?&#8221;, and count.</p>



<p class="wp-block-paragraph">OpenRouter now serves eight decision models from five companies behind one endpoint with one request shape (two of the eight are Jev 1.13 and 1.14). I added a backend profile for each and ran the same eval on all of them.</p>



<p class="wp-block-paragraph">The first table looked like a clean Jev win on speed and a muddle on accuracy. Then I noticed I had stacked the deck.</p>



<p class="wp-block-paragraph">Sieve packs 16 notes into one request by default, because it&#8217;s cheaper and faster. I had run Jev that way, and also one note per request. Jev scored 78.8% packed and 72.9% one at a time. Every other model I had only run one at a time. Not a fair fight.</p>



<p class="wp-block-paragraph">So I reran Perplexity, OpenAI&#8217;s Luna, Inception&#8217;s Mercury, and Clef Omni at 16 per request. Cloudflare&#8217;s Clef and Clef Flash stayed at one, because OpenRouter&#8217;s docs say they only read about the first 2,000 tokens of text, and 16 notes would get cut off.</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Model</th><th>Notes per request</th><th>Accuracy</th><th>Cost (240 notes)</th><th>Time</th></tr></thead><tbody><tr><td>Perplexity Decider 1.1</td><td>16</td><td>85.0%</td><td>$0.0366</td><td>14.9 s</td></tr><tr><td>Inception Mercury Decide</td><td>16</td><td>82.5%</td><td>$0.0038</td><td>4.3 s</td></tr><tr><td>Jev 1.13</td><td>16</td><td>78.8%</td><td>$0.0084</td><td>0.6 s</td></tr><tr><td>Cloudflare Clef</td><td>1</td><td>78.8%</td><td>$0.0125</td><td>11.3 s</td></tr><tr><td>Jev 1.14</td><td>16</td><td>77.9%</td><td>$0.0084</td><td>1.0 s</td></tr><tr><td>OpenAI GPT-6 Luna Decisions</td><td>16</td><td>75.8%</td><td>$0.0011</td><td>5.6 s</td></tr><tr><td>Cloudflare Clef Omni</td><td>16</td><td>75.8%</td><td>$0.0291</td><td>2.1 s</td></tr><tr><td>Cloudflare Clef Flash</td><td>1</td><td>72.1%</td><td>$0.0045</td><td>9.1 s</td></tr></tbody></table></figure>



<figure class="wp-block-image size-large"><img data-recalc-dims="1" fetchpriority="high" decoding="async" width="750" height="500" data-attachment-id="5754" data-permalink="https://nothans.com/jev-1-14-models" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-models.png?fit=1500%2C1000&amp;ssl=1" data-orig-size="1500,1000" data-comments-opened="0" data-image-title="jev-1-14-models" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-models.png?fit=750%2C500&amp;ssl=1" src="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-models.png?resize=750%2C500&#038;ssl=1" alt="Accuracy against time for eight decision models on 240 hand-labeled notes: Perplexity highest at 85.0% and slowest, Jev 1.13 and 1.14 fastest at 78.8% and 77.9%" class="wp-image-5754" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-models.png?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-models.png?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-models.png?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-models.png?resize=750%2C500&amp;ssl=1 750w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-models.png?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-models.png?resize=1320%2C880&amp;ssl=1 1320w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-models.png?w=1500&amp;ssl=1 1500w" sizes="(max-width: 750px) 100vw, 750px" /></figure>



<p class="wp-block-paragraph">With 240 notes, any single accuracy is good to about five points either way. So I compared models note by note instead, with a paired test on the same 240.</p>



<p class="wp-block-paragraph"><strong>Perplexity&#8217;s decider is more accurate on my notes.</strong> It got 22 notes right that Jev 1.13 missed, and Jev got 7 right that Perplexity missed (p = 0.008). It&#8217;s also better calibrated for acting on. If I want 90% accuracy, Perplexity lets me act on 85% of my notes at its threshold, and Jev about half.</p>



<p class="wp-block-paragraph"><strong>Jev is the fastest by a wide margin.</strong> 0.6 seconds for all 240 (1.0 on 1.14), against 2 to 15 seconds for the rest. For anything inside a loop, that matters more than a few points.</p>



<p class="wp-block-paragraph"><strong>Mercury leaned ahead of Jev but not by enough to call it</strong> (16 to 7, p = 0.09). Clef tied Jev exactly (13 to 13), even though Cloudflare says Clef leads seven of ten decision benchmarks.</p>



<p class="wp-block-paragraph">Two oddities. Perplexity&#8217;s cost went up about ten times when packed ($0.0038 one at a time, $0.0366 packed), as if each question is billed against the whole request. And Luna billed nothing one at a time and a tenth of a cent packed, which I read as a launch promotion.</p>



<p class="wp-block-paragraph">One labeled set is one labeled set, and this was one of ten comparisons, so even p = 0.008 is borderline once you correct for that. I&#8217;d want a second set before calling Perplexity the better model in general. On my notes, today, it is.</p>



<h2 id="what-114-changed-and-what-it-didnt" class="wp-block-heading">What 1.14 changed, and what it didn&#8217;t</h2>



<p class="wp-block-paragraph">On English routing, 1.14 is 1.13. They gave the same answer on 228 of 240 notes (p = 0.75). TypeSafe said the biggest gain would be multilingual, and my notes are all English, so I didn&#8217;t test the part they said improved most.</p>



<p class="wp-block-paragraph">Packing helped both versions. 16 per request beat one per request (p = 0.013 on 1.13, 0.004 on 1.14).</p>



<p class="wp-block-paragraph">That one surprised me, because OpenRouter quietly runs any request over about 32,000 bytes in TypeSafe&#8217;s long-context mode, which the docs call slower and less accurate. At 16 notes per request, 95% of Sieve&#8217;s requests on my notebook cross that line. Accuracy held anyway. 16 per request even edged out 8, which stays under the line, though not by enough to call it (p = 0.06 on 1.13, 0.09 on 1.14). My guess is that seeing the neighboring notes gives Jev some context for &#8220;mainly about.&#8221;</p>



<h2 id="long-context-is-the-real-upgrade" class="wp-block-heading">Long context is the real upgrade</h2>



<p class="wp-block-paragraph">This is where 1.14 earns the version number.</p>



<p class="wp-block-paragraph">I took up to 522 of my own voice briefs and news notes, about 210,000 tokens, and planted one sentence that contradicts a note. The first plant was off topic (a hardware note about a microphone interrupt pin, sitting among AI news). I put it at 10%, 50%, and 90% of the pile, and kept a copy with no planted sentence as a control. Then I asked one question: does anything in here contradict this note?</p>



<p class="wp-block-paragraph">Both versions found the sentence at every size and depth. The difference showed up at the far end. At 210,000 tokens, 1.13 dropped to 0.63 and 0.65 when the sentence sat in the middle or near the end. 1.14 held at 0.81 and 0.87.</p>



<figure class="wp-block-image size-large"><img data-recalc-dims="1" decoding="async" width="750" height="500" data-attachment-id="5753" data-permalink="https://nothans.com/jev-1-14-long-context" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-long-context.png?fit=1500%2C1000&amp;ssl=1" data-orig-size="1500,1000" data-comments-opened="0" data-image-title="jev-1-14-long-context" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-long-context.png?fit=750%2C500&amp;ssl=1" src="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-long-context.png?resize=750%2C500&#038;ssl=1" alt="" class="wp-image-5753" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-long-context.png?resize=1024%2C683&amp;ssl=1 1024w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-long-context.png?resize=300%2C200&amp;ssl=1 300w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-long-context.png?resize=768%2C512&amp;ssl=1 768w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-long-context.png?resize=750%2C500&amp;ssl=1 750w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-long-context.png?resize=420%2C280&amp;ssl=1 420w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-long-context.png?resize=1320%2C880&amp;ssl=1 1320w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/jev-1-14-long-context.png?w=1500&amp;ssl=1 1500w" sizes="(max-width: 750px) 100vw, 750px" /></figure>



<p class="wp-block-paragraph">One trade-off showed up when I planted a sentence on a topic the notes also cover (a claim about Jev, among news about Jev). 1.14&#8217;s control scores crept up with size, from 0.13 to 0.27, while 1.13&#8217;s stayed near 0.10. Both still separated cleanly, but a threshold tuned on a short notebook needs a second look on a long one.</p>



<p class="wp-block-paragraph">A 210,000-token request took 1 to 4 seconds and cost under a penny.</p>



<h2 id="pictures-work-with-three-surprises" class="wp-block-heading">Pictures work, with three surprises</h2>



<p class="wp-block-paragraph">Jev 1.14 reads images. TypeSafe labels this &#8220;Dreamer-ready,&#8221; meaning good for prototypes, not production. That label turned out to be fair.</p>



<p class="wp-block-paragraph"><strong>Surprise one: the format.</strong> TypeSafe&#8217;s docs send images in an <code>assets</code> map. Through OpenRouter, that gets silently dropped. My first test sent a 1.7 MB photo, billed 395 tokens, and got answers that were clearly guesses. OpenRouter wants the image inside the state as an <code>image_url</code> part, the same shape chat models use. Sent that way, the same photo billed 2,408 tokens, and Jev called it a round circuit board at 0.96 and picked &#8220;a ring of LEDs&#8221; around the edge at 0.99.</p>



<p class="wp-block-paragraph"><strong>Surprise two: the size limit is wrong.</strong> The docs say each side must be 256 to 1,568 pixels. Every image I sent with a side between 256 and 279 came back &#8220;Invalid image dimensions.&#8221; 280 worked. And one bad image fails the whole request, so a single small picture took down a batch of 16.</p>



<p class="wp-block-paragraph"><strong>Surprise three: pictures bleed into each other.</strong> I asked all 313 fables &#8220;does the picture show a bird?&#8221; &#8220;The Boy and the Filberts&#8221; has no picture and no bird, and it scored 0.94. It had shared a request with &#8220;The Frogs Asking for a King,&#8221; whose picture shows a stork eating frogs. With eight pictures in one request, Jev mixed up which picture went with which fable. At one picture per request, none of the 172 fables with no picture and no bird scored above 0.3. That costs about 15% more, and it&#8217;s now how Sieve packs pictures.</p>



<h2 id="box-finds-the-fox-then-finds-it-again" class="wp-block-heading">Box finds the fox, then finds it again</h2>



<p class="wp-block-paragraph">Box is the new answer type: &#8220;where is the coffee mug in this photo?&#8221; comes back as four edges.</p>



<p class="wp-block-paragraph">On a phone photo of a circuit board, it nailed three targets on the first try: the logo, the main chip, and the red square in the middle.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img data-recalc-dims="1" decoding="async" width="748" height="993" data-attachment-id="5758" data-permalink="https://nothans.com/box-check-matrix-board" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/box-check-matrix-board.jpg?fit=748%2C993&amp;ssl=1" data-orig-size="748,993" data-comments-opened="0" data-image-title="box-check-matrix-board" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/box-check-matrix-board.jpg?fit=748%2C993&amp;ssl=1" src="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/box-check-matrix-board.jpg?resize=748%2C993&#038;ssl=1" alt="Three Box answers drawn on a photo of a MATRIX Creator board: the MATRIX logo, the Atmel chip, and the red square, each boxed correctly" class="wp-image-5758" style="aspect-ratio:0.7532735030160365;width:491px;height:auto" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/box-check-matrix-board.jpg?w=748&amp;ssl=1 748w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/box-check-matrix-board.jpg?resize=226%2C300&amp;ssl=1 226w" sizes="(max-width: 748px) 100vw, 748px" /></figure>
</div>


<p class="wp-block-paragraph">On illustrations it was looser. I asked for &#8220;a fox&#8221; in all 88 illustrated fables. The yes/no part was excellent: 15 pictures at 0.95 or higher, then a gap to 0.27. The boxes contained the fox 13 times out of 14, but often took half the picture along for the ride.</p>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img data-recalc-dims="1" loading="lazy" decoding="async" width="750" height="450" data-attachment-id="5755" data-permalink="https://nothans.com/fox-boxes-pass1" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-pass1.jpg?fit=1500%2C900&amp;ssl=1" data-orig-size="1500,900" data-comments-opened="0" data-image-title="fox-boxes-pass1" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-pass1.jpg?fit=750%2C450&amp;ssl=1" src="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-pass1.jpg?resize=750%2C450&#038;ssl=1" alt="First-look Box answers on 14 fox illustrations: most contain the fox, many take in half the picture" class="wp-image-5755" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-pass1.jpg?resize=1024%2C614&amp;ssl=1 1024w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-pass1.jpg?resize=300%2C180&amp;ssl=1 300w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-pass1.jpg?resize=768%2C461&amp;ssl=1 768w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-pass1.jpg?resize=750%2C450&amp;ssl=1 750w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-pass1.jpg?resize=1320%2C792&amp;ssl=1 1320w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-pass1.jpg?w=1500&amp;ssl=1 1500w" sizes="auto, (max-width: 750px) 100vw, 750px" /></figure>
</div>


<p class="wp-block-paragraph">TypeSafe&#8217;s Box page suggests a fix, so I tried it. Crop to the first box with a margin, scale the crop up, and ask again on the crop. Then 15 of 15 framed the fox, about 13 of them tightly, including a small fox at the bottom of a well that the first look had turned into a sliver.</p>



<figure class="wp-block-image size-large"><img data-recalc-dims="1" loading="lazy" decoding="async" width="750" height="450" data-attachment-id="5761" data-permalink="https://nothans.com/fox-boxes-two-pass" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-two-pass.jpg?fit=1500%2C900&amp;ssl=1" data-orig-size="1500,900" data-comments-opened="0" data-image-title="fox-boxes-two-pass" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-two-pass.jpg?fit=750%2C450&amp;ssl=1" src="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-two-pass.jpg?resize=750%2C450&#038;ssl=1" alt="Yellow: the first box. Cyan: the second box, asked on a crop. The second look is tight on almost every fox." class="wp-image-5761" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-two-pass.jpg?resize=1024%2C614&amp;ssl=1 1024w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-two-pass.jpg?resize=300%2C180&amp;ssl=1 300w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-two-pass.jpg?resize=768%2C461&amp;ssl=1 768w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-two-pass.jpg?resize=750%2C450&amp;ssl=1 750w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-two-pass.jpg?resize=1320%2C792&amp;ssl=1 1320w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/10/fox-boxes-two-pass.jpg?w=1500&amp;ssl=1 1500w" sizes="auto, (max-width: 750px) 100vw, 750px" /></figure>



<p class="wp-block-paragraph">The confidence numbers told the same story. On the first look they ran 0.05 to 0.26, even on good boxes. On the second look, 0.35 to 0.80, highest on the tightest ones. The second look cost about three thousandths of a cent per picture.</p>



<h2 id="two-editions-of-aesop-matched-by-story" class="wp-block-heading">Two editions of Aesop, matched by story</h2>



<p class="wp-block-paragraph">The fables in Sieve&#8217;s demo are George Fyler Townsend&#8217;s 1867 translation. The pictures come from <em>The Aesop for Children</em>, illustrated by Milo Winter in 1919. Different edition, different titles, different retellings.</p>



<p class="wp-block-paragraph">So I had Jev match them by story instead of title. On the 53 fables whose titles match exactly in both books, it picked the right one 53 times. It also matched &#8220;Belling the Cat&#8221; to &#8220;The Mice in Council,&#8221; and &#8220;The Fox and the Stork&#8221; to &#8220;The Fox and the Crane,&#8221; where the titles don&#8217;t agree.</p>



<p class="wp-block-paragraph">Then I flipped it around and asked which pictures disagree with their own text. The top answers were all real. &#8220;The Hen and the Golden Eggs&#8221; scored 0.98, because Milo Winter drew a goose. &#8220;The Two Travelers and the Axe&#8221; scored 0.93, because his travelers find a purse.</p>



<h2 id="whats-new-in-sieve" class="wp-block-heading">What&#8217;s new in Sieve</h2>



<p class="wp-block-paragraph">All of this went into Sieve as I tested it.</p>



<ul class="wp-block-list">
<li><strong>Pictures as notes.</strong> A folder of PNGs and JPEGs becomes a set of notes, and a Markdown note brings along the picture it links, alt text included.</li>



<li><strong>Find.</strong> <code>sieve find "the fox"</code> asks every picture whether it is there and where, and <code>--refine</code> takes the second look on a crop.</li>



<li><strong>Against.</strong> <code>sieve against "&lt;note&gt;"</code> asks whether anything else in the folder contradicts one note, in one request per 250 notes. My whole 1,407-note notebook took 6 requests, 1.9 seconds, and under three cents.</li>



<li><strong>Any decision model.</strong> Backend profiles for Perplexity, Cloudflare, OpenAI, and Inception, and <code>eval --items</code> so you can compare two models note by note.</li>



<li><strong>Safe image handling.</strong> Size checks before anything is sent, automatic resizing with ffmpeg, and one picture per request.</li>



<li><strong>The illustrated fables.</strong> One command fetches Milo Winter&#8217;s public-domain illustrations from Project Gutenberg and matches them to the fables.</li>



<li><strong>Pictures in the web UI</strong>, with Find in picture drawing the box on the illustration.</li>
</ul>



<h2 id="what-id-watch-next" class="wp-block-heading">What I&#8217;d watch next</h2>



<p class="wp-block-paragraph">Jev started a category, and a month later it&#8217;s not the most accurate model in it (at least on my notes). It&#8217;s still the fastest, still cheap, and 1.14&#8217;s long context is a real step.</p>



<p class="wp-block-paragraph">What I&#8217;d watch is which wrapper wins. When the decision itself is available from five companies on one endpoint, at fractions of a cent per run, the value moves to the part that tells you which one is right for your notes, and that part only you can run.</p>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" class="youtube-player" width="750" height="422" src="https://www.youtube.com/embed/sqgqDsA_tkY?version=3&#038;rel=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;fs=1&#038;hl=en-US&#038;autohide=2&#038;wmode=transparent" allowfullscreen="true" style="border:0;" sandbox="allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox"></iframe>
</div></figure>
]]></content:encoded>
					
					<wfw:commentRss>https://nothans.com/typesafe-releases-an-update-to-jev-jev-1-14-in-numbers/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">5751</post-id>	</item>
		<item>
		<title>My Name is Jev: Meet the New Type of AI Model</title>
		<link>https://nothans.com/my-name-is-jev-meet-the-new-type-of-ai-model</link>
					<comments>https://nothans.com/my-name-is-jev-meet-the-new-type-of-ai-model#respond</comments>
		
		<dc:creator><![CDATA[Hans Scharler]]></dc:creator>
		<pubDate>Thu, 24 Sep 2026 11:53:07 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[classifier]]></category>
		<category><![CDATA[Jev]]></category>
		<guid isPermaLink="false">https://nothans.com/?p=5717</guid>

					<description><![CDATA[]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">This week I asked an AI model 1,140 questions. It answered all of them in 2.3 seconds. The bill was two and a half cents.</p>



<p class="wp-block-paragraph">It did not write a single word back.</p>



<p class="wp-block-paragraph">That&#8217;s Jev, and I think it&#8217;s one of the more interesting models to show up this year.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><img data-recalc-dims="1" loading="lazy" decoding="async" width="512" height="512" data-attachment-id="5718" data-permalink="https://nothans.com/my-name-is-jev-meet-the-new-type-of-ai-model/image-150" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/image-1.png?fit=512%2C512&amp;ssl=1" data-orig-size="512,512" data-comments-opened="0" data-image-title="image" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/image-1.png?fit=512%2C512&amp;ssl=1" src="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/image-1.png?resize=512%2C512&#038;ssl=1" alt="A &quot;My name is Jeff&quot; meme that reads &quot;My name is Jev&quot;" class="wp-image-5718" style="width:402px;height:auto" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/image-1.png?w=512&amp;ssl=1 512w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/image-1.png?resize=150%2C150&amp;ssl=1 150w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/image-1.png?resize=500%2C500&amp;ssl=1 500w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/image-1.png?resize=300%2C300&amp;ssl=1 300w" sizes="auto, (max-width: 512px) 100vw, 512px" /></figure>
</div>


<p class="wp-block-paragraph">Yes, I made the meme. Jev couldn&#8217;t say that line if it tried. You&#8217;d have to ask it a yes/no question.</p>



<h2 id="what-jev-is" class="wp-block-heading">What Jev is</h2>



<p class="wp-block-paragraph">Jev comes from TypeSafe, a San Francisco lab that came out of stealth on September 15. OpenRouter added it three days later as <code>typesafe/jev-1.13</code>, so if you have an OpenRouter key, you already have Jev.</p>



<p class="wp-block-paragraph">Every frontier lab has spent the last two years teaching models to think longer. TypeSafe went the other way. Jev reads whatever you hand it and answers one of three kinds of question, using only the options you give it.</p>



<ul class="wp-block-list">
<li><strong>Noul:</strong> yes or no, as a probability.</li>



<li><strong>Choice:</strong> pick one of up to 255 options you describe.</li>



<li><strong>Score:</strong> place it on a scale you define, &#8220;Can wait&#8221; to &#8220;Blocking revenue right now.&#8221;</li>
</ul>



<p class="wp-block-paragraph">Every answer comes back with probabilities. No prose to parse, no JSON that&#8217;s almost JSON, no invented option. It&#8217;s an if-statement that understands English.</p>



<p class="wp-block-paragraph">It&#8217;s also cheap: $0.042 per million input tokens, and output is free. My first call, three questions about one support ticket, came back in 0.6 seconds and cost $0.000017.</p>



<h2 id="where-it-fits" class="wp-block-heading">Where it fits</h2>



<p class="wp-block-paragraph">Most decisions inside software aren&#8217;t essays. They&#8217;re &#8220;which team gets this ticket,&#8221; &#8220;is this safe to run,&#8221; &#8220;is this spam,&#8221; &#8220;which of these 40 things matters.&#8221; We&#8217;ve been paying a chatbot to write a paragraph so we could regex one word out of it.</p>



<ul class="wp-block-list">
<li><strong>Routing and triage.</strong> Tickets, emails, alerts, pull requests. Pick the queue, score the urgency.</li>



<li><strong>Gating agents.</strong> Before an agent issues a refund or runs a command, ask three yes/no questions. At 0.9 or higher, go. At 0.1 or lower, stop. In between, a human looks. OpenRouter published exactly this recipe.</li>



<li><strong>Checking an LLM&#8217;s homework.</strong> Did the answer stick to the source, or make something up? Ship the supported ones, escalate the rest.</li>



<li><strong>Sorting big piles.</strong> Thousands of documents, one question each, ranked by probability.</li>



<li><strong>Picking instead of writing.</strong> Pull the candidate dates or amounts out with a regex, then let Jev choose the right one.</li>
</ul>



<p class="wp-block-paragraph">The probabilities are the part I didn&#8217;t expect to love. When the model is unsure, it says so, and you fix things by moving a threshold, not rewriting a prompt.</p>



<h2 id="what-i-built-with-it" class="wp-block-heading">What I built with it</h2>



<p class="wp-block-paragraph">My research repo has 1,140 items in it: voice briefs, news digests, insights, bets, trend signals, blog drafts. I built a thing called Sieve that asks Jev the same question about every one of them and ranks the answers. &#8220;Talk-ready.&#8221; &#8220;Evidence against my community thesis.&#8221; &#8220;Feeds chapter two of the book.&#8221; &#8220;A hands-on build that could be demoed live at a developer meetup.&#8221; (My CABLE 82 talk came back first, at 95%. Correct.)</p>



<figure class="wp-block-image size-large"><img data-recalc-dims="1" loading="lazy" decoding="async" width="750" height="538" data-attachment-id="5722" data-permalink="https://nothans.com/sieve-ask" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-ask.png?fit=1200%2C860&amp;ssl=1" data-orig-size="1200,860" data-comments-opened="0" data-image-title="sieve-ask" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-ask.png?fit=750%2C538&amp;ssl=1" src="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-ask.png?resize=750%2C538&#038;ssl=1" alt="" class="wp-image-5722" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-ask.png?resize=1024%2C734&amp;ssl=1 1024w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-ask.png?resize=300%2C215&amp;ssl=1 300w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-ask.png?resize=768%2C550&amp;ssl=1 768w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-ask.png?resize=750%2C538&amp;ssl=1 750w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-ask.png?w=1200&amp;ssl=1 1200w" sizes="auto, (max-width: 750px) 100vw, 750px" /></figure>



<p class="wp-block-paragraph">Then I checked it against my own filing. I&#8217;d already sorted every insight and trend signal into swimlanes by hand, so I stripped the labels and asked Jev to do it. Overall it agreed with me about 8 times in 10. When it said it was confident, 9 times in 10. When it was unsure, it was close to a coin flip, and it told me so.</p>



<h2 id="sieve-is-open-source" class="wp-block-heading">Sieve is open source</h2>



<p class="wp-block-paragraph">I split Sieve into the engine and my stuff, and put the engine on GitHub: <a href="https://github.com/nothans/sieve">github.com/nothans/sieve</a>. MIT licensed, just Node, no dependencies. Point it at any folder of Markdown, describe what counts as an item and which questions you care about in one config file, and it sifts the whole pile from the command line or a little web UI. My research notes and my config stay on my machine.</p>



<p class="wp-block-paragraph">It ships with two demos: a made-up research notebook, and all 313 of Aesop&#8217;s fables. Ask the fables for &#8220;a trick that backfires on the trickster&#8221; and it reads every one of them in 1.4 seconds for about a third of a cent.</p>



<figure class="wp-block-image size-large"><img data-recalc-dims="1" loading="lazy" decoding="async" width="750" height="538" data-attachment-id="5721" data-permalink="https://nothans.com/sieve-aesop-moral" data-orig-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-aesop-moral.png?fit=1200%2C860&amp;ssl=1" data-orig-size="1200,860" data-comments-opened="0" data-image-title="sieve-aesop-moral" data-image-description="" data-image-caption="" data-large-file="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-aesop-moral.png?fit=750%2C538&amp;ssl=1" src="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-aesop-moral.png?resize=750%2C538&#038;ssl=1" alt="" class="wp-image-5721" srcset="https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-aesop-moral.png?resize=1024%2C734&amp;ssl=1 1024w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-aesop-moral.png?resize=300%2C215&amp;ssl=1 300w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-aesop-moral.png?resize=768%2C550&amp;ssl=1 768w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-aesop-moral.png?resize=750%2C538&amp;ssl=1 750w, https://i0.wp.com/nothans.com/wp-content/uploads/2026/09/sieve-aesop-moral.png?w=1200&amp;ssl=1 1200w" sizes="auto, (max-width: 750px) 100vw, 750px" /></figure>



<p class="wp-block-paragraph">The Moral preset files every fable under its moral. The Dog and the Shadow came back 100% greed, which seems fair to the dog.</p>



<p class="wp-block-paragraph">The repo also carries the Jev command-line tool on its own, so any script or agent can grab a typed answer when it needs one.</p>



<h2 id="what-tripped-me-up" class="wp-block-heading">What tripped me up</h2>



<p class="wp-block-paragraph">Jev reads literally. Really literally. &#8220;Projects I could demo live on stage&#8221; ranked a Google product launch first, because Jev has no idea who &#8220;I&#8221; is. &#8220;Is this evidence against my thesis&#8221; came back as a shrug on everything. Asking for the concrete thing instead (&#8220;does this report a community that did fine without human trust?&#8221;) fixed it. TypeSafe documents all of this: no math, no counting, no date comparisons, and adversarial text can push it around. It also can&#8217;t tell you <em>why</em>, so you get a number and no reason.</p>



<p class="wp-block-paragraph">The idea is already loose, too. Six open-source clones showed up within about 48 hours, at least one of them running on a single gaming GPU. What got copied is the shape: state in, typed questions in, probabilities out. I think that shape sticks around, whoever ends up serving it.</p>



<h2 id="creative-uses-i-want-to-try" class="wp-block-heading">Creative uses I want to try</h2>



<ul class="wp-block-list">
<li><strong>Board game bots.</strong> A playtest bot that picks its move from the legal moves, with a persona written in the question.</li>



<li><strong>A notification bouncer.</strong> One yes/no before anything pings my phone: &#8220;Is this urgent enough to interrupt someone at dinner?&#8221; (Not &#8220;would I want this.&#8221; Jev doesn&#8217;t know who I am.)</li>



<li><strong>CABLE 82 tonight.</strong> Score every headline on &#8220;cozy Friday night viewing&#8221; and let the 1982 cable channel build its own lineup.</li>



<li><strong>Moderation with the thresholds in public.</strong> Every post gets the same small set of typed judgments, and members can see, and vote on, the numbers that decide what happens.</li>



<li><strong>A code review tripwire.</strong> &#8220;Does this diff touch authentication or payments?&#8221; before an agent is allowed to merge.</li>



<li><strong>Alt text that checks itself.</strong> Does this description actually say what the chart shows?</li>



<li><strong>Spreadsheet columns that think.</strong> Add a column called &#8220;urgency,&#8221; type what it means, fill 300 rows in seconds.</li>



<li><strong>Training its own replacement.</strong> Label a big pile of examples with Jev, then train a tiny local model on the labels.</li>
</ul>



<p class="wp-block-paragraph">It&#8217;s the first AI model I&#8217;ve met that&#8217;s better at listening than talking.</p>



<p class="wp-block-paragraph">I know a few people like that. Not many.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://nothans.com/my-name-is-jev-meet-the-new-type-of-ai-model/feed</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">5717</post-id>	</item>
	</channel>
</rss>
