By Thorsten Meyer | October 15, 2026 | ThorstenMeyerAI.com
Get business pricing on tech for your team
- Business-only prices and quantity discounts
- Tax-exempt purchasing
- Multiple users, one account, clear invoices
TypeSafe’s decision model now accepts images and can draw a bounding box. Both features sit behind a “danger zone” header. I ran them against this site’s own featured images the day after release. It was cheap and fast, and the results were more honest about my images than I expected.
Jev is the model that can’t write a sentence. I covered it in September as the start of “System One” AI and followed with 24 ways to use it. You give it a state and a set of typed questions. It answers yes/no as a probability, picks from a list, or scores on a scale, each with a confidence. Until this week every one of those questions had to be about text.
On October 14, 2026, TypeSafe published Jev 1.14 and changed that. Two sentences in the post stood out:
- Image support also works on the current model. The post says jev-1.13.0 “was multimodal all along”.
- TypeSafe won’t vouch for any of it in production yet. There is “still way too much jaggedness for us to vouch for these for production use cases,” so every new capability needs an explicit opt-in header.
That is an unusual way to ship, and I think it is the right one. Here is what changed, how it works, and what happened when I tried it.
What shipped
TypeSafe frames the release as a trade-off between “builders”, who need reliability, and “dreamers”, who want to experiment. Production behavior stays the same unless you send a header.
- Images (header `TypeSafe-Danger-Zone-Images: true`). Images can go anywhere text goes: the state, a question’s instructions, or the criteria that define options and score levels. Works on jev-1.13.0 and jev-1.14.0.
- A new `box` type (Jev 1.14 only). You describe one target and get back one bounding box plus a confidence. TypeSafe calls it its first type that goes beyond “smart-if statements”.
- Longer context (header `TypeSafe-Danger-Zone-Long-Context: true`). The default limit is 64k tokens per request and 32k per question. The header raises both to 262k. TypeSafe kept the old limit on purpose and still advises against the bigger one because reliability drops on long inputs.
- Opt-in to help. You can let TypeSafe use your queries to find weaknesses in the model. TypeSafe says it still won’t train on them.
- jev-1.14.0 itself. It is small, broad improvements, with multilingual support expected to gain most. It is available now as `jev-preview`. `jev-latest` moves to it one week after release (around October 21). TypeSafe gives 60 days’ deprecation notice for 1.13.0 and 30 days for 1.14.0, with a formal policy to come.
TypeSafe also shared internal intelligence estimates instead of public benchmark scores. It compares Jev only with open-weight models and says the numbers are probably biased toward Jev. I’d take that advice and run your own evaluations, which is what I did.
As an affiliate, we earn on qualifying purchases.
How images work
TypeSafe solved the “where does the image go” problem with find-and-replace. You declare each image once in an `assets` map under a reference string. Wherever that string appears in your request, the image is put in its place.
{
"model": "jev-preview",
"state": { "hero": "3f1c…" },
"assets": { "3f1c…": { "type": "image", "format": "jpg", "data_base64": "…" } },
"questions": {
"fits": { "type": "noul", "instructions": "Is `hero` a fitting featured image for this headline: …?" },
"where": { "type": "box", "instructions": "the router in `hero`" }
}
}
The details that matter in practice:
- Use a fresh UUID as the reference. The match is plain text, so a short reference like `cat` would also replace part of `category`.
- Placement controls cost. An image in the state is seen once for all questions. An image in one question’s instructions is sent again for each question that uses it.
- Images can define options. An option can be a picture, a description with example pictures, or plain text.
- Strict limits, no automatic resizing. Only PNG and JPEG stills, 256 to 1,568 pixels per side, 16 MiB per file and 32 MiB per request. One bad image fails the whole request. WebP and HEIC need converting first.
- No image surcharge. Images are billed as ordinary input tokens at Jev’s normal $0.042 per million input tokens. Output tokens are free.
- Multipart uploads are recommended. Base64 adds a third to the size, and that overhead counts against the request limit. The Python and JS SDKs handle this for you.
multimodal AI image recognition software
As an affiliate, we earn on qualifying purchases.
As an affiliate, we earn on qualifying purchases.
My test: does this image fit its headline?
A decision model needs a narrow, repetitive question, and I have one. Every post on this site gets a featured image. Does that image actually fit the headline? This is the kind of check that never gets done by hand.
I took the 30 most recent featured images on ThorstenMeyerAI.com: 10 product roundups, 15 news posts and 5 of my own essays. I sent each image with three yes/no questions:
- Does it fit its own headline?
- Does it fit another post’s headline, picked at random?
- Does it fit an off-topic headline (“How to Repot a Monstera Plant Without Killing It”)?
The 10 product images also got a pick-one question: which of the 10 products does the image mainly show? I ran everything on both jev-1.14.0 and jev-1.13.0, about 60 requests in total.
Jev 1.14 · images + box
Jev can see now. Here is what 30 of my images showed.
I asked about every featured image three times: does it fit its own headline, a random other post’s headline, an off-topic headline? Both Jev versions, about 60 requests.
Does this image fit the headline?
Median “yes” probability on Jev 1.14, by kind of post
- Product roundups10 images0.760.061.13: 0.79 / 0.05
- News posts15 images0.330.161.13: 0.51 / 0.25
- My essays5 images0.510.161.13: 0.62 / 0.33
Off-topic headline (“How to Repot a Monstera Plant”): never above 0.10 on either version, 60 of 60 rejected.
Why news is weak: almost all news images show the same scene, people at desks looking at monitors. Jev could not tell them apart, and it was right not to.
1.14 is stricter than 1.13
Same 30 images, same questions
| Result | 1.14 | 1.13 |
|---|---|---|
| Fits own headline (≥ 0.5) | 15/30 | 23/30 |
| Fits a wrong headline (≥ 0.5) | 1/30 | 4/30 |
| Own beats random other (AUC) | 0.91 | 0.89 |
| Names the product (10 options) | 9/10 | 10/10 |
1.14’s one product miss: mesh system read as “Wi-Fi 7 router”, confidence 0.60. Re-tune thresholds before jev-latest moves.
What shipped on Oct 14
- headerImagesin state, instructions or criteria · 1.13 + 1.14 ·
TypeSafe-Danger-Zone-Images - 1.14 onlyBox typeone bounding box + confidence. 6 of 6 clear targets boxed (0.66–0.90); an absent bicycle still got a box (0.03)
- headerLong context64k / 32k → 262k tokens, slower and less accurate
- opt-inHelp find weaknessesqueries used for testing, not training
now: jev-preview = 1.14~Oct 21: jev-latest → 1.14notice: 60 days (1.13), 30 days (1.14)
Source: own test on October 15, 2026. 30 featured images from ThorstenMeyerAI.com (10 product roundups, 15 news posts, 5 essays), JPEG at up to 1,568 px, jev-1.14.0 and jev-1.13.0 with the image header. Bars show medians. AUC = probability that an image’s own headline scores higher than a random other headline. Features, prices and limits: TypeSafe blog post “Jev 1.14” and docs.typesafe.ai, as of October 15, 2026.
Powered by Thorsten Meyer AI
Product photos: perfect separation
For the product roundups, Jev 1.14 separated the images perfectly. Each image’s own headline scored between 0.65 and 0.89 (median 0.76). A random other headline scored 0.18 at most (median 0.06). The off-topic plant headline never got above 0.10.
On the pick-one question, Jev 1.14 named the right product for 9 of 10 images. The miss is a fair one. The mesh Wi-Fi photo shows a router with antennas next to a cylindrical mesh unit, and Jev answered “Wi-Fi 7 router” with a confidence of 0.60. Every correct answer came with a confidence of 0.77 or higher, so a confidence threshold would have caught the miss. Jev 1.13 got all 10 right, but gave two of them a confidence below 0.5.
News images: Jev was right, my images weren’t
The news posts were a different story. Jev 1.14 rated an image as fitting its own headline (0.5 or higher) for only 2 of 15 news posts. The median score was 0.33. For 5 of the 15, a random other headline scored at least as high as the post’s own.
The model is not at fault here. When I looked at the images, almost all of them show the same thing: people at desks looking at monitors. Whether the story is about an AI policy change, a lawsuit or a government website, the picture is interchangeable. Jev looked at a generic office scene and said, in effect, that it could belong to any of these articles. That is exactly right.
That is the most useful result of the test. I didn’t learn much about Jev, but I learned something about my own images. A five-minute test turned “our news images are a bit generic” into a measured finding.
1.14 is stricter than 1.13
The two versions agree on the ranking. But 1.14 is noticeably more cautious with “yes”:
- Images rated as fitting their own headline (0.5 or higher): 15 of 30 on 1.14, 23 of 30 on 1.13.
- Images wrongly rated as fitting another post’s headline: 1 of 30 on 1.14, 4 of 30 on 1.13.
- Overall separation (the chance that an image’s own headline outscores a random other one): 0.91 on 1.14, 0.89 on 1.13.
So 1.14 trades some missed matches for fewer false matches. That shift matters on October 21, when `jev-latest` moves to 1.14. Any threshold tuned on 1.13 will behave differently. Pin a version number and re-tune before you switch, as TypeSafe’s own documentation recommends.
Speed and cost
The median response time was 0.36 seconds (90th percentile: 0.61 s), barely slower than a text-only request. A 1024×576 image added about 1,600 input tokens and a 1568×882 image about 3,500. At $0.042 per million tokens, checking 1,000 featured images, questions included, costs about eight cents.
As an affiliate, we earn on qualifying purchases.
The box: precise, with one trap
For the `box` test, I used one product image, the living room with the mesh Wi-Fi system. I sent one request with eight box questions and two yes/no questions. It took 0.57 seconds and used about 2,000 input tokens.

All six clearly visible targets came back with tight boxes: the router, the mesh unit, the laptop, the TV, the floor lamp, and the phone in the hand of the person in the kitchen. Their confidences ranged from 0.66 to 0.90. My instruction “the potted plant on the left” was ambiguous, because there are two plants. Jev picked the small one on the windowsill and signaled its doubt with a confidence of 0.41.
The trap is the eighth question. I asked for “the bicycle”, and there is no bicycle in the picture. Jev still returned a box, a thin strip over the sofa, because the box type has no “not found” answer. The confidence was 0.03, and a separate yes/no question (“Is there a bicycle?”) also answered 0.03. TypeSafe’s documentation describes this behavior and recommends pairing a box with a yes/no question. Follow that advice. If you crop or click on a box without checking the confidence, sooner or later you will act on something that doesn’t exist.
The documentation includes another useful detail. To check whether a box cuts off part of the target, the most reliable method in TypeSafe’s tests was to crop to the box and ask one yes/no question per edge, rather than one “is it all inside?” question. In 36 test crops, per-edge questions caught 30 cut-offs, the single question 26, and an outline drawn on the full image 20.
As an affiliate, we earn on qualifying purchases.
Where this fits, and where it doesn’t
I use one rule for any decision model: it only pays off when four conditions hold together.
- Volume: thousands of small judgments, not a handful.
- A narrow question: fit, category, presence, duplicate. No reasoning chain.
- Cheap mistakes: a wrong answer costs little, or the uncertain cases go to something smarter.
- A visibly failing heuristic: the current rule demonstrably gets it wrong.
Image checks meet all four more often than text checks. Featured images are a good example. Nobody checks them by hand, a wrong match costs little, and a keyword rule cannot judge a picture at all. Other candidates follow the same pattern: does the product photo match the listing, is the dialog open in a test screenshot, does the user photo show what the form says it shows. The box type adds a step: find the object first, then crop it or zoom in.
Where I would still be careful:
- Images are weaker than text, and TypeSafe says so. Its advice is to break questions into the simplest possible pieces. My test confirms it. “Does this image fit this headline?” works. A question that needs reading text inside the image or combining several facts is riskier.
- Experimental means experimental. The request format, limits and accuracy may change between releases. Nothing I measured this week is guaranteed next month.
- Thresholds are tied to a version. The 1.13 → 1.14 shift above is the evidence.
- The images were AI-generated. My test images are clean, well-lit, generated pictures. Real photos with clutter, odd angles and small objects will be harder. TypeSafe recommends tiling large images and running the box question on the right tile.
Bottom line
Jev 1.14 makes an unusual promise for an AI release: almost nothing changes unless you ask for it. Behind the header there is a capability with real practical value. In my test, sorting product images was perfect, the box answers were precise, and the costs were tiny. The most useful result wasn’t a score but a finding about my own news images.
If you have a high-volume, narrow question about images, try it now with your own data, pin the version, and always pair a box with a yes/no question. If you need production guarantees, wait. TypeSafe is telling you that itself, which is more than most AI companies do.
Test details: 30 featured images from ThorstenMeyerAI.com (10 product roundups, 15 news posts, 5 essays), converted to JPEG at up to 1,568 px, run on October 15, 2026 against jev-1.14.0 and jev-1.13.0 with the image header. Each image was asked about its own headline, a random other post’s headline and a fixed off-topic headline, plus a pick-one product question for the 10 roundups. Box test: one 1024×576 image, eight box questions and two yes/no questions in one request. Prices and limits are taken from TypeSafe’s documentation as of October 15, 2026.
Halloween Picks
halloween
As an affiliate, we earn on qualifying purchases.
