En uavhengig guide og et fellesskap for utviklere
Offisiell informasjon om Jev: typesafe.ai

Prøv Jev gratis

Still ett spørsmål eller tre ulike spørsmål om samme situasjon. Velg et eksempel, endre inndataene og se de strukturerte svarene.

Utforsk prosjekter på GitHub Brukssaker
01 / Velg en avgjørelse

Begynn med et konkret eksempel

typesafe/jev-1.13

Utforsk én svartype om gangen. Hver kjøring bruker ett av dagens forsøk.

1. Choice
questions.decision
Forhåndsvis API-forespørselen

Forhåndsvisningen inneholder verken API-nøkkel eller verifiseringstoken. Hver spørsmåls-ID har et svar med samme navn.

{
  "model": "typesafe/jev-1.13",
  "state": {
    "input": "Jeg ble belastet to ganger for abonnementet mitt. Kan du hjelpe?"
  },
  "questions": {
    "decision": {
      "type": "choice",
      "instructions": "Hvilket team skal håndtere dette?",
      "criteria": {
        "billing": "Betalinger og refusjoner",
        "technical": "Feil og integrasjoner",
        "general": "Andre henvendelser"
      }
    }
  }
}

Hver konto får 6 gratis forsøk per UTC-døgn; de nullstilles kl. 00:00 UTC. Nettstedets samlede dagskapasitet er begrenset. Inndata sendes til OpenRouter; vi lagrer bruksdata, men ikke det du skriver inn.

02 / Les svaret

Klar når du er det

Kjør et eksempel for å få ett strukturert svar per spørsmål: Choice velger et alternativ, Score plasserer resultatet på en skala, og Probability gir en verdi fra 0 til 1.

Hvordan integrere

Legg til Jev i koden din.

Skjemaet sender teksten din som state.input sammen med ett eller tre navngitte spørsmål. Hvert resultat finnes under answers.<question_id>.

Hva hvert felt betyr

Forespørselen definerer spørsmålene og svarformatene. Svaret gir et resultat for hver enkelt. Her er JSON-feltene brukt i eksemplet.

Forespørselsfelt

model
Modell-ID. Eksemplet låser modellversjonen til Jev 1.13, slik at versjonen er tydelig angitt.
state
Tekst eller strukturerte data som skal vurderes, for eksempel en melding til kundestøtte.
questions
Et sett med navngitte avgjørelser. De samme navnene brukes under answers i svaret.
<question_id>
Et navn som action eller urgency; svaret bruker det samme navnet.
type
Svarformatet: choice velger et alternativ, score vurderer på en ordnet skala, og noul vurderer et ja/nei-spørsmål.
instructions
Den spesifikke vurderingen du vil at modellen skal ta.
criteria
Tillatte Choice-alternativer, ordnede Score-nivåer eller betydningen av false og true for Noul.

Svarfelt

answers
Ett resultat per spørsmål, returnert under samme navn.
choice
Den valgte nøkkelen i choice: alternativet med høyest sannsynlighet.
probabilities
Sannsynligheten for hvert valgalternativ; disse verdiene summerer til 1.
confidence
En egen konfidensverdi beregnet fra sannsynlighetsfordelingen; det er ikke det valgte alternativets sannsynlighet.
score
En posisjon på en ordnet skala vektet etter sannsynlighet; den kan ligge mellom to nivåer.
legend
Koblingen mellom numeriske Score-posisjoner og beskrivelsene av nivåene du definerte.
noul
Et tall fra 0 (nei) til 1 (ja) for et ja/nei-spørsmål.

Samme kontekst, tre uavhengige spørsmål: Choice, Score og Probability. Hver kjøring bruker ett av dagens forsøk. Et riktig utformet svar kan fortsatt være feil. Test representative tilfeller og sett rutingterskler for din egen arbeidsflyt.

Endepunkt

OpenRouter

Her brukes en fast Jev-versjon via OpenRouter. Sjekk modellsiden for oppdatert pris og tilgjengelighet.

Endepunkt
POST https://openrouter.ai/api/alpha/decisions
model
typesafe/jev-1.13
API-nøkkel
Send API-nøkkelen fra serveren som et Bearer-token.
OpenRouter ↗
Offisielt direkte API

TypeSafe

TypeSafe har sitt eget endepunkt og egne API-nøkler. Den offisielle hurtigstarten bruker jev-latest og viser flere spørsmål i én forespørsel.

Official published price
$0.042per 1M input tokens

Output tokens are free.

Eligible accounts may receive promotional credits. TypeSafe does not publish a fixed amount on its public pages; check the console for your balance and terms.

Endepunkt
POST https://api.typesafe.ai/v1/systemone
model
jev-latest
API-nøkkel
Send API-nøkkelen fra serveren som et Bearer-token.
LangChain · Python

Bruk Jev i en LangChain-agentharness

En harness styrer agentens modellkall og verktøy. Når en beslutning trengs, leser Jev en melding, et planlagt verktøykall eller agentens tilstand og returnerer et typet svar. Koden din bestemmer neste steg; åpne oppgaver blir hos chatmodellen.

ModelRouterMiddlewarebefore_agent → wrap_model_call

Klassifiser den siste brukermeldingen før kjøringen, velg modell og behold valget gjennom hele kjøringen. Valg, sannsynligheter og konfidens er fortsatt tilgjengelige i agenttilstanden.

AutoModeMiddlewarewrap_tool_call

Sjekk et valgt verktøykall før det utføres. Hvis Jev finner risiko eller manglende tillatelse, blokkerer mellomvaren kallet og returnerer en ToolMessage med feil. Den ber ikke et menneske om godkjenning.

TypeSafeClassifierChoice · Score · Noul

Du kan også legge til egne kontrollpunkter: send agentmeldinger eller tilstand til TypeSafeClassifier fra egen mellomvare, og bruk Choice, Score eller Noul til å styre flyten eller sende usikre tilfeller til gjennomgang.

LangChain · Python · ModelRouterMiddleware
# pip install "langchain-typesafe[experimental]" langchain-openai
# Set TYPESAFE_API_KEY and OPENAI_API_KEY on your server.
from langchain.agents import create_agent
from langchain_typesafe.experimental.middleware import (
    ModelChoice, ModelRouterMiddleware,
)

router = ModelRouterMiddleware(
    choices={
        "fast": ModelChoice(
            model="openai:gpt-5.6-terra",
            criteria="Simple lookups and extraction.",
        ),
        "powerful": ModelChoice(
            model="openai:gpt-6-astra",
            criteria="Complex reasoning and high-stakes decisions.",
        ),
    },
    instructions="Choose the least costly model that can do the task safely.",
)
agent = create_agent("openai:gpt-5.6-terra", middleware=[router])
result = agent.invoke({"messages": [{"role": "user", "content": "Summarize this log."}]})
print(result["model_route"].choice)

TypeScript på serversiden

TypeScript · fetch
// Run on your server. Keep the API key out of browser code.
const apiKey = process.env.OPENROUTER_API_KEY;
if (!apiKey) throw new Error("Set OPENROUTER_API_KEY");

const response = await fetch("https://openrouter.ai/api/alpha/decisions", {
  method: "POST",
  headers: {
    Authorization: "Bearer " + apiKey,
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    model: "typesafe/jev-1.13",
    state: {input: "A customer reports a duplicate charge."},
    questions: {
      team: {
        type: "choice",
        instructions: "Which team should handle this?",
        criteria: {
          billing: "Payments and refunds",
          technical: "Bugs and integrations"
        }
      },
      urgency: {
        type: "score",
        instructions: "How urgent is the issue?",
        criteria: ["Can wait", "Needs attention today", "Immediate action"]
      },
      escalate: {
        type: "noul",
        instructions: "Should a human review this first?",
        criteria: {false: "No review needed", true: "Review before acting"}
      }
    }
  })
});

if (!response.ok) throw new Error("Decision request failed");
const {answers} = await response.json();
console.log(answers.team.choice, answers.urgency.score, answers.escalate.noul);
Les svaret

Tre spørsmålstyper, tre svarformater

Velg svartypen koden din trenger. Hvis du sender flere spørsmål, får hver spørsmåls-ID sitt eget resultat.

TypeSafe: Choice · Score · Noul ↗

Choice

choice · probabilities · confidence

Den valgte nøkkelen i choice: alternativet med høyest sannsynlighet.

Score

score · legend · probabilities · confidence

En posisjon på en ordnet skala vektet etter sannsynlighet; den kan ligge mellom to nivåer.

Noul

noul

Et tall fra 0 (nei) til 1 (ja) for et ja/nei-spørsmål.

Før du bruker den i produksjon

Før produksjonsbruk bør du teste med representative supportsaker, registrere modellversjonen og sende usikre eller konsekvensrike saker til manuell gjennomgang. Verdien 0,8 er bare et eksempel.

Nytt fra fellesskapet

Følg Jev-økosystemet på din måte.

Følg nye prosjekter, System One-modeller fra fellesskapet og praktiske bruksområder gjennom hyppige offentlige oppdateringer eller en kuratert e-post i ny og ne.

Hyppige offentlige oppdateringer

Jev AI Radar

En åpen kildekode-samling som utviklere, skript og KI-agenter kan lese, gjenbruke og følge over tid.

Gi en stjerne på GitHub
Kuraterte nyheter i ny og ne

Nyhetsbrev

Få av og til håndplukkede prosjekter fra fellesskapet, populære GitHub-repoer, nyttige kodeeksempler og praktiske måter å bruke Jev på.

Når du melder deg på, samtykker du til å få e-post fra Jev AI Dev av og til.