Jev vs model bahasa

Keduanya tidak memperebutkan pekerjaan yang sama. Model bahasa menulis; Jev memutuskan. Perbandingan yang berguna bukan soal mana yang lebih pintar melainkan apa yang harus dilakukan kodemu dengan jawabannya — dan selisih itu cukup besar untuk mengubah cara program di sekitarnya ditulis.

Keputusan yang sama, ditulis dengan dua cara

Rutekan sebuah tiket dukungan ke salah satu dari empat antrean. Inilah yang sebenarnya dibayar tiap sisi dalam bentuk kode.

Dengan model bahasa

const res = await llm.chat({
  messages: [{ role: "user", content:
    `Route this ticket. Reply with JSON: {"queue": "Billing"|"Technical"|"Account"|"Sales"}
     Ticket: ${ticket}` }],
  response_format: { type: "json_object" }
});

let queue;
try {
  queue = JSON.parse(res.content).queue;        // may not be JSON
} catch {
  return retry();                               // ...so there is a retry
}
if (!QUEUES.includes(queue)) return retry();    // may be a queue you never had
// and no idea how close the call was

Dengan Jev

const { answers } = await jev.systemOne({
  state: ticket,
  model: "jev-latest",
  questions: { queue: { type: "choice", instructions:
    "Which team should own this ticket?", criteria: QUEUES } }
});

const { choice, probabilities, confidence } = answers.queue;
// choice is one of QUEUES. It cannot be anything else.
if (confidence < 0.7) return humanReview(ticket, probabilities);
route(choice);

Loop percobaan ulang itulah petunjuknya. Ia ada di versi pertama karena jawabannya datang sebagai teks yang mungkin gagal diurai, atau terurai menjadi antrean yang tidak pernah ada di daftar. Di versi kedua ia tidak punya tempat hidup: jawabannya secara konstruksi adalah salah satu dari QUEUES. Yang menggantikannya adalah cabang yang sama sekali berbeda — cabang yang menyala ketika model tidak yakin, bukan ketika keluarannya rusak.

Apa yang bisa dilihat versi kedua

Tiket itu, benar-benar dijalankan lewat Jev. Pemenangnya tidak mengejutkan; peringkat keduanya adalah bagian yang akan dibuang oleh label telanjang.

“Login SSO kami melempar 500 sejak rilis 4.2 pagi ini. Tidak ada di tim yang bisa masuk. Sama di Chrome dan Safari, dua penyewa berbeda.”
Teknis pada 87%, dari 4 opsi
87% Teknis

Teknis menang di 87%, tetapi Akun memegang 13% — dan itu perbedaan pendapat yang tepat, karena kegagalan SSO memang duduk di perbatasan keduanya. Label telanjang akan menyembunyikannya. Kalau peruteanmu punya ongkos bila salah, 13% adalah angka yang perlu diberi ambang.

Berdampingan

Apa yang kamu kirim
Jev

Satu keadaan ditambah peta pertanyaan bertipe.

Model bahasa

Sebuah prompt, biasanya membawa skema dan aturannya sebagai prosa.

Apa yang kembali
Jev

Satu jawaban bertipe per pertanyaan, dengan probabilitas untuk setiap opsi.

Model bahasa

Teks. JSON kalau kamu minta baik-baik dan modenya didukung.

Baris kode berikutnya
Jev

Sebuah switch pada nilai yang hanya bisa berupa milikmu.

Model bahasa

Penguraian, lalu validasi, lalu cabang untuk saat salah satunya gagal.

Bagaimana ia gagal
Jev

Ia bisa salah tentang teksmu. Ia tidak bisa mengembalikan bentuk yang tidak kamu tentukan.

Model bahasa

Ia juga bisa salah soal bentuknya — medan yang hilang, label yang tak pernah kamu daftarkan, prosa yang membungkus JSON.

Menanyakan sepuluh hal
Jev

Sepuluh pertanyaan dalam satu permintaan, dievaluasi terhadap keadaan secara paralel.

Model bahasa

Satu prompt yang sesak, atau sepuluh panggilan.

Ketidakpastian
Jev

Sebuah distribusi dan nilai keyakinan, pada setiap Choice dan Score.

Model bahasa

Apa pun yang diklaim teksnya tentang kepastiannya sendiri.

Angkanya

TypeSafe menerbitkannya; itu angka vendor sendiri, bukan pengukuran kami.

70–500 ms

respons ujung ke ujung, berbanding 3–329 d untuk model terdepan

40–200×

lebih cepat pada kueri berbentuk System One

$0,042

per juta token masukan, keluaran gratis

Yang bisa kami ukur: dari 14 eksekusi yang dibuat lewat situs ini, waktu pulang pergi median adalah 329 md — dan sebagian besar permintaan itu membawa sembilan pertanyaan, bukan satu.

Kapan model bahasa adalah alat yang tepat

Sebagian besar waktu, kalau yang kamu butuhkan adalah bahasa. Jev tidak punya pendapat yang bisa ia jelaskan dan tidak punya apa-apa untuk dikatakan.

  • Kamu butuh prosa — sebuah balasan, ringkasan, pesan commit, penjelasan atas keputusan alih-alih keputusannya.
  • Kamu butuh kode ditulis, atau sebuah rencana, atau apa pun yang terbuka di mana himpunan jawabannya belum diketahui sebelum panggilan.
  • Himpunan jawaban yang mungkin benar-benar tak terbatas. Mengekstrak nama sembarang bukanlah Choice atas 255 opsi.
  • Kamu butuh rantai penalaran yang bisa diperiksa. Jev mengembalikan penilaian, bukan langkah-langkah di baliknya.
  • Volumenya kecil dan bentuknya longgar. Loop percobaan ulang yang kamu jalankan dua kali sehari tidak sepadan untuk dirancang hilang.

Keduanya lebih baik dipadukan daripada diadu. Kerangka TypeSafe sendiri adalah System One untuk penilaian terstruktur yang cepat dan model biasa sebagai System Two di belakangnya — saring masukan dengan Noul, rutekan dengan Choice, dan serahkan yang selamat ke model yang memang bisa menulis.

Lanjut membaca

Jalankan perbandingannya sendiri

Tempel sebuah tiket, draf, prompt — apa pun yang kalau tidak begitu akan kamu kelilingi dengan loop penguraian — dan lihat sembilan jawaban bertipe kembali dari satu permintaan.

Buka taman bermain