Jev so với mô hình ngôn ngữ

Chúng không tranh nhau cùng một công việc. Mô hình ngôn ngữ viết; Jev quyết định. So sánh hữu ích không phải bên nào thông minh hơn mà là mã của bạn phải làm gì với câu trả lời — và khác biệt đó đủ lớn để thay đổi cách viết cả chương trình xung quanh.

Cùng một quyết định, viết theo hai cách

Định tuyến một phiếu hỗ trợ vào một trong bốn hàng đợi. Đây là cái giá thực sự của mỗi bên xét theo mã nguồn.

Với một mô hình ngôn ngữ

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

Với 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);

Vòng lặp thử lại chính là dấu hiệu tố cáo. Nó tồn tại ở phiên bản đầu vì câu trả lời đến dưới dạng văn bản có thể không phân tích được, hoặc phân tích ra thành một hàng đợi chưa từng có trong danh sách. Ở phiên bản thứ hai nó không có chỗ nào để tồn tại: câu trả lời tự thân cấu trúc đã là một phần tử của QUEUES. Thứ thay thế nó là một nhánh hoàn toàn khác — nhánh kích hoạt khi mô hình không chắc chứ không phải khi đầu ra bị hỏng.

Phiên bản thứ hai nhìn thấy được gì

Chính phiếu đó, chạy thật qua Jev. Phương án thắng chẳng có gì bất ngờ; phương án á quân mới là phần mà một nhãn trơ trụi đã vứt bỏ.

“Đăng nhập SSO của chúng tôi báo lỗi 500 kể từ bản phát hành 4.2 sáng nay. Không ai trong đội vào được. Chrome và Safari đều vậy, ở hai người thuê khác nhau.”
Kỹ thuật ở mức 87%, trong 4 phương án
87% Kỹ thuật

Kỹ thuật thắng ở mức 87%, nhưng Tài khoản giữ 13% — và đó là bất đồng đúng đắn, vì một lỗi SSO thực sự nằm trên ranh giới giữa hai bên. Một nhãn trơ trụi sẽ giấu mất điều đó. Nếu việc định tuyến sai có cái giá của nó, thì 13% chính là con số cần đặt ngưỡng.

Đặt cạnh nhau

Bạn gửi gì
Jev

Một trạng thái cùng một bản đồ các câu hỏi có kiểu.

Mô hình ngôn ngữ

Một lời nhắc, thường mang theo lược đồ và luật lệ dưới dạng văn xuôi.

Thứ quay về
Jev

Một câu trả lời có kiểu cho mỗi câu hỏi, kèm xác suất cho từng phương án.

Mô hình ngôn ngữ

Văn bản. JSON nếu bạn nhờ tử tế và chế độ đó được hỗ trợ.

Dòng mã tiếp theo của bạn
Jev

Một lệnh rẽ nhánh trên một giá trị chỉ có thể là một trong những giá trị của bạn.

Mô hình ngôn ngữ

Một lần phân tích, rồi một lần kiểm tra hợp lệ, rồi một nhánh cho lúc một trong hai thất bại.

Nó hỏng thế nào
Jev

Nó có thể sai về văn bản của bạn. Nó không thể trả về một hình dạng bạn chưa định nghĩa.

Mô hình ngôn ngữ

Nó cũng có thể sai cả về hình dạng — thiếu một trường, một nhãn bạn chưa từng liệt kê, văn xuôi quấn quanh JSON.

Hỏi mười thứ
Jev

Mười câu hỏi trong một yêu cầu, đánh giá song song trên trạng thái.

Mô hình ngôn ngữ

Một lời nhắc chật cứng, hoặc mười lần gọi.

Sự bất định
Jev

Một phân phối và một giá trị độ tin cậy, trên mọi Choice và Score.

Mô hình ngôn ngữ

Bất cứ điều gì văn bản tự nhận về mức chắc chắn của chính nó.

Các con số

TypeSafe công bố những con số này; đó là số liệu của nhà cung cấp, không phải đo đạc của chúng tôi.

70–500 ms

phản hồi từ đầu đến cuối, so với 3–329 s ở các mô hình tiên phong

40–200×

nhanh hơn với các truy vấn mang hình dạng System One

0,042 $

mỗi triệu token đầu vào, đầu ra miễn phí

Thứ chúng tôi đo được: qua 14 lượt chạy thực hiện trên trang này, thời gian khứ hồi trung vị là 329 mili giây — và phần lớn các yêu cầu đó mang theo chín câu hỏi chứ không phải một.

Khi nào mô hình ngôn ngữ là công cụ đúng

Phần lớn thời gian, nếu thứ bạn cần là ngôn ngữ. Jev không có ý kiến nào để giải thích và cũng chẳng có gì để nói.

  • Bạn cần văn xuôi — một câu trả lời, một bản tóm tắt, một thông điệp commit, một lời giải thích cho quyết định chứ không phải bản thân quyết định.
  • Bạn cần viết mã, hoặc một kế hoạch, hoặc bất cứ thứ gì mở mà tập câu trả lời chưa biết trước lúc gọi.
  • Tập câu trả lời khả dĩ thực sự không giới hạn. Trích một cái tên bất kỳ không phải là một Choice trên 255 phương án.
  • Bạn cần một chuỗi suy luận có thể xem xét. Jev trả về một phán đoán, không phải các bước đằng sau nó.
  • Khối lượng nhỏ và hình dạng lỏng lẻo. Một vòng lặp thử lại chạy hai lần mỗi ngày không đáng để thiết kế bỏ đi.

Hai thứ này bổ trợ nhau tốt hơn là cạnh tranh nhau. Cách TypeSafe tự diễn đạt là System One cho phán đoán có cấu trúc nhanh và một mô hình thông thường làm System Two phía sau — hãy sàng đầu vào bằng một Noul, định tuyến bằng một Choice, rồi giao thứ sống sót cho mô hình thực sự biết viết.

Đọc tiếp

Tự chạy phép so sánh

Dán một phiếu, một bản nháp, một lời nhắc — bất cứ thứ gì mà lẽ ra bạn sẽ phải viết một vòng lặp phân tích quanh nó — và xem chín câu trả lời có kiểu quay về từ một yêu cầu.

Mở sân chơi