Chain-of-thought (CoT) Prompting | P8

Chain-of-thought (CoT) prompting, chuỗi suy nghĩ, được giới thiệu trong nghiên cứu của Wei và các cộng sự (2022), giúp mô hình thực hiện các bước suy luận phức tạp bằng cách sử dụng các bước suy luận trung gian. Bạn có thể kết hợp phương pháp này với few-shot prompting để có kết quả tốt hơn trên các nhiệm vụ phức tạp, yêu cầu suy luận trước khi trả lời.

Hãy xem một ví dụ về cách hoạt động của CoT:

Prompt:

Các số lẻ trong nhóm này cộng lại thành một số chẵn: 4, 8, 9, 15, 12, 2, 1. 

A: Cộng tất cả các số lẻ (9, 15, 1) thì được 25. Đáp án là Sai. 

Các số lẻ trong nhóm này cộng lại thành một số chẵn: 17, 10, 19, 4, 8, 12, 24. 

A: Cộng tất cả các số lẻ (17, 19) thì được 36. Đáp án là Đúng. 

Các số lẻ trong nhóm này cộng lại thành một số chẵn: 16, 11, 14, 4, 8, 13, 24.

A: Cộng tất cả các số lẻ (11, 13) thì được 24. Đáp án là Đúng. 

Các số lẻ trong nhóm này cộng lại thành một số chẵn: 17, 9, 10, 12, 13, 4, 2. 

A: Cộng tất cả các số lẻ (17, 9, 13) thì được 39. Đáp án là Sai. 

Các số lẻ trong nhóm này cộng lại thành một số chẵn: 15, 32, 5, 13, 82, 7, 1. 

A:

Output:

Cộng tất cả các số lẻ (15, 5, 13, 7, 1) thì được 41. Đáp án là Sai.

Chúng ta thấy rằng việc cung cấp bước suy luận cho mô hình giúp đạt kết quả chính xác. Thực tế, chúng ta có thể giải quyết nhiệm vụ này chỉ với một ví dụ, như sau:

Prompt:

Các số lẻ trong nhóm này cộng lại thành một số chẵn: 4, 8, 9, 15, 12, 2, 1. 

A: Cộng tất cả các số lẻ (9, 15, 1) thì được 25. Đáp án là Sai. 

Các số lẻ trong nhóm này cộng lại thành một số chẵn: 15, 32, 5, 13, 82, 7, 1. 

A:

Output:

Cộng tất cả các số lẻ (15, 5, 13, 7, 1) thì được 41. Đáp án là Sai.

Các tác giả cho rằng đây là khả năng mới xuất hiện với các mô hình ngôn ngữ đủ lớn.

Gần đây, một ý tưởng mới là zero-shot CoT (Kojima và cộng sự 2022), thêm câu “Hãy nghĩ từng bước một” vào prompt gốc. Hãy thử một bài toán đơn giản và xem mô hình hoạt động ra sao:

Prompt:

Tôi đã đi chợ và mua 10 quả táo. Tôi đã cho hàng xóm 2 quả và cho thợ sửa chữa 2 quả. Sau đó tôi lại mua thêm 5 quả táo và ăn 1 quả. Tôi còn lại bao nhiêu quả táo?

Output:

11 quả táo

Đáp án sai! Bây giờ hãy thử với prompt đặc biệt bằng cách thêm hướng dẫn “Hãy nghĩ từng bước một” vào Prompt:

Prompt:

Tôi đã đi chợ và mua 10 quả táo. Tôi đã cho hàng xóm 2 quả và cho thợ sửa chữa 2 quả. Sau đó tôi lại mua thêm 5 quả táo và ăn 1 quả. Tôi còn lại bao nhiêu quả táo? Hãy nghĩ từng bước một.

Output:

Đầu tiên, bạn bắt đầu với 10 quả táo. Bạn đã cho 2 quả cho hàng xóm và 2 quả cho thợ sửa chữa, vậy bạn còn lại 6 quả. Sau đó, bạn mua thêm 5 quả, vậy bạn có 11 quả. Cuối cùng, bạn ăn 1 quả, nên bạn còn lại 10 quả.

Như vậy bằng cách thêm vào prompt một hướng dẫn đơn giản là “hãy nghĩ từng bước một” đã có hiệu quả với bài toán này. Đây là một công cụ hữu ích khi bạn không có quá nhiều ví dụ để sử dụng trong prompt.

Automatic Chain-of-Thought (Auto-CoT)

Khi áp dụng Chain-of-Thought (CoT) prompting, chuỗi suy nghĩ tự động, với các ví dụ, quá trình này đòi hỏi phải tạo ra các ví dụ đa dạng và hiệu quả. Nỗ lực thủ công này có thể dẫn đến các giải pháp không tối ưu. Zhang và cộng sự (2022) đề xuất một cách tiếp cận để loại bỏ công việc thủ công bằng cách sử dụng LLMs với prompt “Hãy nghĩ từng bước một (Let’s think step by step)” để tạo ra các chuỗi suy luận cho các ví dụ một cách tự động. Quá trình tự động này vẫn có thể dẫn đến sai sót trong các chuỗi suy luận được tạo ra. Để giảm thiểu ảnh hưởng của các sai sót, sự đa dạng của các ví dụ rất quan trọng. Nghiên cứu này đề xuất Auto-CoT, phương pháp chọn các câu hỏi đa dạng và tạo ra các chuỗi suy luận để xây dựng các ví dụ.

Auto-CoT bao gồm hai giai đoạn chính:

Giai đoạn 1: Phân cụm câu hỏi: chia các câu hỏi của một bộ dữ liệu thành vài cụm.

Giai đoạn 2: Chọn mẫu ví dụ: chọn một câu hỏi đại diện từ mỗi cụm và tạo ra chuỗi suy luận của nó bằng Zero-Shot-CoT với các nguyên tắc đơn giản.

Các nguyên tắc đơn giản có thể là độ dài của câu hỏi (ví dụ: 60 tokens) và số bước trong lập luận (ví dụ: 5 bước suy luận). Điều này khuyến khích mô hình sử dụng các ví dụ đơn giản và chính xác.

Trả lời