Jason Varbedian

Trying Jev in my AI swing coach

Jason Varbedian

Jev is an AI model for making quick decisions: yes or no, which option, or how much.

TL;DR: A fast, cheap classifier for questions where you can define the possible answers.

It returns answers your code can use, rather than writing text. Its three question types are Noul (yes/no), Choice (which one), and Score (how much).

Here’s an example from One Cue Golf, my AI swing coach, where I use Choice to help decide what the golfer should work on next.

In Practice: Choosing a coaching category

The goal is one useful cue after a group of shots. First, we need to identify the problem worth working on.

A classifier assigns an input to a category. Jev does that part: it chooses a problem category from options I define. The LLM then writes the cue.

The instructor pilot: shot measurements, code checks, Jev selects a category, code validates it, then an LLM writes one cue.

Code also produces a separate rule-based interpretation so the instructor can compare the two.

Here are two swings from our synthetic test set, with angles in degrees:

MeasurementSwing 1Swing 2
Clubface angle−3.9°−3.8°
Club path−5.8°−5.7°
Face relative to path+1.9°+1.9°

In a small test using the first swing's measurements, I gave Jev three choices: pull, push, and insufficient. A pull means the ball starts left for a right-handed golfer. Jev returned this answer:

{
  "type": "choice",
  "choice": "pull",
  "confidence": 0.78,
  "probabilities": {
    "pull": 0.85,
    "push": 0.14,
    "insufficient": 0.01
  }
}

What's nice about Jev

  1. Speed. The small test finished in 439 milliseconds, including local setup and the network round trip. The LLM waits for Jev’s choice, so a quick decision keeps that extra step short.
  2. Cost. Its 383 input tokens imply a cost of about $0.0000161 at current pricing, checked September 21, 2026.
  3. The schema. This is the type-safe part of TypeSafe: answers follow a defined structure, and Choice selects from the options I supply. I can read the JSON response as a JavaScript object and use it directly in ordinary code.

The schema lets me write simple rules: select the highest-probability option above 0.8, or show several options otherwise. That decision logic is cheap and deterministic. I can improve the options and their descriptions as the instructor reviews results.

Two terms explain how it fits. Non-autoregressive means Jev produces decision probabilities together instead of generating text token by token, according to TypeSafe.

Zero-shot means I can use it off the shelf, without task-specific examples or training. I provide measurements and category definitions. Training my own classifier would usually require labeled examples: swings paired with the categories it should learn to predict.

Effectiveness depends on your data and human annotations

The confidence number isn't a second opinion. It is calculated from the probabilities, so it doesn't independently verify the answer. I could calculate my own summary or apply my own thresholds.

TypeSafe says its training improves calibration: how well probabilities match observed outcomes. You still need to evaluate Jev on your own data against human annotations. A consistent answer can still be wrong.

We're evaluating it on lessons now, using our golden prompts and adding human annotations to the results. We haven't established its coaching accuracy yet.

Things I want to try next

  • Try Jev as judge in skill-gym: use it to evaluate skill outputs against a rubric instead of an LLM judge. LangChain’s experiment explores this use case.
  • Try Jev on my highsignal skill.
  • Share the eval report for the AI swing coach.

Comments