Tìm hiểu Jev
Jev là model AI của TypeSafe. Jev đọc thông tin bạn đưa, trả lời các câu hỏi bạn đặt sẵn, và cho biết nó chắc chắn đến đâu. Trang này giải thích Jev hoạt động thế nào, cách thiết kế một lần hỏi Jev, và người ta đã dùng Jev trong bảy dự án thật ra sao.
Trong video, Jev giống người quản thư ở bưu cục: đọc kiện, chọn ô, nói mình chắc đến đâu. Ba vai dưới đây cho biết hình ảnh đó ứng với gì khi dùng Jev thật.
Một request gồm gì
Mỗi lần code hỏi Jev, nó gửi đi một gói dữ liệu gọi là request, viết theo dạng JSON (từng cặp "tên: giá trị" trong dấu { }). Chạm vào từng phần của kiện hàng để thấy nó nằm ở đâu trong JSON, hoặc chạm vào JSON để thấy nó là phần nào của kiện.
Đây là request của ví dụ ticket hỗ trợ trong bài giảng (Phần 5). Dấu ... là phần lược bớt; bước 6 ở dưới có bản đầy đủ. Ngoài state và questions, request chỉ có thêm model: dùng model nào, thường là jev-latest.
Thiết kế request trong 6 bước
Người mới hay bị kẹt: câu hỏi phụ thuộc vào state, còn state lại phụ thuộc vào câu hỏi. Cách gỡ là bắt đầu từ việc app sẽ làm, rồi đi đúng thứ tự dưới đây. Ví dụ: một công ty nhận hàng nghìn ticket hỗ trợ mỗi ngày (ticket là một yêu cầu hỗ trợ khách gửi tới, kiểu một email hay một tin nhắn).
Ba kiểu câu hỏi
Kiểu câu hỏi (type) phụ thuộc vào việc code sẽ làm gì với câu trả lời. Câu if dùng noul, rẽ nhiều nhánh dùng choice, so sánh với ngưỡng trên một thang dùng score.
Các con số trong ba hình nhỏ lấy từ response mẫu của bài giảng, chỉ để minh hoạ, không phải kết quả chạy thật. Xác suất là Jev nghiêng về mỗi đáp án bao nhiêu phần, cộng lại bằng 1.
Người ta thiết kế request thật ra sao
Mỗi case study là một dự án mã nguồn mở, đọc theo đúng 6 bước ở trên: app làm gì, hỏi Jev câu gì, đưa Jev đọc gì, và code dùng câu trả lời thế nào.
Tổng hợp: các mẫu thiết kế
Từ bảy dự án ở trên, ta rút ra một bộ mẫu có thể dùng lại. Khi gặp bài toán mới, dò bảng này để xem đã có ai giải một dạng tương tự chưa. Bấm tên dự án để quay lại case study đó.
| Mẫu thiết kế | Dùng khi | Dự án |
|---|
Thực hành: tự xây một ứng dụng dùng Jev
Giờ ta tự áp dụng Jev vào một bài toán mới: lọc bài đăng mạng xã hội cho một công ty. Đi lại đúng 6 bước ở trên, từ code cần làm gì đến ngưỡng và chi phí.
Công ty có một ứng dụng ví điện tử tên là Mango (tên giả định). Đội marketing muốn theo dõi mọi bài đăng nhắc đến Mango trên mạng xã hội để:
- bỏ qua bài không liên quan và spam,
- biết người dùng đang nói về chủ đề gì,
- báo ngay cho đội PR (đội lo hình ảnh công ty trước công chúng) khi có dấu hiệu khủng hoảng,
- chuyển cho đội sales những người đang muốn dùng thử.
Hiện nay hệ thống lọc theo từ khoá "mango" và nhận về hàng chục nghìn bài mỗi ngày, phần lớn nói về quả xoài, sinh tố xoài hay hãng thời trang cùng tên. Nhân viên phải đọc tay để lọc lại.
Bài này qua cả năm câu của checklist: cần hiểu nội dung bài viết, đáp án biết trước, khối lượng rất lớn, có hàng chờ người xem khi không chắc, và thông tin là chữ.
Trước khi dùng Jev
Khi đã nhắm một chỗ cụ thể trong hệ thống, lần lượt hỏi năm câu dưới đây. Nếu cả năm câu đều là "có" thì chỗ đó là ứng viên tốt cho Jev. Câu nào là "không" thì cột bên phải gợi ý nên làm gì.
| Câu hỏi | Nếu "không" thì |
|---|
Những việc nên giữ cách làm cũ
Trong cả bảy case study, Jev không làm một mình: code tính toán, LLM viết chữ, người xử lý ca khó. Người quản thư không cân hàng, không viết thư. Danh sách lấy từ docs của TypeSafe cho phiên bản Jev 1.13.
Jev vẫn có thể chọn sai. Nó bảo đảm câu trả lời luôn đúng định dạng và nằm trong danh sách, nhưng không bảo đảm chọn đúng. Vì vậy hãy luôn giữ đường chuyển cho người ở những ca Jev chưa chắc.