Bài 6 - Chain of Thought: Đừng bắt AI bấm máy tính, hãy bắt nó trình bày lời giải
Tuần trước tôi ngồi với một Finance Manager, anh ấy chạy một bài tính dòng tiền chiết khấu trên ChatGPT. Prompt rất chuẩn, giả định rõ ràng, kết quả ra một con số NPV gọn gàng đến mức anh ấy suýt copy thẳng vào báo cáo.
Tôi hỏi “anh có kiểm lại bước chiết khấu năm thứ 3 không?” Mở ra thì sai. Sai ngay phép chia đơn giản.
AI không hề “làm toán” theo nghĩa bạn nghĩ
Chuyện này không hiếm. Và lý do không phải vì AI dốt toán. Lý do là AI không hề “làm toán” theo nghĩa bạn nghĩ.
Bạn có bao giờ thắc mắc tại sao cùng một AI có thể viết bài phân tích vĩ mô sắc sảo, giải thích mô hình Black-Scholes rõ hơn sách giáo khoa, nhưng lại cộng sai hai dòng trong bảng cân đối kế toán?
Bởi vì AI ngôn ngữ lớn về bản chất là cỗ máy đoán chữ, không phải cỗ máy tính số.
Cơ chế: Token hóa — AI không nhìn thấy con số như bạn
Hình dung thế này. Khi bạn gõ “140.941 nhân 146”, AI không bấm máy tính như bạn. Nó nhìn vào dãy ký tự 140.941 × 146 = rồi đoán xem dãy số nào có khả năng xuất hiện tiếp theo cao nhất, dựa trên hàng tỷ văn bản nó đã đọc. Thậm chí con số “9.472” khi vào AI có thể bị tách thành “94” và “72” tùy ngữ cảnh. Nó không bao giờ nhìn thấy con số nguyên vẹn như bạn.
Giống một sinh viên học thuộc rất nhiều bài giải mẫu nhưng không thực sự hiểu cách làm toán. Gặp đề quen thì ra đúng. Đề lạ một chút là sai. Nghiên cứu trên bộ test GSM-Ranges cho thấy tỷ lệ lỗi logic tăng tới 14 điểm phần trăm khi bài toán số học phức tạp hơn. Đây không phải lỗi do bạn viết prompt sai. Đây là giới hạn bẩm sinh của loại công nghệ này.
Giải pháp: Chain of Thought — Bắt AI trình bày lời giải trước khi kết luận
Vậy làm thế nào để giảm sai? Câu trả lời là thay đổi cách ra đề.
Thay vì vứt cho AI một bài toán rồi chờ đáp số cuối cùng, bạn bắt nó trình bày từng bước. Kỹ thuật này gọi là Chain of Thought (CoT), tức buộc AI “nghĩ từng bước một” trước khi kết luận. Hiệu quả đã được đo lường: trên bộ test toán GSM8K, mô hình PaLM 540B tăng độ chính xác từ 17,9% lên 56,9% khi dùng CoT.
Giống như khi bạn yêu cầu nhân viên không chỉ nộp kết quả mà phải nộp cả file Excel có công thức. Không phải vì không tin, mà vì bạn cần kiểm tra được.
Quy trình 3 bước áp dụng CoT
Bước 1. Mô tả rõ bài toán và tất cả giả định đầu vào. Ví dụ: “Khoản vay 500 triệu, lãi suất 12%/năm, kỳ hạn 5 năm, lãi gộp hàng quý.”
Bước 2. Thêm một dòng chỉ dẫn vào cuối prompt: “Hãy trình bày từng bước tính toán. Mỗi bước ghi rõ công thức đang dùng, số liệu đầu vào và kết quả trung gian. Chưa đưa đáp số cuối cùng cho đến khi hoàn tất tất cả các bước.”
Bước 3. Đọc kết quả AI trả về theo từng bước. Bước nào đúng, bỏ qua. Bước nào sai, yêu cầu AI tính lại đúng bước đó. Không cần làm lại từ đầu.
Khi AI buộc phải viết ra cách làm, bản thân việc viết từng bước giúp nó tạo ngữ cảnh tốt hơn cho bước tiếp theo, nên ít sai hơn. Và quan trọng hơn, bạn có bản trình bày để soát thay vì chỉ nhìn một đáp số trơ trọi rồi tự hỏi “đúng hay sai đây?“
5 tác vụ tài chính mà CoT đặc biệt hiệu quả
Chain of Thought đặc biệt hiệu quả cho những tác vụ có nhiều bước tính nối tiếp nhau, nơi sai một bước đầu sẽ kéo sai toàn bộ kết quả phía sau.
1/ Tính lãi kép và lịch trả nợ vay. Bài toán này đòi hỏi quy đổi lãi suất theo kỳ, xác định số kỳ, rồi áp công thức lũy thừa. AI hay sai ở bước quy đổi hoặc sai số mũ. Khi yêu cầu trình bày từng bước, bạn bắt lỗi được ngay ở chỗ quy đổi.
2/ Chiết khấu dòng tiền (DCF). Mỗi năm có dòng tiền riêng, tỷ suất chiết khấu riêng, hệ số chiết khấu riêng. AI thường đúng ở năm 1, năm 2 rồi bắt đầu sai dần từ năm 3 trở đi khi phép tính lũy kế phức tạp hơn. Bắt nó trình bày từng năm, bạn sẽ thấy chỗ nó bắt đầu lệch.
3/ Phân tích tỷ số tài chính từ BCTC. Khi bạn yêu cầu AI tính 10 tỷ số cùng lúc từ một bộ BCTC, nó rất dễ lấy nhầm số liệu giữa các dòng — nhầm doanh thu thuần với tổng doanh thu, nhầm lợi nhuận gộp với lợi nhuận ròng. Yêu cầu nó ghi rõ “tử số lấy từ dòng nào, mẫu số lấy từ dòng nào” sẽ giúp bạn phát hiện ngay.
4/ Phân tích chênh lệch ngân sách (Variance Analysis). Bài toán này cần tính chênh lệch tuyệt đối, chênh lệch phần trăm, rồi phân loại thuận lợi hay bất lợi cho từng khoản mục. AI thường nhầm dấu hoặc nhầm chiều so sánh. Khi bắt nó trình bày từng khoản, bạn kiểm soát được logic so sánh.
5/ Tính giá trị doanh nghiệp bằng phương pháp so sánh (Multiples). Tưởng đơn giản nhưng AI hay lẫn giữa EV/EBITDA và P/E, hoặc lấy EBITDA của công ty này nhân với bội số của công ty khác mà không điều chỉnh. Yêu cầu trình bày từng bước “chọn bội số nào, từ công ty nào, áp vào chỉ tiêu nào” giúp bạn thấy rõ logic định giá.
3 lưu ý quan trọng khi dùng CoT
Thứ nhất, không phải lúc nào cũng cần thêm dòng “hãy trình bày từng bước”. Một số phiên bản AI đời mới đã tự biết suy luận từng bước mà không cần bạn yêu cầu — ví dụ ChatGPT o1, o3 hay Claude Thinking. Với những phiên bản này, thêm prompt CoT vào chỉ làm chậm hơn và tốn phí hơn chứ không chính xác hơn. Quy tắc đơn giản: nếu bạn đang dùng ChatGPT thường (GPT-4o) thì nên thêm CoT. Nếu đang dùng phiên bản có chữ “o1”, “o3” hoặc “Thinking” thì không cần.
Thứ hai, AI viết ra các bước trông rất hợp lý không có nghĩa nó thực sự tính theo đúng các bước đó. Nghiên cứu năm 2025 cho thấy AI có thể trình bày quy trình rất mạch lạc nhưng bên trong xử lý theo cách khác hoàn toàn. Giống nhân viên viết thuyết minh rất đẹp nhưng số trong Excel lại tính kiểu khác. Vì vậy đừng bao giờ chỉ đọc quy trình mà bỏ qua việc kiểm tra con số.
Thứ ba, nếu bạn đang dùng ChatGPT bản có tính năng chạy code (Code Interpreter), có một cách còn tốt hơn CoT cho bài toán thuần số. Thay vì bảo AI “trình bày từng bước” rồi nó vẫn đoán, hãy bảo nó “hãy viết code Python để tính”. Khi đó AI viết chương trình rồi chạy thật trên máy tính, ra kết quả chính xác gần như tuyệt đối. Nói nôm na, thay vì bắt “thầy giáo văn” làm toán, bạn đưa bài toán cho “máy tính thật” xử lý.
Nguyên tắc: Phân công đúng vai
Với công việc tài chính hàng ngày, thứ tự ưu tiên nên là: có tính năng chạy code thì yêu cầu AI tính bằng Python → không có thì dùng CoT prompt để AI trình bày từng bước cho bạn soát → và dù cách nào thì luôn kiểm tra lại bằng Excel với những con số sẽ đưa vào báo cáo chính thức.
Đừng biến AI thành máy tính bấm số. Hãy biến nó thành nhân viên phải trình bày lời giải trước khi bạn ký duyệt. AI trình bày quy trình, bạn kiểm tra con số. Đó là cách phân công đúng.
Sources
- Wei et al. - Chain-of-Thought Prompting Elicits Reasoning in Large Language Models (Kết quả PaLM 540B và GSM8K)
- Lanham et al. - Measuring Faithfulness in Chain-of-Thought Reasoning (Nghiên cứu về tính trung thực của quy trình suy luận so với kết quả tính toán)
- OpenAI o1 System Card & Anthropic Claude Thinking (Khả năng tự suy luận các bước)