Bài báo Beyond Retrieval: A Multitask Benchmark and Model for Code Search đặt lại một vấn đề rất thực tế: tìm kiếm code hiện nay không chỉ phục vụ lập trình viên, mà còn là nền tảng cho các AI coding agent như SWE-agent, OpenHands hay Cursor khi chúng cần tìm đúng file, đúng hàm, đúng đoạn mã trước khi sửa code. Tuy nhiên, nhiều benchmark cũ chỉ đo bước embedding/retrieval, bỏ qua bước reranking, trong khi hệ thống thật thường dùng pipeline hai giai đoạn: tìm nhanh trước, xếp hạng lại sau.

Nhóm tác giả giới thiệu COREB, một benchmark mới cho code retrieval và reranking, được xây từ các bài LiveCodeBench đã viết lại để giảm nguy cơ mô hình “nhớ đề”. COREB bao phủ 3 nhiệm vụ: text-to-code, code-to-text và code-to-code; gồm 5 ngôn ngữ lập trình như Python, Java, C++, Ruby và Go; tổng cộng 5.087 truy vấn qua hai bản phát hành. Dữ liệu được chấm bằng kết quả chạy code, có nhiều mức liên quan thay vì chỉ đúng/sai một đáp án.

Kết quả đáng chú ý: không có mô hình nào thắng tất cả nhiệm vụ. Embedding chuyên cho code vượt mô hình tổng quát rõ nhất ở code-to-code, có lúc khoảng gấp đôi. Nhưng khi truy vấn ngắn giống cách lập trình viên hay tìm kiếm thật, mọi mô hình gần như sụp xuống mức near-zero nDCG@10. Reranking cũng rất nhạy: baseline có thể lệch nhau 12 điểm ở code-to-code, và không reranker có sẵn nào cải thiện đồng đều mọi tác vụ; chỉ COREB-RERANKER được tinh chỉnh riêng đạt tăng trưởng nhất quán.

Posted in