Thiết kế các bài đánh giá kỹ thuật có khả năng chống lại AI
Tác giả: Tristan Hume, trưởng nhóm tối ưu hiệu năng tại Anthropic. Tristan đã thiết kế—và tái thiết kế—bài kiểm tra tại nhà giúp Anthropic tuyển dụng hàng chục kỹ sư hiệu năng.
Việc đánh giá ứng viên kỹ thuật trở nên khó khăn hơn khi năng lực AI ngày càng tiến bộ. Một bài kiểm tra tại nhà hôm nay có thể phân biệt rõ ràng giữa các cấp độ kỹ năng của con người, nhưng ngày mai có thể bị các mô hình giải quyết một cách dễ dàng—khiến nó trở nên vô dụng trong việc đánh giá.
Kể từ đầu năm 2024, nhóm kỹ thuật hiệu năng của chúng tôi đã sử dụng một bài kiểm tra tại nhà, nơi ứng viên tối ưu hóa mã cho một bộ tăng tốc mô phỏng. Hơn 1.000 ứng viên đã hoàn thành nó, và hàng chục người hiện đang làm việc tại đây, bao gồm các kỹ sư đã vận hành cụm Trainium của chúng tôi và phát hành mọi mô hình kể từ Claude 3 Opus.
Nhưng mỗi mô hình Claude mới lại buộc chúng tôi phải thiết kế lại bài kiểm tra. Khi được cho cùng một giới hạn thời gian, Claude Opus 4 đã vượt trội hơn hầu hết ứng viên con người. Điều đó vẫn cho phép chúng tôi phân biệt được những ứng viên mạnh nhất—nhưng sau đó Claude Opus 4.5 còn sánh ngang với cả những người đó. Con người vẫn có thể vượt trội hơn các mô hình khi có thời gian không giới hạn, nhưng dưới những ràng buộc của bài kiểm tra tại nhà, chúng tôi không còn cách nào để phân biệt giữa đầu ra của ứng viên hàng đầu và mô hình mạnh nhất của mình.
Giờ đây, tôi đã lặp lại qua ba phiên bản của bài kiểm tra tại nhà nhằm đảm bảo nó vẫn mang lại tín hiệu. Mỗi lần, tôi lại học được điều gì đó mới về điều gì làm cho các bài đánh giá trở nên mạnh mẽ trước sự hỗ trợ của AI và điều gì thì không.
Bài viết này mô tả thiết kế bài kiểm tra tại nhà ban đầu, cách mỗi mô hình Claude đã đánh bại nó, và những cách tiếp cận ngày càng bất thường mà tôi phải thực hiện để đảm bảo bài kiểm tra của chúng tôi đi trước khả năng của mô hình hàng đầu. Trong khi công việc chúng tôi làm đã phát triển cùng với các mô hình, chúng tôi vẫn cần nhiều kỹ sư giỏi hơn—chỉ là ngày càng cần những cách sáng tạo hơn để tìm ra họ.
Vì mục đích đó, chúng tôi đang phát hành bài kiểm tra tại nhà ban đầu như một thử thách mở, vì với thời gian không giới hạn, hiệu suất tốt nhất của con người vẫn vượt quá những gì Claude có thể đạt được. Nếu bạn có thể đánh bại Opus 4.5, chúng tôi rất muốn nghe từ bạn—chi tiết ở cuối bài viết này.
Vào tháng 11 năm 2023, chúng tôi đang chuẩn bị huấn luyện và ra mắt Claude Opus 3. Chúng tôi đã có được các cụm TPU và GPU mới, cụm Trainium lớn của chúng tôi sắp ra mắt, và chúng tôi đang chi tiêu nhiều hơn đáng kể so với trước đây cho các bộ tăng tốc, nhưng chúng tôi không có đủ kỹ sư hiệu năng cho quy mô mới. Tôi đã đăng trên Twitter yêu cầu mọi người gửi email cho chúng tôi, điều này mang lại nhiều ứng viên triển vọng hơn mức chúng tôi có thể đánh giá qua quy trình phỏng vấn tiêu chuẩn, một quy trình tiêu tốn nhiều thời gian cho cả nhân viên và ứng viên.
Chúng tôi cần một cách để đánh giá ứng viên hiệu quả hơn. Vì vậy, tôi đã dành hai tuần để thiết kế một bài kiểm tra tại nhà có thể nắm bắt đầy đủ các yêu cầu của vai trò và xác định những ứng viên có năng lực nhất.
Bài kiểm tra tại nhà thường có tiếng xấu. Thông thường, chúng chứa đầy các vấn đề chung chung mà các kỹ sư thấy nhàm chán, và chúng tạo ra những bộ lọc kém. Mục tiêu của tôi khác: tạo ra một thứ gì đó thực sự hấp dẫn, khiến ứng viên hào hứng tham gia và cho phép chúng tôi tuyển chọn.
Dưới đây là bản dịch tiếng Việt cho đoạn văn bạn cung cấp:
---
...nắm bắt kỹ năng kỹ thuật của họ ở mức độ chi tiết cao.
Định dạng này cũng mang lại lợi thế so với phỏng vấn trực tiếp khi đánh giá kỹ năng kỹ thuật hiệu năng:
**Khoảng thời gian dài hơn:** Các kỹ sư hiếm khi phải đối mặt với thời hạn dưới một giờ khi viết mã. Khung thời gian 4 giờ (sau đó giảm xuống còn 2 giờ) phản ánh tốt hơn bản chất thực tế của công việc. Nó vẫn ngắn hơn hầu hết các nhiệm vụ thực tế, nhưng chúng ta cần cân bằng điều đó với mức độ khó khăn.
**Môi trường thực tế:** Không có ai theo dõi hay yêu cầu thuyết trình. Ứng viên làm việc trong trình soạn thảo của riêng họ mà không bị phân tâm.
**Thời gian để hiểu và sử dụng công cụ:** Tối ưu hóa hiệu năng đòi hỏi phải hiểu các hệ thống hiện có và đôi khi xây dựng các công cụ gỡ lỗi. Cả hai điều này đều khó có thể đánh giá thực tế trong một cuộc phỏng vấn 50 phút thông thường.
**Tương thích với hỗ trợ AI:** Hướng dẫn chung dành cho ứng viên của Anthropic yêu cầu ứng viên hoàn thành bài tập về nhà mà không có AI trừ khi có chỉ định khác. Đối với bài tập về nhà này, chúng tôi chỉ định rõ ràng điều ngược lại.
Các vấn đề có tầm nhìn xa hơn sẽ khó giải quyết hoàn toàn hơn đối với AI, vì vậy ứng viên có thể sử dụng các công cụ AI (như họ sẽ làm trong công việc) trong khi vẫn cần thể hiện kỹ năng của riêng mình.
Ngoài các mục tiêu cụ thể về định dạng này, tôi đã áp dụng các nguyên tắc tương tự mà tôi sử dụng khi thiết kế bất kỳ cuộc phỏng vấn nào để xây dựng bài tập về nhà:
**Đại diện cho công việc thực tế:** Vấn đề nên cho ứng viên nếm trải công việc thực sự liên quan đến điều gì.
**Tín hiệu cao:** Bài tập về nhà nên tránh các vấn đề phụ thuộc vào một hiểu biết duy nhất và đảm bảo ứng viên có nhiều cơ hội để thể hiện đầy đủ khả năng của mình — để lại càng ít yếu tố may rủi càng tốt. Nó cũng nên có phân bố điểm rộng và đảm bảo đủ độ sâu để ngay cả những ứng viên mạnh cũng không hoàn thành mọi thứ.
**Không yêu cầu kiến thức miền cụ thể:** Những người có nền tảng tốt có thể học các chi tiết cụ thể trong công việc. Yêu cầu chuyên môn hẹp một cách không cần thiết sẽ hạn chế nhóm ứng viên.
**Thú vị:** Vòng lặp phát triển nhanh, các vấn đề thú vị có chiều sâu và không gian cho sự sáng tạo.
Tôi đã xây dựng một trình mô phỏng Python cho một bộ tăng tốc giả với các đặc điểm giống TPU. Ứng viên tối ưu hóa mã chạy trên máy này, sử dụng dấu vết Perfetto tải lại nóng hiển thị mọi lệnh, tương tự như công cụ chúng tôi có trên Trainium.
Máy bao gồm các tính năng làm cho việc tối ưu hóa bộ tăng tốc trở nên thú vị: bộ nhớ scratchpad được quản lý thủ công (không giống CPU, bộ tăng tốc thường yêu cầu quản lý bộ nhớ rõ ràng), VLIW (nhiều đơn vị thực thi chạy song song mỗi chu kỳ, yêu cầu đóng gói lệnh hiệu quả), SIMD (các thao tác vector trên nhiều phần tử mỗi lệnh) và đa lõi (phân phối công việc giữa các lõi).
Nhiệm vụ là duyệt cây song song, cố tình không mang hương vị học sâu, vì hầu hết các kỹ sư hiệu năng chưa từng làm việc với học sâu và có thể học các chi tiết miền cụ thể trong công việc. Vấn đề được lấy cảm hứng từ suy luận cây quyết định không rẽ nhánh SIMD, một thách thức tối ưu hóa ML cổ điển như một cái gật đầu với quá khứ, mà chỉ một số ít ứng viên từng gặp trước đây.
Ứng viên bắt đầu với một phiên bản hoàn toàn tuần tự...
Dưới đây là bản dịch tiếng Việt cho đoạn văn bạn cung cấp:
Triển khai và khai thác dần tính song song của máy. Phần khởi động là song song đa lõi, sau đó ứng viên chọn xử lý vector hóa SIMD hoặc đóng gói lệnh VLIW. Phiên bản gốc cũng bao gồm một lỗi mà ứng viên cần gỡ lỗi trước, rèn luyện khả năng xây dựng công cụ của họ.
Bài kiểm tra tại nhà ban đầu hoạt động tốt. Một người từ nhóm Twitter đạt điểm cao hơn đáng kể so với những người khác. Anh ấy bắt đầu vào đầu tháng 2, hai tuần sau những lần tuyển dụng đầu tiên của chúng tôi qua quy trình tiêu chuẩn. Bài kiểm tra chứng tỏ tính dự đoán: Anh ấy ngay lập tức bắt đầu tối ưu hóa kernel và tìm ra giải pháp thay thế cho một lỗi trình biên dịch chặn khởi chạy liên quan đến toán học lập chỉ mục tensor tràn 32 bit.
Trong một năm rưỡi tiếp theo, khoảng 1.000 ứng viên đã hoàn thành bài kiểm tra tại nhà, và nó giúp chúng tôi tuyển dụng hầu hết đội ngũ kỹ thuật hiệu suất hiện tại. Nó đặc biệt có giá trị đối với những ứng viên có kinh nghiệm hạn chế trên giấy tờ: một số kỹ sư hiệu suất cao nhất của chúng tôi đến trực tiếp từ bậc đại học nhưng thể hiện đủ kỹ năng trong bài kiểm tra tại nhà để chúng tôi tự tin tuyển dụng.
Phản hồi tích cực. Nhiều ứng viên làm việc quá giới hạn 4 giờ vì họ thấy thích thú. Các bài nộp không giới hạn thời gian mạnh nhất bao gồm các trình biên dịch nhỏ tối ưu hóa đầy đủ và một số tối ưu hóa thông minh mà tôi không ngờ tới.
Đến tháng 5 năm 2025, Claude 3.7 Sonnet đã leo lên đến mức hơn 50% ứng viên sẽ tốt hơn nếu giao phó hoàn toàn cho Claude Code. Sau đó, tôi đã thử nghiệm một phiên bản tiền phát hành của Claude Opus 4 trên bài kiểm tra tại nhà. Nó đưa ra giải pháp tối ưu hơn hầu hết con người trong giới hạn 4 giờ.
Đây không phải là lần phỏng vấn đầu tiên của tôi bị đánh bại bởi một mô hình Claude. Tôi đã thiết kế một câu hỏi phỏng vấn trực tiếp vào năm 2023 đặc biệt vì các câu hỏi của chúng tôi lúc đó dựa trên các tác vụ phổ biến mà các mô hình Claude đầu có nhiều kiến thức và do đó có thể giải quyết dễ dàng. Tôi đã cố gắng thiết kế một câu hỏi đòi hỏi nhiều kỹ năng giải quyết vấn đề hơn là kiến thức, nhưng vẫn thất bại.


