jev-align
Sutro CLI: label uncertain rows, GEPA-optimize TypeSafe Jev AI Functions, ship portable definitions via ai-functions.dev.
Overview
jev-align (github.com/sutro-sh/jev-align, Apache-2.0, PyPI jev-align 0.1.4) is Sutro's experimental CLI for building portable AI Functions with TypeSafe Jev. Run `jeva` or `jev-align` after `uv tool install jev-align`: guided setup discovers local CSV, Parquet, and JSONL, walks Binary, Multiclass, Multilabel, and Score task types, and loops evaluate, label uncertain rows, GEPA optimize, accept or reject diffs. Jev can run through TYPESAFE_API_KEY, Vercel AI Gateway, or Cloudflare Workers AI; GEPA's reflection model is separate (OpenAI, Anthropic, Gemini, or LiteLLM providers including local vLLM). Finished functions publish through ai-functions.dev.
Problem: Shipping a typed classifier is easy; keeping it calibrated when labels drift, options shuffle, and production rows look nothing like your first CSV is not.
Built for: ML and product engineers who want Sutro-style AI Functions on TypeSafe Jev with human-in-the-loop GEPA rounds, not another skill-router repo.
First indexed on Jev Directory: 2026-09-25
Creator and team
- Name
- Sutro
- Organization
- Sutro
- Handle
- @sutro-sh
How Jev is used
- Role in the product flow
- Iterative calibration loop: Jev scores rows, humans label ambiguity, GEPA proposes definition updates
- Primitives
- ChoiceNoulScore
- State in
- Tabular rows (concatenated or selected columns) plus natural-language question and class or score-level definitions from guided setup or `jeva optimize` flags.
- Decision out
- Task-typed predictions with uncertainty metrics per round; accepted proposals become portable AI Function definitions for runtime Jev calls.
- Install jev-align and configure Jev provider (TypeSafe, Vercel, or Cloudflare) plus reflection LLM
- Pick dataset, task type, and training annotations per round (5 to 20 in Advanced menu)
- Label ambiguous rows and optional audit sample; GEPA runs within metric-call budget (default 300)
- Review score, certainty delta, and definition diff; accept, reject, rewind, or resume later
jev-align is the opposite of a one-shot router: Jev is the scoring engine inside an active-learning factory. nidhi-singh02-agent-router and leepokai-jev-guard decide which agent or tool runs next; this CLI teaches a function definition until uncertain rows stop embarrassing you in prod. featherless-simple-jev and jaredpalmer-kev ship open inference; jev-align assumes you are fine with TypeSafe, Vercel, or Cloudflare Jev routes while GEPA rewrites prompts and class maps. Pair with classifier.dev when you only need a hosted gate, or cross-read nokia-applied-research-anyjev when your bottleneck is open-weight calibration instead of function authoring.
Sourced performance claims
- README states each round evaluates uncertainty, selects ambiguous rows plus a random audit sample, runs GEPA on accumulated labels, and never auto-accepts on score alone.Source: github.com/sutro-sh/jev-align README How it works
- PyPI package jev-align version 0.1.4 listed when this listing was drafted.Source: pypi.org/project/jev-align
- Public GitHub repo sutro-sh/jev-align had 287 stars and 23 forks when this listing was drafted.Source: GitHub API September 2026
Features and stack
Features
- Interactive `jeva` CLI with guided setup and three bundled examples
- Binary, Multiclass, Multilabel, and Score task types with flag parity
- GEPA optimization with separate reflection model configuration
- TypeSafe, Vercel AI Gateway, or Cloudflare Workers AI Jev backends
- Portable AI Functions shareable via ai-functions.dev
Stack
- Python 3.11+
- uv or pip
- TypeSafe Jev or gateway backends
- GEPA
- LiteLLM-compatible reflection models
Pricing: Open source CLI; you pay TypeSafe, gateway, and reflection LLM usage per optimize round and runtime calls.
Links
FAQ
- Is jev-align the same as the jeva chat skill router?
- No. This repo is Sutro's dataset-driven GEPA loop for AI Functions on Jev. Skill routers pick tools; jev-align improves a single typed function from labels.
- Do I need TYPESAFE_API_KEY?
- Not if you configure Vercel AI Gateway or Cloudflare Workers AI backends. README says the chosen provider is saved with the function for later runtime calls.
- What does GEPA change?
- GEPA proposes definition diffs from your labels and rationales. You review every proposal; README explicitly rejects auto-accept on training score alone.
Related learn guides
Original Jev guidance that pairs with this product pattern.
- System One model
The model family behind Jev: parallel typed questions, one forward pass, probabilities you can threshold.
- Jev vs LLM classification
When to gate with System One probabilities instead of asking a chat model to label things.
Related products
Hand-picked neighbors with rich profiles or overlapping tags.