Các bài trong khoáBài 24/30

30 bài

Domain 4: Prompt Engineering & Structured Output·Task 4.6

Review bằng nhiều phiên và nhiều lượt

Vì sao Claude khó tự bắt lỗi code nó vừa viết, review bằng một phiên độc lập, chia PR lớn thành lượt theo file và lượt tích hợp, kèm độ tự tin để chia việc.

  • 5 phút đọc
  • Đối chiếu docs 02/11/2026
  • 3 nguồn

Đọc xong bạn nắm được

  • Hiểu vì sao tự review trong cùng phiên kém hiệu quả
  • Dùng một phiên Claude thứ hai, không mang lập luận lúc viết code, để review
  • Chia review PR nhiều file thành lượt theo từng file và lượt tích hợp giữa các file
  • Cho Claude tự báo độ tự tin kèm mỗi phát hiện để chia việc review hợp lý

Claude viết code xong, bạn bảo nó "kiểm tra lại code vừa viết". Nó đọc lại và thường kết luận code ổn. Không phải vì nó lười, mà vì nó đọc lại với đúng những giả định đã dùng lúc viết.

Bài này giúp bạn trả lời: muốn review code hay bắt được lỗi, nên tổ chức các lượt review thế nào?

Ví dụ xuyên suốt: module tính lương của phần mềm nhân sự

Một công ty phần mềm nhân sự dùng Claude để sinh code và review code cho module tính lương. Gần đây:

  1. Claude sinh hàm tính thuế thu nhập cá nhân, rồi được dặn "tự rà lại lỗi" trong cùng cuộc trò chuyện. Nó báo không có lỗi. Một tuần sau mới phát hiện hàm tính sai khi nhân viên có người phụ thuộc đăng ký giữa năm.
  2. Một PR sửa 16 file: tính lương, phụ cấp, bảo hiểm, xuất phiếu lương. Review một lượt cho cả 16 file: có file được góp ý kỹ, có file chỉ một dòng chung chung. Cùng một cách làm tròn số, file này bị chê, file kia được khen.
  3. Bot review đưa ra 40 phát hiện mỗi PR, và trưởng nhóm không đủ thời gian đọc hết.

Tự review trong cùng phiên kém hiệu quả

Khi sinh code, Claude đã lập luận: "người phụ thuộc tính từ đầu năm", "làm tròn ở bước cuối". Lập luận đó nằm trong context. Khi được bảo tự review, Claude đọc code cùng với lập luận đó, và thấy code khớp với lập luận nên kết luận code đúng. Chỗ sai nằm ngay trong giả định, nên nó không nhìn ra.

Đề thi gọi đây là giới hạn của tự review (self-review limitations): model giữ lại context lập luận lúc tạo ra code, nên ít có xu hướng nghi ngờ quyết định của chính mình trong cùng phiên.

Cách sửa là dùng một phiên Claude thứ hai, độc lập (independent review instance): phiên này chỉ nhận code, yêu cầu nghiệp vụ và tiêu chí review, không nhận lập luận lúc viết. Nó đọc code như một người mới, nên dễ hỏi "người phụ thuộc đăng ký giữa năm thì sao?". Phiên review độc lập bắt được lỗi tinh vi tốt hơn cả việc dặn tự review hay bật extended thinking.

Tài liệu prompt của Anthropic cũng mô tả mẫu tách lượt tương tự: tạo bản nháp, cho Claude review theo tiêu chí, rồi sửa, mỗi bước là một lần gọi API riêng. Tài liệu best practices của Claude Code cũng liệt kê việc review với góc nhìn mới (fresh review) là một trường hợp đáng dùng subagent.

Chia PR lớn thành nhiều lượt

Vấn đề 2 do sự chú ý bị dàn mỏng (attention dilution): đọc 16 file một lúc, Claude không dành đủ chú ý đều cho từng file, nên có file kỹ, file sơ sài, và nhận xét tự mâu thuẫn giữa các file.

Cách sửa là review nhiều lượt (multi-pass review):

LượtĐọc gìTìm gì
Lượt theo file (per-file pass), mỗi file một lượtMột file cùng phần diff của nóLỗi cục bộ trong file: sai công thức, thiếu kiểm tra, làm tròn sai
Lượt tích hợp (integration pass)Cách các file gọi nhau, dữ liệu đi từ file này sang file khácLỗi giữa các file: phụ cấp tính ở một file nhưng file xuất phiếu lương không cộng vào

Mỗi lượt theo file có đủ chú ý cho đúng một file, nên độ kỹ đều nhau. Lượt tích hợp lo phần mà từng lượt riêng không thấy.

Kèm độ tự tin để chia việc review

Vấn đề 3: 40 phát hiện, người không đọc xuể. Có thể thêm một lượt kiểm tra, trong đó Claude tự báo mức tự tin cho từng phát hiện. Rồi dựa vào đó chia việc:

Mức tự tinXử lý
CaoĐăng thẳng thành comment trên PR
Trung bìnhGom vào một danh sách để dev xem nhanh
ThấpChuyển cho trưởng nhóm, hoặc ghi lại để phân tích sau

Mức tự tin Claude tự báo chưa chắc đã khớp với độ chính xác thật. Trước khi dùng các ngưỡng trên, hãy kiểm chúng trên một tập phát hiện đã có người gắn nhãn đúng sai, để biết "tự tin cao" thật sự đúng bao nhiêu phần trăm.

Nguồn

  1. Exam Guide CCAR-F v1.0, Task Statement 4.6(mở tab mới)
  2. Prompting best practices, Chain complex prompts (Claude API)(mở tab mới)
  3. Best practices for Claude Code(mở tab mới)

Nắm rồi thì thử sức với đề

Xem khoá luyện thi
Review bằng nhiều phiên và nhiều lượt · Anthropic Exam Pro