- Các bài đánh giá tìm “thông tin có mặt” trong ngữ cảnh dài đã cải thiện nhanh chóng, nhưng AbsenceBench cho thấy năng lực tìm thông tin bị thiếu bằng cách so sánh bản gốc và bản đã chỉnh sửa vẫn còn yếu
- Benchmark gồm 3 miền: thơ, chuỗi số, diff PR GitHub, với 4.302 instance, ngữ cảnh trung bình 5K token và tỷ lệ thiếu mặc định là 10%
- Ngay cả khi đánh giá 14 LLM như GPT-4, Claude-3.7-Sonnet, Gemini-2.5-flash, o3-mini, Grok-3-mini, DeepSeek-R1, hiệu năng của các mô hình mới nhất vẫn bị giới hạn; Claude-3.7-Sonnet chỉ đạt 69,6% F1-score ở mức trung bình 5K token
- F1-score của AbsenceBench giảm trung bình 56,9% so với NIAH; các mô hình tính toán tại thời điểm suy luận cũng chỉ cải thiện hiệu năng 7,9% dù dùng thêm trung bình 8K thinking token
- Khi chèn placeholder rõ ràng vào vị trí bị thiếu, hiệu năng tăng trung bình 35,7%, củng cố cách diễn giải rằng Transformer attention khó chú ý đến “khoảng trống” trong tài liệu
Câu hỏi AbsenceBench đặt ra
- Gần đây, LLM thể hiện hiệu năng cao trong các tác vụ ngữ cảnh dài, và trong bài kiểm tra Needle-in-a-Haystack(NIAH), chúng cho thấy khả năng tìm một thông tin nhỏ, khác biệt trong đầu vào rất dài
- AbsenceBench đánh giá vấn đề theo hướng ngược lại
- Thay vì tìm thông tin có trong đầu vào, mô hình phải tìm thông tin rõ ràng bị thiếu
- Mô hình được cung cấp cả tài liệu gốc và tài liệu đã chỉnh sửa, trong đó một số phần tử đã bị xóa
- Đầu ra phải là tập hợp chính xác các phần tử bị thiếu trong tài liệu đã chỉnh sửa
- Tác vụ này có quy tắc đơn giản và đáp án rõ ràng, nhưng ngay cả các mô hình đóng tiên tiến nhất cũng cho hiệu năng thấp
Định nghĩa tác vụ và cấu trúc dữ liệu
- AbsenceBench là dạng sinh có kiểm soát, trong đó một số phần tử
Domitđược cố ý loại bỏ khỏi tài liệu gốcDorigđể tạo tài liệu đã chỉnh sửaDmodified, rồi yêu cầu mô hình tìm các phần tử đã bị loại bỏ - “document length” nghĩa là số token của tài liệu gốc, còn “context length” nghĩa là tổng số token của toàn bộ đầu vào mô hình
- Toàn bộ benchmark gồm 4.302 instance, với độ dài ngữ cảnh trung bình là 5K token
- Kho mã nguồn được công khai tại harvey-fin/absence-bench
- Việc đo độ dài token dùng GPT-4 Tokenizer
Thơ, chuỗi số, diff PR GitHub
-
Thơ(Poetry)
- Sử dụng thơ từ Gutenberg Poetry Corpus
- Áp dụng thiếu theo từng dòng, với ký tự newline làm dấu phân tách dòng
- Để đa dạng hóa độ dài tài liệu, mỗi bài thơ được cắt sao cho số dòng phân bố đều trong khoảng 100~1000
-
Chuỗi số
- Tạo tổng cộng 1.200 chuỗi số tổng hợp
- Các số được sắp xếp theo một trong ba kiểu: tăng dần, giảm dần hoặc thứ tự ngẫu nhiên
- Step size giữa các số liên tiếp là một trong các giá trị 1, 4, 7, 13
- Số đầu tiên được chọn ngẫu nhiên trong khoảng 0~9999
-
Diff PR GitHub
- Thu thập PR từ 20 repository có số PR nhiều nhất bằng dữ liệu GitHub công khai và GitHub API
- Chỉ giữ các PR có 10~200 dòng được cập nhật trong diff
- Trong các dòng cập nhật bắt đầu bằng
+hoặc-, chỉ các dòng duy nhất trong mỗi PR diff mới được chọn làm đối tượng bị thiếu - LLM giải quyết và kiểm chứng merge conflict cần có khả năng phát hiện phần thiếu trong file diff, nên điều này gắn với trường hợp sử dụng thực tế
Giới hạn bộc lộ qua đánh giá 14 LLM
- Tổng cộng có 14 LLM được đánh giá
- Bao gồm các mô hình mới nhất như GPT-4, Claude-3.7-Sonnet, Gemini-2.5-flash
- Bao gồm các mô hình tính toán tại thời điểm suy luận như o3-mini, Grok-3-mini, DeepSeek-R1
- Claude-3.7-Sonnet và Gemini-2.5-flash được đánh giá tách riêng theo việc có dùng tính toán tại thời điểm suy luận hay không
- Các mô hình mới nhất cũng không đạt hiệu năng ổn định trên AbsenceBench
- Claude-3.7-Sonnet ghi nhận 69,6% F1-score với ngữ cảnh trung bình 5K token
- Ngữ cảnh càng dài, tác vụ càng khó; khác biệt đặc biệt nổi bật ở miền thơ
- Tính toán tại thời điểm suy luận chỉ cải thiện hiệu năng trung bình 7,9%
- Đổi lại, mô hình tạo thêm trung bình 8K thinking token
- Con số này gần gấp 3 lần độ dài tài liệu trung bình
- Cũng xuất hiện kết quả rằng tỷ lệ thiếu càng thấp thì hiệu năng mô hình lại càng kém
Kiểu thất bại khác với NIAH
- AbsenceBench tỏ ra là tác vụ khó hơn nhiều đối với LLM so với NIAH
- Khi so sánh ba LLM trong thiết lập AbsenceBench và thiết lập NIAH gốc, F1-score giảm trung bình 56,9%
- Transformer attention có thể gặp khó khăn khi xử lý gap trong tài liệu
- Vì phần bị thiếu không tương ứng với một key cụ thể để attention hướng tới
- Trong thí nghiệm chèn chuỗi placeholder vào vị trí bị thiếu, hiệu năng tăng trung bình 35,7%
- Ví dụ là chèn token như
<missing line>vào vị trí dòng bị thiếu
- Ví dụ là chèn token như
- Kết quả này cho thấy LLM có thể yếu hơn trong việc nhận diện tình huống thông tin “bị thiếu” so với tình huống thông tin “được chèn vào”
- Với các cách dùng như LLM-as-a-Judge, nơi cần nhận ra chính xác thông tin bị thiếu, giới hạn này có thể dẫn đến rủi ro thực tiễn
1 bình luận
Ý kiến trên Hacker News
Sau khi xem bài giảng của Gerald Sussman, tôi đưa ảnh Kanizsa triangle vào Claude và hỏi khá mơ hồ rằng liệu nó có thể “nhìn thấy” tam giác được suy ra không; nó nhận ra ảnh và lập tức đưa ra tóm tắt
Vì vậy tôi xoay ảnh 90 độ rồi thử lại trong một cuộc trò chuyện mới, thì nó không nhận ra ảnh và còn đếm sai số lượng thành phần
Với ảnh đã xoay, Claude mô tả rằng có 4 hình đen giống Pac-Man ở bốn góc, 1 tam giác mảnh chỉ lên trên và 1 tam giác mảnh chỉ sang phải, cùng nền màu xám nhạt
Tháng 10 năm 2011, 30 bình luận
https://news.ycombinator.com/item?id=3163473
Video Strange Loop:
Tháng 7 năm 2011, 36 bình luận
https://news.ycombinator.com/item?id=2820118
Việc LLM còn một chặng đường dài trước khi xử lý hình ảnh như xử lý văn bản hay âm thanh là điều đã được biết rõ
Tôi cho rằng hầu như không có mô hình đa phương thức nào nhận trực tiếp pixel ảnh mà vẫn đạt hiệu năng tốt. Phần lớn năng lực thị giác gần như là các mẹo hack hoặc phần ghép thêm bằng kỹ thuật; ảnh đi qua nhiều bước xử lý, rồi đầu ra của từng bộ xử lý mới được đưa vào transformer dưới dạng token. Chuyện đó có thể diễn ra trong cùng một mạng, nhưng cũng có các mạng không phải transformer tham gia. Ví dụ tiền xử lý có thể gồm OCR, CNN (bộ nhận dạng mẫu 2D) dùng nhiều mức phóng đại, góc xoay và lát cắt, cùng những thứ khác
Tôi nghĩ ví dụ đơn giản này hé lộ cốt lõi của trí thông minh. Ta nhận ra tam giác vì độ phức tạp lớn của 1.000 điểm đó khớp với một dạng hình học entropy thấp và đơn giản
Tôi cho rằng thứ chúng ta gọi là IQ gần giống với giới hạn trên của độ phức tạp mẫu hình mà ta có thể nhận ra. Chẳng hạn, 1.000 điểm đó thực ra có thể là các đỉnh của một siêu lập phương 10 chiều hơi bị xoay, và với một trí tuệ 10 chiều thì đó có thể là mẫu hình rất dễ thấy
Thú vị. Ngay cả các mô hình mới nhất, khi được cung cấp cả ngữ cảnh gốc lẫn ngữ cảnh đã chỉnh sửa, vẫn có hiệu năng tương đối thấp trong việc xác định thông tin nào đã bị xóa khỏi ngữ cảnh
Các tác giả cho rằng hiệu năng thấp là do cơ chế chú ý của transformer không thể chú ý đến các token đã bị xóa vì chúng không có key
Nhìn từ góc độ cơ chế chú ý, không có khác biệt lớn giữa
Original: {tiền tố chung} {phần bị xóa} {hậu tố chung} Modified: {tiền tố chung} {hậu tố chung}vàOriginal: {tiền tố chung} {hậu tố chung} Modified: {tiền tố chung} {phần được thêm} {hậu tố chung}Với RASP (ngôn ngữ để lập trình transformer thủ công), có lẽ có thể tạo một thuật toán đại khái như sau. Tầng 1 chú ý đến các token
"Original:"và"Modified:"để xác định token hiện tại thuộc phía bản gốc hay bản sửa đổi. Tầng 2 có một head chú ý đồng đều đến mọi token bản gốc để lấy trung bình giá trị, và một head khác lấy trung bình mọi token bản sửa đổi, rồi tính chênh lệch giữa hai trung bình. Tầng 3 chú ý đến token tương tự với phần chênh lệch này, và đó sẽ là{phần bị xóa}hoặc{phần được thêm}Phần duy nhất phụ thuộc vào thứ tự là tính chênh lệch theo
trung bình bản gốc - trung bình bản sửa đổihay ngược lạiNếu mô hình phát hiện được phần thêm nhưng không phát hiện được phần xóa, điều đó có thể có nghĩa là về nguyên tắc nó có khả năng học thuật toán này hoặc thuật toán tương tự, nhưng do thiếu dữ liệu kiểu xóa nên mạch cần thiết chưa phát triển
Rất thú vị. 1) Các tác giả nói rằng vì khoảng trống không phải là token, cơ chế chú ý có thể không chú ý được đến vị trí khoảng trống, nhưng tôi từng kỳ vọng một transformer LLM tốt ít nhất cũng có thể tiến khá gần đến vùng quanh khoảng trống
Tôi chưa hiểu rõ về mặt toán học vì sao cấu trúc này lại kém phù hợp hơn. Có vẻ vẫn có thể chú ý đến khu vực có thể chứa khoảng trống. Tôi cũng tự hỏi liệu tinh chỉnh trên các tác vụ như vậy có giúp ích không
2) Đầu vào càng ngắn và phần bị thiếu càng ít thì càng khó. Ngay cả con người khi làm tác vụ này cũng khó nhận ra thiếu 1 từ hơn, và thiếu một dòng khó hơn thiếu mười dòng, nên điều đó không hoàn toàn gây ngạc nhiên. Dù vậy, việc LLM gặp vấn đề như thế này vẫn rất thú vị
3) Các mô hình suy luận làm tốt hơn vì chúng có thể tự viết tài liệu ra trong lúc giải. Nhưng việc độ chính xác vẫn không đạt 100% vẫn rất đáng ngạc nhiên. Đây lẽ ra phải là một tác vụ tầm thường, và như bài báo nói, có thể giải bằng một chương trình đơn giản. Một agent như ChatGPT có thể đọc bài báo này trong quá trình huấn luyện và biết rằng khi gặp bài toán kiểu này thì nên viết Python rồi chạy
Phần thú vị nhất là còn những khía cạnh nào khác của trí thông minh mà chúng ta vẫn chưa xác định rõ, và liệu LLM cùng AI hiện nay có rất yếu ở những khía cạnh đó hay không. Bài báo này gợi ý rằng có thể có nhiều khía cạnh như vậy, và nhìn chung đây có vẻ là giai đoạn khá thú vị đối với những người tạo benchmark
Công bằng mà nói, việc tìm khác biệt chuỗi theo đúng nghĩa đen tôi sẽ xếp cùng nhóm với chuyện bắt LLM làm số học máy móc
Cơ chế chú ý suy nghĩ quá phức tạp so với kiểu tác vụ ngớ ngẩn này. Đây chính là trường hợp cần cố ý đơn giản hóa, tập trung và xử lý có kỷ luật, thay vì dự đoán token tiếp theo ở mức cao
Sẽ hữu ích nếu thực sự yêu cầu LLM liệt kê và so sánh toàn bộ tài liệu. Đó là cách chia nhỏ thành các bước giống như suy luận, tương tự việc LLM làm tốt hơn khi tách bài toán số học hay đại số thành các bước nhỏ
Tôi đoán các mô hình có hiệu năng tốt có thể là mô hình MoE. Có thể có một hoặc hai chuyên gia phù hợp với những tác vụ cần sự tập trung hơn là trực giác. Tôi hoàn toàn không biết gì về Gemini Flash, nhưng nghĩ nó có vẻ là mô hình MoE
Tôi chưa đọc bài báo, nhưng từ góc nhìn cơ chế chú ý có cấu trúc, việc không phát hiện được phần thiếu không được phân loại là hoàn toàn có thể dự đoán. Tuy vậy, tôi nghĩ vẫn có thể giải bằng tư duy có cấu trúc
Trong bài toán tìm kim trong đống rơm, chỉ cần chú ý vào đối tượng cần tìm, và cơ chế chú ý làm việc này khá tốt
Khi tìm phần bị thiếu, phần thiếu đó có thể là bất cứ thứ gì, nên chỉ có thể suy ra bằng cách so sánh toàn bộ một ngữ cảnh với toàn bộ ngữ cảnh khác. Các tầng chú ý khó làm tốt việc đó
Việc này giống bài toán “xếp hạng một tập mục dài”. Nếu không có một quá trình siêu nhận thức nào đó thì đơn giản là không làm được
Ví dụ kiểu như “đây là một bài thơ, và đây là một phiên bản của cùng bài thơ có thể đã bị thiếu vài dòng. Có dòng nào bị thiếu không?”
Theo tôi, đây gần với vấn đề tinh chỉnh hơn là một điểm yếu bản chất của LLM
Nếu tôi được yêu cầu tìm phần thiếu trong một bài báo machine learning, não tôi sẽ so sánh nó với các bài báo machine learning khác, chứ không cần so sánh với Star Wars, Top Gear, lịch sử Hy Lạp, đồ gốm và hàng nghìn ngữ cảnh khác mà tôi biết
Những phê bình về cách làm của AbsenceBench là hợp lý, nhưng bản thân việc benchmark những thứ như thế này đã rất đáng mừng. Rõ ràng đây là một động thái đẩy đúng hướng
Khi phát hiện sự hiện diện, bộ não thật nhận đầu vào cảm giác, so sánh với kỳ vọng, duy trì trạng thái bình thản hoặc ghi nhận sự ngạc nhiên, và đôi khi đưa ra dự đoán để dẫn dắt sinh vật
Khi phát hiện sự vắng mặt, theo định nghĩa não không thể dựa vào đầu vào cảm giác. Để ngạc nhiên khi không có bằng chứng cảm giác, cần một mô hình thế giới đủ mạnh để ngạc nhiên trước việc kỳ vọng không được đáp ứng dù không có manh mối cảm giác
Phát hiện sự vắng mặt có vẻ là một tác vụ thần kinh học ở bậc cao hơn hẳn so với xử lý đầu vào cảm giác
Nếu LLM không làm được tác vụ thần kinh học bậc cao hơn này, liệu đây có phải là một năng lực hiện chỉ có ở sinh vật sống không?
Điều bạn mô tả liên quan đến trí nhớ. Trí nhớ là việc lưu trữ và phát lại đầu vào cảm giác khi không có đầu vào cảm giác. Vì vậy não phát lại đầu vào cảm giác trong quá khứ và đối chiếu với đầu vào cảm giác hiện tại
Ví dụ, nếu bạn đặt cây bút lên bàn rồi đi ra ngoài, khi quay lại không thấy cây bút nữa, não sẽ so sánh ký ức đã lưu về cây bút trên bàn với những gì đang nhìn thấy hiện tại
LLM có vẻ yếu ở khác biệt chuỗi. Nhân tiện, tôi tò mò liệu có tài liệu kiểu kho GitHub nào tổng hợp các phát hiện như thế này về những gì LLM làm tốt và không tốt không
Benchmark tệ
Tôi thử prompt [1] của họ với 3 mục được đánh số, và qwq-32b đoán đúng không vấn đề gì. Tôi nghĩ với 100 mục nó cũng có thể giải chính xác 100%, nhưng có lẽ sẽ cần 1 triệu token. Có khi còn hơn 10 triệu token
Giới hạn 5.000 token là quá ít đối với mô hình suy luận. Cần cho nhiều tính toán ở thời điểm kiểm thử, và gấp 10 lần 5.000 token có lẽ vẫn chưa đủ
Nếu tác giả nói về đầu vào dài, thì với 100 trang phải cho 1 tỷ token
Cách triển khai đúng là xử lý theo lô. Tìm 5 mục đánh số đầu tiên trong văn bản đầu vào bị thiếu, nếu tìm thấy thì đơn giản hóa mục đầu vào và mục trong đầu vào bị thiếu rồi tiếp tục, đại loại vậy
Tùy theo kích thước đầu vào, lúc nào cũng sẽ cần khá nhiều token, nhưng việc đơn giản hóa sẽ giúp quay lại đúng cách và không mất hoàn toàn ngữ cảnh
[1] Bạn đang giúp một học sinh luyện thuộc thơ. Học sinh đọc bài thơ nhưng có thể đã bỏ sót vài dòng. Nhiệm vụ của bạn là xác định chính xác những dòng nào bị thiếu trong phần đọc. Chỉ liệt kê các dòng bị thiếu và không viết gì khác. Tin nhắn người dùng: Đây là bài thơ gốc đầy đủ: 1)Quisella's lashes fluttered panic-morse. 2)The Moisture Vampires leeches that sucked humidity. 3)Lysandra's nostrils flared precisely one degree. Bây giờ đây là phần đọc của tôi, có thể đã bị thiếu dòng: Quisella's lashes fluttered panic-morse. Lysandra's nostrils flared precisely one degree. Tôi đã bỏ sót dòng nào? Chỉ liệt kê các dòng bị thiếu và không viết gì khác
[1] https://gist.github.com/pramatias/fee1391ad08c7b965f435f3af1...
Tôi tò mò điều này sẽ áp dụng thế nào với mô hình thị giác. Khi thử với vài ví dụ ảnh đơn lẻ thì có vẻ chúng làm khá tốt
Trong vài ví dụ đồ chơi, Claude và Gemini có vẻ tìm điểm khác biệt khá tốt. Ảnh ví dụ: https://www.pinterest.com/pin/127578601938412480/
Khi lật ảnh thì có vẻ chúng gặp khó hơn, và cũng có khả năng tìm ra ít khác biệt hơn hoặc sinh ảo giác