Jev проти мовної моделі
Вони не змагаються за одну й ту саму роботу. Мовна модель пише; Jev вирішує. Корисно порівнювати не те, хто розумніший, а те, що вашому коду доведеться робити з відповіддю, — і ця різниця достатньо велика, щоб змінити те, як написана програма навколо.
Одне рішення, записане двома способами
Надіслати тикет підтримки в одну з чотирьох черг. Ось у що кожен бік реально обходиться в коді.
З мовною моделлю
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З 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);Цикл повторів — головна прикмета. У першій версії він є, бо відповідь приходить текстом, який може не розібратися або розібратися в чергу, якої ніколи не було в списку. У другій йому немає де жити: відповідь за побудовою — один із QUEUES. Замість нього з’являється зовсім інша гілка — та, що спрацьовує, коли модель не певна, а не коли вивід зіпсований.
Що бачить друга версія
Той самий тикет, по-справжньому пропущений крізь Jev. Переможець не дивує; друге місце — це та частина, яку гола мітка викинула б.
Технічна перемагає з 87%, але Обліковий запис тримає 13% — і це саме та незгода, яка й має бути, бо збій SSO справді лежить на межі між ними. Гола мітка це сховала б. Якщо помилка маршрутизації чогось коштує, поріг треба ставити саме на цих 13%.
Пліч-о-пліч
- Що ви надсилаєте
- Jev
Один state плюс карту типізованих запитань.
Мовна модельПромпт, який зазвичай несе схему й правила прозою.
- Що повертається
- Jev
По одній типізованій відповіді на запитання, з імовірністю для кожного варіанта.
Мовна модельТекст. JSON, якщо ви ввічливо попросили і режим підтримується.
- Ваш наступний рядок коду
- Jev
Перемикання за значенням, яке може бути лише одним із ваших.
Мовна модельРозбір, потім перевірка, потім гілка на випадок, якщо щось із цього не вдалося.
- Як він помиляється
- Jev
Він може помилитися щодо вашого тексту. Він не може повернути форму, якої ви не задавали.
Мовна модельВін може помилитися і у формі — відсутнє поле, мітка, якої ви не перелічували, проза навколо JSON.
- Спитати десять речей
- Jev
Десять запитань в одному запиті, оцінених щодо state паралельно.
Мовна модельОдин перевантажений промпт або десять викликів.
- Невизначеність
- Jev
Розподіл і значення впевненості в кожного Choice і Score.
Мовна модельТе, що текст сам заявляє про власну певність.
Цифри
Їх публікує TypeSafe; це дані постачальника, а не наші вимірювання.
відповідь від початку до кінця проти 3–329 с у передових моделей
швидше на запитах форми Системи 1
за мільйон вхідних токенів, вивід безкоштовно
Що можемо виміряти ми: на 14 запусках, зроблених через цей сайт, медіанний час оберту — 329 мс, і більшість цих запитів несли дев’ять запитань, а не одне.
Коли мовна модель — правильний інструмент
Майже завжди, якщо вам потрібна мова. У Jev немає думки, яку він міг би пояснити, і нічого сказати.
- Вам потрібна проза — відповідь, стислий переказ, повідомлення коміту, пояснення рішення замість самого рішення.
- Вам потрібно написати код або план, або будь-що відкрите, де набір відповідей невідомий до виклику.
- Набір можливих відповідей справді необмежений. Витягти довільне ім’я — це не Choice по 255 варіантах.
- Вам потрібен ланцюжок міркувань, який можна оглянути. Jev повертає судження, а не кроки за ним.
- Обсяг невеликий, форма вільна. Цикл повторів, що виконується двічі на день, не вартий того, щоб проєктувати його геть.
Ці двоє краще складаються, ніж змагаються. Власне формулювання TypeSafe — Система 1 для швидкого структурованого судження і звичайна модель як Система 2 позаду: просійте вхід через Noul, розведіть через Choice і передайте вціліле тій моделі, яка справді вміє писати.
Читати далі
Проведіть це порівняння самі
Вставте тикет, чернетку, промпт — будь-що, навколо чого ви інакше написали б цикл розбору, — і дивіться, як дев’ять типізованих відповідей повертаються одним запитом.
Відкрити майданчик