RAG input contracts with Jev
Retrievers hope. After retrieval, Jev marks relevance, contradiction, or injection; code keeps, flags, or drops passages before a generator sees them.
This unofficial page is the input contracts slice of the RAG passage decisions pack. Intent: apply the Jev (TypeSafe System One) decision model to RAG passage decisions input contracts. Primary search language: RAG Jev input contracts. Confirm patterns on docs.typesafe.ai. This site does not sell, issue, or proxy TypeSafe keys. Use a credential you already have from the console or a documented gateway.
Independent angle (cover ≠ clone): Filter/rerank recipes with failure modes; cite vs generate boundary. We cover the intent, not a rival rerank-passages-score URL tree.
Unlike citation checking, this contract is query + passage, not claim + quote. If you only have a generator sentence, you are on the citation pack.
RAG use-case context
An input contract is the allow-list of fields you will ever POST for RAG passage decisions. It is a decision contract for the query + retrieved passage: if a field is not named in instructions, it should not be in state. That is how you beat noisy “dump the object” integrations — the rival-intent failure mode — without cloning anyone’s IA.
Hub: Classifying RAG passages. Compare, when the other tool is the real job: RAG pipelines.
Input Contracts inputs
Documented System One inputs: state (string, object, or array of text) and a questions map. English is the primary training language. Images, audio, and video are not accepted.
Allow for RAG passage decisions:
{
"query": "What is the refund window for pro plans?",
"passage": { "id": "doc-88#p3", "text": "Pro subscribers may request a refund within 14 days." },
"corpus": { "trust": "internal_kb" }
}
Bind paths: query, passage.text.
Refuse at the wrapper (do not send):
- the entire 40-passage dump in one state (filter first or ask per pair)
- embeddings or vector ids Jev cannot use
- unrelated nav chrome from the HTML scrape
TypeSafe’s published list price for jev-1.13 is $0.042 per million input tokens (vendor claim — confirm on the models page); output tokens are free on that same page. Unused distractors still bill as input.
Decision signals and actions
The contract exists so each primitive stays atomic:
| Id | Type | Job |
|---|---|---|
relevant |
Noul | Does passage.text answer query? |
contradiction |
Noul | Does it contradict other kept passages you include? |
injection |
Noul | Hidden instructions / prompt injection in the passage? |
support |
Score | How completely does it support an extractive answer? |
If a new CRM field appears, either add a question that names it or drop it. Do not “just include it.” Do not treat a Noul of 0.5 as a “medium” RAG passage decisions score — it means yes and no are equally likely. Conjunctions stay in your code.
Guardrails and escalation
Contracts are a guardrail: missing required text → do not call Jev (or ask a Noul “is enough information present?”). That is cheaper than a confident wrong relevant. TypeSafe’s confidence-gated examples use a lower bar for recoverable reads than for irreversible actions. Those numbers are illustrations. For RAG passage decisions, treat feed_to_answerer as the high bar (showing a passage to a customer-facing answerer). Tune on labels — see offline evaluation.
Evaluation and rollout notes
Version the contract (field list + criteria git SHA) next to the pinned model. Replay passage relevant / not, plus injection gold on a hostile slice when either changes. Pin jev-1.13.0 (the versioned id) after you fit thresholds. jev-latest and the marketing line jev-1.13 can move. Log the response model. TypeSafe’s published list price for jev-1.13 is $0.042 per million input tokens (vendor claim — confirm on the models page); output tokens are free on that same page. Unused distractors still bill as input.
Official Python and JavaScript SDKs read TYPESAFE_API_KEY and retry documented 429/529. This site does not sell, issue, or proxy TypeSafe keys. Use a credential you already have from the console or a documented gateway.
Pack map
| Slice | Page |
|---|---|
| Graph and primitives | decision workflow |
What may enter state |
you are here |
| What to gather first | evidence collection |
| Atomic rules | policy checks |
| Act / review / abstain | confidence thresholds |
| Reviewer payload | human handoff |
| What to persist | audit trail |
| How it breaks | failure modes |
| Labeled replay | evaluation |
| Shadow → canary | production rollout |
FAQ
What happens if I send the whole warehouse row?
jev-1.13 loses accuracy as distractors grow (official jaggedness note). Drop the entire 40-passage dump in one state (filter first or ask per pair). TypeSafe’s published list price for jev-1.13 is $0.042 per million input tokens (vendor claim — confirm on the models page); output tokens are free on that same page. Unused distractors still bill as input.
Can I send images of the artifact? No. State is text (string, object, or array of text). Transcribe first.
Where is the rest of the RAG pack? Start with RAG decision workflow and RAG evidence collection. Cluster hub: Use cases.
Should Jev generate the RAG answer? No. Classify or score passages; another model (or extractive code) writes. That is the cite-vs-generate boundary.
Do we publish rerank lifts? No. TypeSafe’s cookbooks may show measurements — treat those as vendor figures and re-run on your corpus.
What this page does not claim
- No invented top-1 / top-10 lifts.
- Not a vector database.
- Not official TypeSafe.
- Official TypeSafe status, or that jev.pro issues API keys.
- That a schema-constrained answer is automatically factually correct.
Disclaimer
This is an independent unofficial site and is not affiliated with TypeSafe AI; official documentation is available at https://docs.typesafe.ai.
Primary documentation: https://docs.typesafe.ai. Hub: Use cases.
Sources
Public TypeSafe or adjacent documentation only. No private claims.