Hướng dẫn
jevchat: Biến Jev thành chatbot 'thảm họa' bằng cách tận dụng API xác suất
(giờ Việt Nam)
Tóm tắt AI
jevchat sử dụng API chấm điểm xác suất của Jev để dự đoán từng ký tự tiếp theo, tạo ra một mô hình ngôn ngữ thô sơ bằng cách lấy mẫu từ các token tiềm năng cho đến khi gặp lệnh dừng.
Chính văn · Bản dịch AI
Chúng tôi biết Jev.
jevchat biến điều đó thành một mô hình trò chuyện. Tại mỗi bước, nó đặt cho Jev một câu hỏi:
Với câu hỏi của người dùng và phản hồi đã được viết cho đến nay, ký hiệu nào sẽ xuất hiện tiếp theo?
Các tùy chọn bao gồm một bảng chữ cái cộng với một tùy chọn để dừng phát. Jev trả về xác suất cho từng tùy chọn, và bộ lấy mẫu (sampler) sẽ rút ra ký hiệu tiếp theo từ phân phối đã chuẩn hóa đó. Nối thêm, lặp lại và dừng khi lệnh STOP được rút ra.
Có sẵn một vài bảng chữ cái (bao gồm cả các danh sách token đã cắt bớt) và các chiến lược lấy mẫu.
Ý tưởng này mang tính giải trí, chi phí có phần không thực tế, và kết quả thì cực kỳ hài hước.

Đây là một thử nghiệm được tăng tốc bởi Claude. Tôi đã mô tả các thuật toán lấy mẫu, chiến lược, v.v., và nó đã triển khai chúng.
Thiết lập
Đặt khóa Jev của bạn vào tệp.env bên cạnh pyproject.toml (đã được git-ignored):
JEV_API_KEY và TYPESAFE_API_KEY cũng được chấp nhận. Các giá trị trong.env sẽ ưu tiên hơn các giá trị đã xuất, vì vậy chỉ cần chỉnh sửa tệp là đủ để chuyển đổi khóa.
Cách sử dụng
Phản hồi xuất hiện ngay khi được lấy mẫu, trong một bảng điều khiển với thông số trực tiếp về tốc độ tạo — ký hiệu/giây, ký tự/giây, mili giây mỗi lệnh gọi API, thời gian đã trôi qua — và một vài ký hiệu hàng đầu mà Jev đã chấm điểm ở bước cuối cùng, để bạn có thể theo dõi phân phối mà bộ lấy mẫu đang rút ra.
Ctrl-C để hủy. Lần nhấn đầu tiên sẽ dừng quá trình tạo sau khi yêu cầu đang thực thi trả về và giữ lại phản hồi một phần; lần nhấn thứ hai sẽ hủy bỏ ngay lập tức. Trong trò chuyện, phản hồi một phần vẫn nằm trong lịch sử hội thoại. ask sẽ thoát với mã 130 khi bị hủy.
Các lệnh trò chuyện: /help, /alphabet [name], /temp <v>, /stop-bias <v>, /reset, /stats, /exit.
Các chế độ
Có hai thứ có thể thay đổi được: cách thu được phân phối cho ký hiệu tiếp theo (-s/--strategy), và tập hợp các ký hiệu đó là gì (-a/--alphabet). Mọi sự kết hợp dưới đây đều là một lệnh có thể chạy được.
Các chiến lược
choice đặt một câu hỏi trên toàn bộ bảng chữ cái. bisect sắp xếp bảng chữ cái và đặt các câu hỏi có/không về việc sớm hơn/muộn hơn cho đến khi nhóm đủ nhỏ, sau đó đặt một câu hỏi lựa chọn bên trong nhóm đó.
Tìm kiếm chùm (Beam search)
Tốn một điểm số cho mỗi chùm đang hoạt động trên mỗi bước. Với độ rộng trên 1, temperature, top_p và top_k sẽ không còn áp dụng — các chùm được xếp hạng theo xác suất, thay vì được rút ra từ đó.
Các tùy chọn giả thuyết
Có hai cách để hỏi Jev cùng một câu hỏi. Với --presentation symbol, các tùy chọn là chính các ký hiệu — 'a', 'i', ' the' — và Jev phải nối thêm tùy chọn đó vào phản hồi trong đầu trước khi đánh giá. Các hướng dẫn đã nêu chính xác điều đó: "đánh giá ngữ pháp và chính tả dựa trên chuỗi đã nối, không phải dựa trên riêng tùy chọn đó."
Với --presentation hypothesis, các tùy chọn là các văn bản kết quả:
Việc nối thêm đã được thực hiện, vì vậy Jev chỉ xếp hạng các chuỗi đã hoàn thiện — đó là mục đích mà một mô hình quyết định được xây dựng. Đây là cải tiến lớn nhất trong dự án: trên các bảng chữ cái ký tự, nó tăng gấp ba lần top-1 và tăng gấp đôi khối xác suất rơi vào đúng ký hiệu, với ít token đầu vào hơn so với các tùy chọn ký hiệu cùng với mô tả cho từng tùy chọn.
Kiểm thử
158 bài kiểm tra, tất cả đều ngoại tuyến — một client giả lập được viết kịch bản cho vòng lặp tạo và một httpx.MockTransport cho lớp HTTP. Không cần khóa API và không cần mạng. jevchat bench là phần duy nhất thực sự gọi đến API.
Bài gốc còn tiếp — xem tiếp tại bài gốc ↗
Bài viết được AI dịch và tổng hợp tự động từ Hacker News Nổi bật (buzzing.cc bản dịch tiếng Trung). Liên kết bài gốc ở phía trên. Dữ liệu đồng bộ qua API công khai được ghi nguồn tại AI HOT (canonical) ↗. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.