- Khi người dùng nhập những cuốn sách đã đọc, mô hình khuyến nghị sẽ đề xuất cuốn sách nên đọc tiếp theo
- Kết quả tìm kiếm và gợi ý chỉ bao gồm các sách vượt ngưỡng độ phổ biến
- Những sách có độ phổ biến thấp có thể được sử dụng ở mục khác (intersect) của trang
- Khi nhập từ 3 cuốn sách trở lên, hệ thống cho kết quả gợi ý chính xác nhất
- Triển khai thử nghiệm công nghệ gợi ý đọc sách cá nhân hóa tận dụng dữ liệu đánh giá quy mô lớn
Tính năng gợi ý sách
- Khi người dùng nhập những cuốn sách đã đọc, hệ thống sẽ cung cấp kết quả gợi ý dựa trên mô hình
- Dựa trên danh sách sách đã nhập, hệ thống đề xuất những cuốn đáng để đọc tiếp theo
- Kết quả gợi ý và tìm kiếm chỉ bao gồm những đầu sách có mức độ phổ biến từ một ngưỡng nhất định trở lên
- Những sách dưới ngưỡng phổ biến sẽ bị loại khỏi kết quả gợi ý
Cách nhập và tìm kiếm
- Kết quả sẽ hiển thị khi nhập từ hai ký tự trở lên vào ô tìm kiếm
- Những cuốn sách người dùng chọn sẽ hiển thị trong vùng ‘Selected Books’,
nếu chưa chọn cuốn nào thì sẽ xuất hiện dòng “No books selected yet”
Tính năng bổ sung
- Những sách có độ phổ biến thấp có thể được sử dụng riêng trên trang /intersect
- Khi nhập từ 3 cuốn sách trở lên, độ chính xác của gợi ý được cải thiện
Tổng quan dịch vụ
- Trang web sử dụng mô hình khuyến nghị dựa trên dữ liệu đánh giá Goodreads quy mô lớn (3 tỷ bài)
- Mục tiêu là mang đến trải nghiệm gợi ý sách cá nhân hóa theo lịch sử đọc của người dùng
- Bản gốc không có thêm chi tiết kỹ thuật hay giải thích về thuật toán
1 bình luận
Ý kiến Hacker News
Trong đó ghi rằng không được “sửa đổi, sao chép, phân phối hoặc sử dụng nội dung trong dịch vụ để tạo tác phẩm phái sinh”, nên có vẻ cần sự cho phép rõ ràng nếu muốn dùng nội dung của người viết đánh giá để huấn luyện LLM
Tính hợp pháp của việc scraping phụ thuộc vào khu vực tài phán. Ở Mỹ, nhờ án lệ HiQ Labs v. LinkedIn, việc cào dữ liệu từ các trang web công khai được công nhận là không vi phạm CFAA. Vì vậy mới xuất hiện rất nhiều startup scraping dữ liệu công khai
Thông tin hiển thị trên site chỉ là tiêu đề và tác giả, mà những thứ đó không thuộc sở hữu của Goodreads.
Có thể vẫn vướng điều khoản “tạo tác phẩm phái sinh”, nhưng khó coi việc đề xuất sách dựa trên review là hành vi xâm phạm.
Nó tương tự như một YouTuber làm video kiểu “đọc 50 review rồi đề xuất sách”
Nhưng tôi có vài đề xuất
Nếu danh sách sách tôi đã đọc đủ nhiều, sẽ hay hơn nếu nó tìm những độc giả giống tôi (‘eigenfriends’) rồi gợi ý các cuốn gây tranh cãi hoặc hợp gu thiểu số mà họ đã đọc
Lần tới sẽ thú vị nếu có thể kết nối VLM để nhập bằng ảnh chụp giá sách
Ví dụ, nếu nhập “Lenin’s Tomb” và “Secondhand Time”, bạn có thể xem những sách khác mà những người đã đọc cả hai cuốn đó cũng đọc.
Cách này tương tự Filmaffinity. Họ đưa ra gợi ý dựa trên nhóm người dùng có gu tương tự gọi là ‘soulmates’
Cá nhân tôi nghĩ thay vì sách gây tranh cãi thì lọc theo bạn bè có gu khác nhau sẽ mang lại gợi ý mới mẻ hơn
Nhưng nếu thêm một cuốn trong series (ví dụ Discworld #33), thì cả series đó sẽ thống trị phần gợi ý. Tôi muốn loại trừ những series mình đã đọc rồi
Ngoài ra có vài cuốn có trên Goodreads nhưng không tìm thấy khi tìm kiếm. Có vẻ chúng bị thiếu trong dataset
Khi bấm nút “Similar”, tôi lại thấy những cuốn giống về hình thức nhưng khác về ngữ cảnh.
Dù vậy với các sách phổ thông hơn thì kết quả khá khớp với wishlist của tôi
Tôi đã phát hành vì các chỉ số test và kiểm tra chất lượng đều ổn, nhưng có lẽ giải pháp sẽ là dùng mô hình transformer để tạo 100~200 ứng viên rồi áp dụng reranker
Hiện tại nó gần với gợi ý dựa trên nội dung, nhưng về sau sẽ phải tính cả các chỉ số như serendipity và novelty
Trong dịch vụ thực tế, việc dùng nhiều bộ gợi ý cho các mục tiêu khác nhau rồi kết hợp có trọng số thường hiệu quả hơn
Ví dụ có thể trộn gợi ý dựa trên nội dung, dựa trên đồ thị, mô hình cho mục tiêu cụ thể, thậm chí cả loại dựa trên TF‑IDF/BM25/Splade
Vì mỗi người muốn được gợi ý theo cách khác nhau, nên điều chỉnh trọng số theo từng người dùng là mấu chốt
Nếu tôi đã thích tác giả đó thì tự tôi cũng sẽ tìm các tác phẩm khác của họ, nên gợi ý sách cùng tác giả không có nhiều ý nghĩa
Gợi ý thực sự thú vị là thứ vừa (1) hợp gu tôi vừa (2) bất ngờ
Những gợi ý quá giống nhau có nguy cơ tạo ra buồng vang
Nhiều khi người ta không biết một tác giả mình từng đọc còn có tác phẩm nào khác
Nhưng sẽ tốt hơn nếu có thể thêm cả tín hiệu tiêu cực (negative signal) cho những cuốn tôi ghét
Nhìn chung kết quả khá ấn tượng
Bỏ qua vấn đề pháp lý, tôi vẫn thấy điều này không phù hợp về mặt đạo đức
Mục cuối cùng được phản ánh là có mức liên quan cao nhất khi dự đoán tương tác tiếp theo
Nếu thêm nhiều sách hơn thì hiệu ứng này sẽ giảm bớt
Hiện đang ở giai đoạn beta kín trên TestFlight và sẽ sớm phát hành công khai
Khi đó đa số đều nói là bất khả thi, nhưng giờ có vẻ đã làm được
Dù vậy, nếu đã có dataset lớn như vậy thì tôi vẫn băn khoăn liệu AI có thật sự cần thiết không
Thay vì các mô hình như SASRec/RAG, có lẽ chỉ cần xếp hạng đơn giản và tính giao tập như last.fm ngày xưa cũng cho kết quả tương tự
Trước đây tôi từng hình dung một cấu trúc đồ thị ‘bộ não’ cho hệ gợi ý, nơi điểm số được lan truyền dọc theo các liên kết giữa các item.
Có lẽ ở những nơi như Amazon cũng đang dùng một biến thể kiểu này
Nếu không biết người dùng đã xem gì hay có gu ra sao, thì không thể gợi ý chính xác “một bộ phim họ sẽ thích nhưng chưa xem”
Rốt cuộc đây là hệ thống gợi ý tổng quát trở nên khả thi khi nới lỏng ràng buộc thông tin