Tìm hiểu kỹ thuật Prompt Chain Of Thought (COT)
Một cách ngắn gọn, cấu trúc của kỹ thuật này là trình bày vấn đề hoặc câu hỏi, sau đó thêm chi tiết rõ ràng để lý giải từng bước, hoặc cung cấp thí dụ dạng few-shot prompt để diễn giải đầy đủ quá trình suy luận.
Hiện tại các chat bot như ChatGPT 4o, Claude Sonnet 3.7 hay Gemini 2.5 đều có thể tự tạo ra CoT ngay cả khi người dùng nhập prompt zero shot vào, tuy nhiên việc hiểu được bản chất hoạt động và tạo yêu cầu rõ ràng bằng kỹ thuật CoT vẫn mang lại lợi ích đáng kể trong các tình huống phức tạp, cần độ chính xác cao hoặc cần một lộ trình rõ ràng.
Chain of Thought (CoT) prompting là một kỹ thuật để cải thiện khả năng suy luận của model LLM bằng cách hướng dẫn mô hình tạo ra các bước suy luận trung gian, giúp nó đưa ra các câu trả lời chính xác hơn. Chúng ta cần kết hợp CoT với few-shot prompting để có kết quả tốt hơn đối với các nhiệm vụ phức tạp hơn đòi hỏi suy luận trước khi trả lời. CoT hoạt động bằng cách yêu cầu LLM giải thích từng bước thay vì chỉ trả về câu trả lời. Thí dụ, khi giải một bài toán, trong prompt sẽ yêu cầu rằng "Hãy nghĩ từng bước một".
Ưu điểm của kỹ thuật Promt chain of thought
- Dễ thực hiện nhưng rất hiệu quả.
- Hoạt động tốt với các LLM phổ quát (không cần tinh chỉnh).
- Có tính giải thích cao. Chúng ta có thể kiểm tra các phản hồi của LLM và xem các bước suy luận đã được thực hiện để phát hiện lỗi nếu có.
- Cải thiện tính hiệu quả khi chuyển đổi giữa cácmodel khác nhau. Hiệu suất prompt của bạn sẽ ít bị ảnh hưởng hơn khi dùng các LLM khác nhau so với khi prompt không sử dụng CoT.
- Có thể hữu ích cho nhiều trường hợp sử dụng, chẳng hạn như tạo code (chia yêu cầu thành các bước nhỏ và ánh xạ chúng tới các dòng code cụ thể) và tạo dữ liệu tổng hợp.
- Nói chung, bất kỳ nhiệm vụ nào có thể giải quyết bằng cách "nói rõ từng bước" đều là thích hợp sử dụng CoT. Nếu bạn có thể giải thích các bước để giải quyết một vấn đề nào đó, hãy thử CoT để chạy hàng loạt những tác vụ đó.
Nhược điểm của COT:
- Prompt thường dài và phức tạp do chứa nhiều thông tin, chỉ dẫn.
- Đầu ra thường dài, do đó cũng tiêu tốn nhiều token đầu ra, dẫn tới chi phí sử dụng cũng cao hơn, thời gian xử lý lâu hơn.
Một lưu ý chính là CoT sẽ rất mạnh nếu kết hợp nó với Few shot Prompting thay vì chỉ dừng lại ở câu Hãy suy nghĩ từng bước. Cách này đặc biệt có ích khi muốn tiết kiệm số token đầu ra, để output ngắn gọn hơn, giới hạn suy luận của model lại, không quá lan man. Đặc biệt phù hợp khi dùng CoT để code.
Khi nào thì sử dụng Prompt COT
- Tạo code: CoT cực kỳ thích hợp để cùng với model Code.
- Các tác vụ số học
- Các lý luận thông thường lẫn lý luận tượng trưng trong đó các bước trung gian đóng vai trò quan trọng đối với độ chính xác của đầu ra.
- Cải thiện khả năng diễn giải.
Cách sử dụng
Vấn đề X
Hãy suy nghĩ từng bước một X1, X2, X3,… để đạt mục đích Y
Ví dụ 1:
Hai thành phố cách nhau 208,5 km, một xe máy đi từ thành phố A đến thành phố B với vận tốc là 38,6 km/h. Một ô tô khởi hành cùng một lúc với xe máy đi từ thành phố B đến thành phố A với vận tốc 44,8 km/h.
a) Hỏi xe máy và ô tô gặp nhau lúc mấy giờ biết hai xe khởi hành lúc 8 giờ 30 phút
b) Chỗ gặp nhau cách thành phố A bao nhiêu km?
Hãy suy nghĩ từng bước để tìm đáp án
Ví dụ 2:
Áp dụng khi sử dụng trong tình huống viết code
Đây là kết quả khi chúng ta sử dụng với kỹ thuật prompt zero shot:
Đây là khi bạn sử dụng kỹ thuật chain of thought