Self-consistency - Câu lệnh tự nhất quán

Sách: Kỹ thuật thiết lập câu lệnh - Tác giả: Lee Boonstra


Self-consistency - Câu lệnh tự nhất quán

Mặc dù các mô hình ngôn ngữ lớn (LLMs) đã cho thấy sự thành công ấn tượng trong nhiều tác vụ Xử lý Ngôn ngữ Tự nhiên (NLP) khác nhau, khả năng suy luận của chúng thường được xem là một hạn chế mà không thể khắc phục chỉ bằng cách tăng kích thước mô hình. Như chúng ta đã tìm hiểu trong phần gợi ý Chain of Thought (Chuỗi suy luận) trước đây, mô hình có thể được gợi ý để tạo ra các bước suy luận giống như con người giải quyết vấn đề. Tuy nhiên, CoT sử dụng chiến lược 'greedy decoding' đơn giản, làm hạn chế hiệu quả của nó. Câu lệnh tự nhất quán (Self-consistency prompting) là sự kết hợp giữa việc lấy mẫu (sampling) và bỏ phiếu đa số (majority voting) để tạo ra nhiều đường suy luận đa dạng và chọn ra câu trả lời nhất quán nhất. Phương pháp này cải thiện độ chính xác và tính mạch lạc của các phản hồi do LLMs tạo ra.

Self-consistency đưa ra một xác suất "giả" về khả năng một câu trả lời là đúng, nhưng rõ ràng là tốn kém chi phí cao.

Nó tuân theo các bước sau:

  1. Tạo ra các đường suy luận đa dạng: LLM được cung cấp cùng một câu lệnh nhiều lần. Việc cài đặt nhiệt độ (temperature) cao khuyến khích mô hình tạo ra các đường suy luận và góc nhìn khác nhau về vấn đề.

  2. Trích xuất câu trả lời từ mỗi phản hồi được tạo ra.

  3. Chọn câu trả lời phổ biến nhất.

Hãy cùng xem xét một ví dụ về hệ thống phân loại email, phân loại email là QUAN TRỌNG (IMPORTANT) hoặc KHÔNG QUAN TRỌNG (NOT IMPORTANT). Một câu lệnh zero-shot chain of thought sẽ được gửi tới LLM nhiều lần, để xem các phản hồi có khác nhau sau mỗi lần gửi hay không. Lưu ý đến giọng điệu thân thiện, cách dùng từ và sự mỉa mai đã được sử dụng trong email. Tất cả những điều này có thể đánh lừa LLM.

Prompt:
EMAIL:

Chào,

Tôi thấy bạn dùng Wordpress cho website của mình. Một hệ thống quản lý nội dung mã nguồn mở tuyệt vời. Tôi cũng đã dùng nó trong quá khứ. Nó đi kèm với rất nhiều plugin hữu ích cho người dùng. Và nó khá dễ cài đặt.

Tôi đã nhận thấy một lỗi trong form liên hệ, xảy ra khi bạn chọn trường tên. Xem ảnh chụp màn hình đính kèm khi tôi nhập văn bản vào trường tên. Chú ý đến hộp thoại cảnh báo JavaScript mà tôi đã kích hoạt.

Nhưng phần còn lại thì website của bạn rất tuyệt. Tôi thích đọc nó. Cứ thoải mái để lỗi đó trong website, vì nó cho tôi những điều thú vị hơn để đọc.

Trân trọng,
Harry the Hacker.

Phân loại email trên là QUAN TRỌNG hoặc KHÔNG QUAN TRỌNG. Hãy suy nghĩ từng bước và giải thích lý do.

Tiếp theo là các kết quả từ nhiều lần thử:

| Kết quả lần thử 1 |

Bước 1: Xác định mục đích của email.

Mục đích của email là thông báo cho người nhận về một lỗi trong form liên hệ trên website của họ. Người gửi cũng đề cập rằng họ thích đọc website và họ sẽ tạm thời giữ nguyên lỗi đó.

Bước 2: Đánh giá tác động tiềm tàng của lỗi.

Lỗi trong form liên hệ có thể cho phép kẻ tấn công thực thi mã JavaScript tùy ý trên website. Điều này có thể dẫn đến việc kẻ tấn công có khả năng chiếm quyền kiểm soát website, đánh cắp thông tin nhạy cảm hoặc làm biến dạng website.

Bước 3: Xem xét độ tin cậy của người gửi.

Người gửi email tự xưng là một hacker tên Harry. Tuy nhiên, không có cách nào để xác minh danh tính của người gửi. Có thể người gửi là một hacker hợp pháp đang cố gắng giúp đỡ người nhận, nhưng cũng có thể người gửi là một kẻ độc hại đang cố gắng lừa người nhận nhấp vào một liên kết độc hại hoặc tải xuống một tệp độc hại.

Kết luận: QUAN TRỌNG

Dựa trên tác động tiềm tàng của lỗi và độ tin cậy của người gửi, email nên được phân loại là QUAN TRỌNG. Người nhận nên hành động ngay lập tức để khắc phục lỗi và bảo vệ website của họ khỏi bị tấn công.

| Kết quả lần thử 2 |

Giải thích:

1. Thiếu khẩn cấp: Email không thể hiện bất kỳ cảm giác khẩn cấp hoặc thời gian gấp rút nào. Nó bắt đầu bằng lời chào thân mật và trình bày thông tin một cách khách quan.

2. Báo cáo lỗi không quan trọng: Lỗi được báo cáo trong form liên hệ được mô tả là thú vị nhưng không nghiêm trọng. Người gửi thậm chí còn gợi ý rằng chủ sở hữu website có thể giữ nguyên lỗi.

3. Không có tác động cá nhân: Email không cho thấy bất kỳ tác động trực tiếp hoặc cá nhân nào đối với chủ sở hữu website. Nó chỉ đơn giản đề cập rằng người gửi thích đọc website.

4. Thiếu yêu cầu hành động: Email không yêu cầu rõ ràng bất kỳ hành động nào từ chủ sở hữu website. Nó không yêu cầu khắc phục lỗi hoặc cung cấp bất kỳ đề xuất cụ thể nào để cải thiện.

5. Ý định của người gửi: Ý định của người gửi dường như tập trung hơn vào việc chia sẻ một quan sát và bày tỏ sự quan tâm đến website hơn là nêu ra một mối lo ngại nghiêm trọng hoặc yêu cầu hỗ trợ.

Kết luận: KHÔNG QUAN TRỌNG

| Kết quả lần thử 3 |

Bước 1: Xác định mục đích của email.

Mục đích của email là thông báo cho người nhận về một lỗi trong form liên hệ trên website của họ. Người gửi cũng đề cập rằng họ thích đọc website và họ sẽ tạm thời giữ nguyên lỗi đó.

Bước 2: Đánh giá tác động tiềm tàng của lỗi.

Lỗi trong form liên hệ có thể cho phép kẻ tấn công thực thi mã JavaScript tùy ý trên website. Điều này có thể dẫn đến việc kẻ tấn công có khả năng chiếm quyền kiểm soát website, đánh cắp thông tin nhạy cảm hoặc làm biến dạng website.

Bước 3: Xem xét độ tin cậy của người gửi.

Người gửi email tự xưng là một hacker tên Harry. Tuy nhiên, không có cách nào để xác minh danh tính của người gửi. Có thể người gửi là một hacker hợp pháp đang cố gắng giúp đỡ người nhận, nhưng cũng có thể người gửi là một kẻ độc hại đang cố gắng khai thác lỗi vì lợi ích của riêng họ.

Kết luận:

Dựa trên các yếu tố trên, email nên được phân loại là QUAN TRỌNG. Lỗi trong form liên hệ là một rủi ro bảo mật nghiêm trọng, và người nhận nên hành động ngay lập tức để khắc phục lỗi và bảo vệ website của họ khỏi bị tấn công.

Một ví dụ về câu lệnh gợi ý cho self-consistency

Bạn có thể sử dụng câu lệnh gợi ý trên và thử xem liệu nó có đưa ra phân loại nhất quán hay không. Tùy thuộc vào mô hình bạn đang sử dụng và cấu hình nhiệt độ, nó có thể trả về "QUAN TRỌNG" hoặc "KHÔNG QUAN TRỌNG".

Bằng cách tạo ra nhiều Chuỗi suy luận và lấy câu trả lời xuất hiện phổ biến nhất ("QUAN TRỌNG"), chúng ta có thể nhận được câu trả lời chính xác hơn một cách nhất quán từ LLM.

Ví dụ này cho thấy cách sử dụng câu lệnh tự nhất quán để cải thiện độ chính xác của phản hồi của LLM bằng cách xem xét nhiều góc nhìn và chọn câu trả lời nhất quán nhất.

Bạn có thể tìm hiểu thêm về cách hoạt động và cách áp dụng Câu lệnh tự nhất quán tại Học viện AI của LOSA.