Kế 27: Mài kiếm trăm lần — Iterative refinement
Kế 27 Binh pháp AI: Kỹ thuật mài kiếm qua từng lượt prompt, biến output thô thành tinh binh qua 3-4 vòng lặp tối ưu
Huyền thoại lưỡi kiếm rèn trăm lần
Truyện kể rằng, thợ rèn kiếm lừng danh Masamune đã từng dùng trăm ngày để rèn một lưỡi katana. Không phải ông đập một nhát búa thật mạnh là xong — mà là giai đoạn cuối: mài kiếm. Hàng trăm lượt mài trên đá mài thô, rồi đá mài tinh, rồi da lộn bùn mài. Mỗi lượt chỉ điều chỉnh microscopically, loại bỏ tạp chất, căn chỉnh góc cạnh. Kết quả? Lưỡi kiếm sắc đến mức chém đứt sợi tóc rơi qua không gian.
Trong thế giới AI, hầu hết người dùng mắc sai lầm của "nhất kích tất sát" — nghĩ rằng một câu prompt thật dài, thật khéo léo sẽ cho ra output hoàn hảo ngay lần đầu. Nhưng thực tế, output của AI giống như thanh kiếm vừa rèn xong: nó có hình dáng, nhưng chưa sắc bén, chưa tinh luyện. Kế 27: Mài kiếm trăm lần dạy chúng ta rằng: chất lượng không đến từ một prompt phức tạp, mà đến từ chuỗi prompt đơn giản, mỗi lần tốt hơn một chút.
Vấn đề: Khi "một lần duy nhất" làm bạn thất vọng
Bạn đã từng viết một prompt siêu dài — yêu cầu AI "viết báo cáo 2000 từ, giọng văn chuyên nghiệp, có dẫn chứng, tóm tắt 3 phần, kết luận mạnh mẽ" — và kết quả nhận được là... ổn, nhưng chưa đủ. Câu mở đầu hơi sáo rỗng, dẫn chứng thứ hai không liên quan lắm, và kết luận thì như copy-paste từ bài khác?
Đó là "first draft syndrome". Khi bắt AI làm mọi thứ trong một lượt (lên ý tưởng → viết → chỉnh sửa), nó rơi vào attention dilution — bản chất autoregressive của LLM khiến lỗi ở đoạn đầu tích lũy và khuếch đại xuống đoạn cuối. Như thợ rèn cố gắng đập, mài, và đánh bóng trong một nhát búa — kết quả sẽ là một lưỡi kiếm gãy hoặc cùn.
Kế sách: Ba lượt mài kiếm
Bí mật nằm ở việc tách biệt các chế độ nhận thức (cognitive modes) của AI. Thay vì yêu cầu hoàn hảo ngay, bạn chạy 3-4 vòng lặp, mỗi vòng tập trung một nhiệm vụ duy nhất:
Lượt 1: Nhám thô (The Rough Grind) — Draft
Mục tiêu: Phủ sóng ý tưởng, không cần hoàn hảo. Dùng temperature cao (0.7-1.0) để AI "nói ra hết" mọi góc nhìn.
Prompt: "Viết bản thảo đầu tiên về [chủ đề]. Không cần chỉnh sửa,
không cần định dạng. Chỉ cần bao quát hết các điểm chính,
kể cả những ý bạn không chắc chắn."Output mẫu: Một đoạn văn dài, có thể lộn xộn, nhưng đầy đủ nội dung — như khối thép vừa rèn.
Lượt 2: Giũa tinh (The Fine File) — Critique
Chuyển sang chế độ phê bình. Đây là lúc bạn bắt AI "tắt chế độ sáng tạo, bật chế độ phân tích". Dùng system prompt riêng biệt.
Prompt: "Đóng vai trò biên tập viên khắt khe có 10 năm kinh nghiệm.
Phê bình bản thảo sau theo 5 tiêu chí: (1) Logic lập luận,
(2) Dẫn chứng có chính xác không, (3) Giọng văn có đồng nhất không,
(4) Đoạn nào thừa, (5) Đoạn nào thiếu.
Liệt kê cụ thể từng lỗi, đừng sửa, chỉ chỉ ra."Output mẫu: Danh sách các lỗi cụ thể: "Đoạn 2 mâu thuẫn với đoạn 4", "Thiếu số liệu Q3 2024", "Từ 'tuyệt vời' lặp lại 5 lần".
Chính xác như gradient: Phê bình phải cụ thể như vector chỉ hướng — "sửa đoạn này" là vô dụng, "thêm số liệu vào đoạn 3" mới là actionable feedback.
Lượt 3: Đánh bóng (The Polish) — Rewrite
Dùng phê bình làm ràng buộc cứng để viết lại. Đây là constrained optimization.
Prompt: "Dựa trên bản thảo ban đầu và danh sách phê bình,
viết lại bản hoàn chỉnh. Khắc phục tất cả lỗi đã chỉ ra.
Giữ nguyên các phần tốt. Độ dài 800-1000 từ."That's it. Ba lượt mài. Không cần prompt kỹ thuật phức tạp ở lượt 1 — vì lỗi sẽ được sửa ở lượt 2 và 3.
Tại sao kế này hiệu quả?
Mechanism 1: Ngắt chuỗi lỗi tích lũy LLM là bộ sinh token tự hồi quy (autoregressive). Xác suất lỗi tích lũy theo cấp số nhân qua từng token. Trong bài toán reasoning, chuỗi 50 token có độ chính xác chỉ còn ~8%. Khi bạn chia thành các đoạn ngắn với "điểm dừng" (commit points), bạn reset lại xác suất lỗi về 0 ở mỗi lượt mài.
Mechanism 2: Ngân sách Attention Transformer có ngân sách attention cố định. Trong prompt một lượt dài, attention bị phân tán giữa "lên ý tưởng", "viết câu đẹp", và "kiểm tra lỗi". Khi tách ra, mỗi lượt có toàn bộ attention budget cho một nhiệm vụ — giống như thợ mài chỉ tập trung vào góc cạnh, không lo chuyện hình dáng thanh kiếm.
Mechanism 3: Tách biệt System 1 và System 2 Theo "Mài kiếm — The Sword Sharpening Principle" từ nghiên cứu IBM và CodeSignal:
- Draft (Lượt 1): Kích hoạt System 1 — tư duy nhanh, liên tưởng, phóng khoáng (associative thinking).
- Critique (Lượt 2): Kích hoạt System 2 — tư duy chậm, phân tích, kiểm chứng (deliberate thinking).
Nếu bắt AI làm cả hai cùng lúc, chúng gây nhiễu lẫn nhau (cognitive interference). Tách ra giống như "write drunk, edit sober" — cho phép model "thấm" vào từng vai trò hoàn toàn.
Số liệu thực nghiệm:
- Độ chính xác reasoning tăng từ 68.7% → 73.7% so với one-shot (Adaline, 2024).
- Tuy nhiên, Expected Calibration Error tăng nếu bạn chỉ hỏi "Are you sure?" — vì AI sẽ sycophancy (nịnh bợ) và đổi đúng thành sai. Phê bình phải cụ thể, không phải xin lỗi chung chung.
Cảnh báo: Lặp vô hạn không tốt hơn. Sau 3-4 lượt, lợi ích biên giảm (diminishing returns). Nếu vẫn chưa đạt sau 5 lượt, vấn đề nằm ở prompt đầu vào, không phải số lần mài.
Ứng dụng thực chiến
Scenario 1: Viết tài liệu kỹ thuật dài
Cách thông thường: Viết prompt 500 từ yêu cầu "viết API documentation đầy đủ" → nhận về bản draft sơ sài, thiếu edge cases.
Áp dụng Kế 27:
- Draft: "Liệt kê tất cả endpoints và parameters chính"
- Critique: "Kiểm tra xem có thiếu rate limiting, error codes, hay ví dụ code không?"
- Polish: "Viết thành tài liệu Markdown chuẩn OpenAPI, bổ sung các phần còn thiếu"
Scenario 2: Phân tích dữ liệu phức tạp
- Draft: AI trích xuất dữ liệu thô từ CSV, tạo bảng tóm tắt.
- Critique: AI kiểm tra "có outlier nào bị bỏ qua? Có tương quan nào ngược với giả thuyết không?"
- Synthesize: Viết báo cáo cuối dựa trên dữ liệu đã kiểm chứng.
Scenario 3: Refactor code
Dùng Claude Artifacts hoặc ChatGPT Canvas:
- Pass 1: Sinh code mới (chức năng chạy được).
- Pass 2: Review bảo mật và performance.
- Pass 3: Tối ưu và viết comments.
| Tiêu chí | One-shot Prompt | Mài kiếm 3 lượt |
|---|---|---|
| Chất lượng | Ổn (baseline) | Xuất sắc (+20-30%) |
| Chi phí token | 1x | 3-5x |
| Thời gian | Nhanh (single API call) | Chậm hơn 2-3x (vẫn nhanh hơn human) |
| Rủi ro lỗi | Cao (lỗi tích lũy) | Thấp (kiểm tra giữa chừng) |
| Phù hợp | Chat đơn giản, FAQ | Báo cáo tài chính, code production, content marketing |
Tool stack gợi ý:
- Claude.ai với Artifacts (perfect cho chuỗi draft-critique-rewrite).
- ChatGPT Canvas (chế độ inline editing như một "lượt mài" liên tục).
- Cursor Composer (multi-file editing với iterative refinement).
- LangChain/LangGraph (nếu cần automate 3 bước thành pipeline).
Đọc thêm
Kế 26: Rút củi đáy nồi
Debug AI sai từ gốc — khi mài kiếm không đủ, phải sửa từ lò rèn (training data & reasoning gốc)
Kế 28: Lui binh giữ thế
Graceful degradation — khi model quá yếu, đừng mài nữa mà thu nhỏ scope lại
Kế 25: Tùy cơ ứng biến
Khi AI từ chối — cách rephrase hợp lệ để bắt đầu vòng lặp mài kiếm
Cross-course:
/docs/learn-ai/level-1/prompt-engineering/chain-of-thought— Hiểu sâu về cách tách bước suy nghĩ/docs/ai-engineering/level-1/agents/self-reflection— Kỹ thuật Self-Refine và Reflexion trong agentic workflows
Kế 26: Rút củi đáy nồi — Debug AI sai từ gốc
Kế 26 Binh pháp AI: Thay vì vá lỗi bề mặt bằng prompt phức tạp, đào tận gốc rễ lỗi trong dữ liệu hoặc representation để triệt để khắc phục AI sai.
Kế 28: Lui binh giữ thế — Graceful Degradation khi model yếu
Kế 28 Binh pháp AI: Khi model yếu, đừng ép làm việc nặng. Thu nhỏ phạm vi, giảm context, đơn giản hóa prompt để AI vẫn đạt chất lượng trong 'vùng an toàn' củ...