İçeriğe atla
Jev | typesafeAPI & Playground
…

Kavramlar

Jev kavramları ve primitifler

Bu siteye karşı mı geliştiriyorsunuz? Şunlarla başlayın: barındırılan API rehberi ve ön ödemeli fiyatlandırma. Bu sayfa Choice / Score / Noul ve arka plan erişim seçeneklerini açıklar — jv_live_ anahtarı oluşturmanın ana yolu değildir.

Bu sayfa kavram katmanıdır: primitifler, fiyat bağlamı ve uygulama notları. Ölçümlü endpoint'imize karşı kopyalanabilir çağrılar için başlangıç rehberini ve barındırılan API belgelerini kullanın.

Nasıl erişilir

Bu sitedeki en hızlı yol: oturum açın, küçük bir ön ödemeli paket alın, jv_live_ anahtarı oluşturun, sonra /api/v1/decide'a POST edin. Upstream TypeSafe anahtarları sunucularımızda kalır. Ham TypeSafe kimlik bilgileri gerekiyorsa resmi bekleme listesi ve üçüncü taraf gateway'ler isteğe bağlıdır.

Erişim seçenekleri

  1. Bu sitede barındırılan (hızlı başlangıç için önerilir): Fiyatlandırma + Hesap — /api/v1/decide ve araçlar için ön ödemeli token'lar ve jv_live_ anahtarları.
  2. Resmi / gateway alternatifleri: typesafe.ai'deki TypeSafe bekleme listesi, artı OpenRouter, Vercel AI Gateway ve Cloudflare AI — zaten bu platformlardan faturalandırıyorsanız.

Önemli sınırlama: İndirilebilir model dosyası yoktur. Jev'i yerel olarak self-host edemezsiniz. Tüm çıkarım bulutta çalışır (bu host, TypeSafe veya bir gateway).

Fiyatlandırma notu

Yayımlanan TypeSafe kartı: girdi yaklaşık milyon token başına $0.042. Çıktı token'ları ücretsizdir o kartta. Bu sitenin perakende paketleri Pricing'de listelenir (hostingi karşılamak için çoğu zaman daha yüksek).

Bu host'taki ön ödemeli paketler ve canlı ölçüm için bakın: Pricing. Upstream'i başka yerden çağırırsanız gateway markup'ları yine uygulanabilir.

Jev'in üç temel primitifı

Jev istekleri üç primitif soru türünden oluşur. Her istek state (girdi bağlamı veya program verisi) ile tip güvenli soru listesi gönderir. Jev, kalibre edilmiş olasılıklarla yapılandırılmış tip güvenli sonuçlar döndürür.

  1. Choice: Önceden tanımlı seçenek listenizden bir cevap seçin. Tipik olarak ajan yönlendirme ve sınıflandırma için.
  2. Score: Tanımlı bir ölçek veya rubrikte dereceli sayısal konum döndürün. Risk skorlama ve şiddet derecelendirmesi için tipik.
  3. Noul: Evet/hayır yargısı için olasılık döndürün. Moderasyon kapıları ve basit boolean filtreler için tipik.

Kısa tanımlar ayrıca sözlükte yer alır.

Kurulum

Decide çağırmak için resmi bir Jev npm/pip paketi gerekmez. Canlı örnekler için barındırılan rehberimizi tercih edin. Minimal HTTP POST herhangi bir dilde çalışır. Node.js 18+ yerleşik fetch kullanabilir. Python için yaygın requests kütüphanesini kurun:

terminal
pip install requests

Bu sitede Account'ta jv_live_ anahtarı oluşturun. Şu gibi paket adları uydurmayın: @typesafe/jev-sdk.

env.sh
# Store keys outside source control
export JEV_API_KEY="YOUR_API_KEY"
# Or, when calling through OpenRouter:
# export OPENROUTER_API_KEY="YOUR_OPENROUTER_KEY"

Minimal tam API request JSON

Aşağıda kullanılan barındırılan endpoint: POST https://jevtypesafe.org/api/v1/decide. Etkileşimli test ve curl/Python/TypeScript sekmeleri için API rehberini açın.

request.json
{
  "state": "Customer message: my order has not arrived",
  "questions": {
    "ticket_routing": {
      "type": "choice",
      "options": ["support", "logistics", "billing"]
    },
    "is_urgent": {
      "type": "noul"
    },
    "severity_level": {
      "type": "score",
      "criteria": ["calm", "frustrated", "angry"]
    }
  }
}

Kopyalanabilir API örnekleri

Bu sitenin decide API'sine karşı topluluk HTTP örnekleri. JEV_API_KEY'i Account'taki bir jv_live_ anahtarıyla değiştirin. Tam rehber: /docs/api.

Node.js

call-jev.mjs
// Minimal raw API call — hosted decide on this site
// Replace with a jv_live_ key from Account
async function callJev() {
  const apiKey = process.env.JEV_API_KEY;

  const payload = {
    state: "Customer message: my order has not arrived",
    questions: {
      ticket_routing: {
        type: "choice",
        instructions: "Route this ticket",
        criteria: { support: "product help", logistics: "shipping", billing: "payment" },
      },
    },
  };

  const res = await fetch("https://jevtypesafe.org/api/v1/decide", {
    method: "POST",
    headers: {
      Authorization: `Bearer ${apiKey}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify(payload),
  });

  if (!res.ok) {
    throw new Error(`Jev request failed: ${res.status}`);
  }

  return res.json();
}

Python

call_jev.py
# Minimal raw API call — hosted decide on this site
# Requires: pip install requests
# Replace with a jv_live_ key from Account
import os
import requests

def call_jev():
    api_key = os.environ["JEV_API_KEY"]
    payload = {
        "state": "Customer message: my order has not arrived",
        "questions": {
            "ticket_routing": {
                "type": "choice",
                "instructions": "Route this ticket",
                "criteria": {"support": "product help", "logistics": "shipping", "billing": "payment"},
            }
        },
    }
    response = requests.post(
        "https://jevtypesafe.org/api/v1/decide",
        headers={
            "Authorization": f"Bearer {api_key}",
            "Content-Type": "application/json",
        },
        json=payload,
        timeout=30,
    )
    response.raise_for_status()
    return response.json()

En iyi uygulamalar

  1. API anahtarlarını ortam değişkenlerinde tutun; frontend'de açığa çıkarmayın (kasıtlı tarayıcı anahtar test aracı hariç).
  2. Tekrarlayan karar görevleri için istek önbelleği ekleyerek API çağrılarını ve maliyeti azaltın.
  3. Geçici ağ hataları için yeniden deneme mantığı ekleyin.
  4. Modele göndermeden önce tüm girdi şemalarını doğrulayın.
  5. Otomasyon gerektiğinde serbest metin prompt'ları yerine Choice / Score / Noul tercih edin.

Uygulama notları

Ham prompt metnine değil karar kimliğine göre önbelleğe alın

Soru seti artı normalize edilmiş state alanlarını hash'leyin. İki istek aynı yönlendirme kararını temsil ediyorsa önceki sonucu yeniden kullanın. Moderasyon skorlama ve araç seçimi gibi sıcak yollarda özellikle yararlıdır.

Schema uyuşmazlığında fail closed

Yanıt beklenen karar şemanızla uyuşmuyorsa sessizce varsayılan bir dala zorlamayın. Olayı kaydedin, güvenli bir geri dönüş rotası döndürün ve uyarın.

Üretken LLM'leri karar kapısının arkasında tutun

Önce Jev'i çağırın. Rota bilindikten sonra sohbet tarzı modeli çağırın. Somut örnekler için üretim kullanım alanlarına bakın.

Jev kavramları | Choice, Score, Noul ve System One