Hãy yêu cầu một AI gợi ý một chiếc laptop, sau đó nói với nó rằng bạn cần thứ gì đó nhẹ hơn. Nếu hệ thống đọc tin nhắn thứ hai đó như một yêu cầu độc lập, bạn có thể nhận được một danh sách các máy ultrabook. Hoặc bạn có thể nhận được một đống máy trạm chơi game khác vì nó chưa bao giờ ghi nhận rằng bạn đã từ chối đợt đầu tiên do quá nặng. Điều này xảy ra vì nhiều hệ thống AI vẫn xếp hạng các phản hồi bằng cách chỉ nhìn vào một câu lệnh riêng lẻ. Chúng coi mỗi tin nhắn như sự bắt đầu của một tìm kiếm mới, phớt lờ câu chuyện đang diễn ra của cuộc hội thoại.

Cách tiếp cận này bỏ lỡ những sắc thái của một cuộc trò chuyện dài. Đối thoại giữa con người xây dựng ý nghĩa qua từng lượt lời. Chúng ta mặc định rằng trí nhớ, ý định và sở thích sẽ được tiếp nối. Khi AI không làm được điều tương tự, nó mang lại cảm giác ít giống như đang nói chuyện với một trợ lý, mà giống như đang ném các truy vấn vào một hộp tìm kiếm vốn sẽ tự đặt lại sau mỗi lần nhấp chuột. Để khắc phục điều này, chúng ta cần thay đổi cách xếp hạng các câu trả lời khả thi. Thay vì hỏi xem phản hồi nào phù hợp với câu văn này, chúng ta cần hỏi xem phản hồi nào phù hợp với người này, ngay lúc này, dựa trên tất cả những gì chúng ta đã thảo luận.

Có hai yếu tố giúp điều đó trở nên khả thi: cá nhân hóa và lịch sử.

Tại sao Xếp hạng Đơn lượt (Single-Turn Ranking) lại thất bại

Việc xếp hạng phản hồi truyền thống bắt nguồn từ các bộ dữ liệu hỏi-đáp. Một mô hình nhận một câu lệnh, tạo ra một tập hợp các câu trả lời ứng viên, và một bộ xếp hạng (ranker) sẽ chấm điểm từng câu dựa trên duy nhất câu lệnh đó. Ứng viên có điểm cao nhất sẽ thắng. Điều đó hiệu quả đối với các sự thật riêng lẻ. Nhưng nó thất bại đối với các công việc đang diễn ra.

Hãy tưởng tượng một người dùng đang lên kế hoạch cho một chuyến đi. Trong lượt đầu tiên, họ hỏi về các khách sạn giá rẻ ở Bangkok. Mô hình gợi ý một danh sách gần đường Khao San. Người dùng trả lời: "Những chỗ đó trông có vẻ ồn ào quá. Tôi có con nhỏ, nên tôi cần một hồ bơi và lối đi thuận tiện đến tàu điện Skytrain." Một bộ xếp hạng đơn lượt chỉ nhìn thấy câu thứ hai. Nó có thể trả về một danh sách chung chung các khu nghỉ dưỡng gia đình rải rác khắp Thái Lan, bỏ lỡ các ràng buộc cụ thể đã được thiết lập trước đó: Bangkok, tiết kiệm ngân sách, yên tĩnh, có hồ bơi, gần phương tiện giao thông công cộng.

Kết quả là về mặt kỹ thuật thì đúng chủ đề nhưng về mặt thực tế thì vô dụng. Người dùng phải lặp lại ngữ cảnh. Sự khó chịu tăng lên. Niềm tin giảm xuống.

Cá nhân hóa: Ai đang hỏi

Cá nhân hóa có nghĩa là điều chỉnh các câu trả lời theo sở thích và dữ liệu cụ thể của người dùng. Nó trả lời cho câu hỏi: người này là ai?

Điều này không chỉ dừng lại ở việc chèn tên vào lời chào. Nó có nghĩa là hệ thống biết được, thông qua các hồ sơ rõ ràng hoặc các mẫu hành vi đã học được, người dùng muốn thông tin được truyền tải như thế nào. Một lập trình viên thường xuyên yêu cầu các ví dụ về Python nên thấy các mẫu mã Python ngay cả khi truy vấn của họ đề cập đến một tác vụ lập trình chung, trừ khi họ có yêu cầu khác. Một người ăn chay đã hỏi về các công thức nấu ăn vào tuần trước sẽ không phải nhắc lại hệ thống để loại bỏ thịt. Một người thích các gạch đầu dòng ngắn gọn hơn là văn xuôi nên nhận được các gạch đầu dòng.

Các tín hiệu cụ thể có thể bao gồm sở thích tự báo cáo, hành vi trong quá khứ qua các phiên làm việc, hoặc siêu dữ liệu (metadata) như vị trí và loại thiết bị. Chìa khóa là các tín hiệu này phải được đưa vào giai đoạn xếp hạng, chứ không chỉ là giai đoạn tạo câu trả lời. Khi các phản hồi ứng viên được chấm điểm, bộ xếp hạng nên ưu tiên các câu trả lời phù hợp với hồ sơ đã biết.

Ví dụ, nếu hai phản hồi ứng viên đều trả lời đúng câu hỏi "Làm thế nào để tôi sao lưu ảnh của mình?" nhưng một bên gợi ý lưu trữ đám mây và bên kia gợi ý ổ cứng NAS cục bộ, bộ xếp hạng nên biết rằng người dùng cụ thể này trước đó đã bày tỏ sự quan tâm đến quyền sở hữu ngoại tuyến và quyền riêng tư. Tùy chọn NAS nên có điểm cao hơn. Nếu không có cá nhân hóa, mô hình sẽ giống như đang tung đồng xu để quyết định.

Lịch sử: Những gì đã được nói trước đó

Lịch sử có nghĩa là sử dụng các lượt hội thoại trước đó để dẫn dắt phản hồi tiếp theo. Nó trả lời cho câu hỏi: chúng ta đã thiết lập được những gì?

Ngay cả những đại từ đơn giản cũng cần đến lịch sử. Khi người dùng nói "Làm cho nó màu xanh đi", mô hình phải biết "nó" đang ám chỉ cái gì. Tham chiếu đó nằm ở một lượt hội thoại trước. Trong các cuộc hội thoại dài hơn, các sự phụ thuộc trở nên phức tạp hơn. Các ràng buộc tích tụ dần. Người dùng có thể từ chối một lựa chọn, điều chỉnh một yêu cầu, hoặc đưa ra một mục tiêu mới mà