Automatic Prompt Engineer (APE) (VI)

From Systems analysis Wiki
Jump to navigation Jump to search

Automatic Prompt Engineer (APE) — là một phương pháp tự động hóa việc tạo ra và tối ưu hóa các chỉ dẫn văn bản (prompt) nhằm điều khiển hành vi của các mô hình ngôn ngữ lớn (LLM). Phương pháp này được đề xuất vào năm 2022 bởi một nhóm các nhà nghiên cứu dưới sự dẫn dắt của Yongchao Zhou[1].

Thay vì phải chọn lọc và cải tiến prompt theo cách thủ công, APE hình thức hóa việc kỹ thuật hóa prompt như một bài toán tối ưu hóa. Trong khuôn khổ bài toán này, prompt được xem như một "chương trình" bằng ngôn ngữ tự nhiên cần được tổng hợp để tối đa hóa một hàm chất lượng nhất định (ví dụ: độ chính xác hoặc độ tin cậy của các câu trả lời từ mô hình)[2].

Khái niệm và phương pháp cơ bản

Phương pháp APE sử dụng hai mô hình ngôn ngữ phối hợp với nhau: mô hình tạo sinhmô hình mục tiêu. Quá trình này là một vòng lặp tìm kiếm và chọn lọc (search-and-select) có tính lặp đi lặp lại:

  1. Tạo sinh các ứng viên. Mô hình tạo sinh nhận đầu vào là một số ví dụ về cặp "đầu vào - đầu ra" cho tác vụ mục tiêu, rồi dựa trên đó tạo ra một tập hợp các prompt ứng viên có khả năng dẫn đến những kết quả tương tự.
  2. Đánh giá. Mỗi prompt ứng viên được tạo ra sẽ được truyền vào LLM mục tiêu. Mô hình mục tiêu thực thi chỉ dẫn trên một tập dữ liệu kiểm tra mới, và các câu trả lời của nó được đánh giá theo một chỉ số được xác định trước (ví dụ: độ chính xác, độ phủ, F1-score).
  3. Chọn lọc. Prompt cho kết quả tốt nhất sau quá trình đánh giá sẽ được chọn.
  4. Lặp lại (tùy chọn). Vòng lặp có thể được thực hiện lại. Mô hình tạo sinh nhận lệnh tinh chỉnh prompt tốt nhất đã tìm được bằng cách tạo ra các biến thể của nó, sau đó quá trình đánh giá và chọn lọc lại được lặp lại để đạt hiệu quả tối đa[1].

Phương pháp này cho phép tự động tái tạo quá trình chọn lọc prompt thủ công, sử dụng LLM để tạo ra các giả thuyết (prompt) và đánh giá chúng sau đó.

Các phương pháp luận chính

Việc tự động hóa kỹ thuật hóa prompt được thực hiện thông qua nhiều hướng tiếp cận thuật toán khác nhau.

Tự động hóa dựa trên LLM

Đây là phương pháp APE cổ điển được mô tả ở trên, trong đó một LLM được dùng để tạo ra và đánh giá các prompt cho một LLM khác (hoặc chính nó). Phương pháp này tỏ ra rất hiệu quả đối với các prompt văn bản rời rạc[1].

Phương pháp tiến hóa

Sử dụng các thuật toán di truyền hoặc tìm kiếm chùm tia (beam search) để tạo ra và chọn lọc các prompt, đặc biệt là những prompt dài và phức tạp. Ví dụ, framework APEX (Automatic Engineering of Long Prompts) áp dụng các thuật toán tiến hóa để từng bước "nuôi dưỡng" và cải thiện các chỉ dẫn phức tạp[3].

Phương pháp gradient (Soft Prompts)

Hướng tiếp cận này làm việc với các soft prompt (prompt liên tục hay mềm), vốn là các vector có thể huấn luyện được (embedding) chứ không phải các chỉ dẫn văn bản. Các vector này được tối ưu hóa bằng gradient descent trực tiếp trên tác vụ mục tiêu. Các kỹ thuật thuộc loại này bao gồm Prompt Tuning và Prefix-Tuning.

Reinforcement Learning

Theo mô hình này, LLM đóng vai trò là một tác nhân (agent) tạo ra prompt (hành động), còn môi trường trả về điểm đánh giá chất lượng của câu trả lời (phần thưởng). Mục tiêu là tối đa hóa tổng phần thưởng tích lũy bằng cách tìm ra chiến lược tối ưu để tạo sinh prompt thông qua các phương pháp Reinforcement Learning (RL)[2].

Kết quả và phát hiện

Các thí nghiệm trong nghiên cứu APE gốc cho thấy các chỉ dẫn được tạo ra tự động trong hầu hết các trường hợp đều vượt trội hơn các prompt do con người viết.

  • Trong quá trình kiểm tra trên 24 tác vụ xử lý ngôn ngữ tự nhiên (NLP), APE đã tạo ra các prompt hiệu quả hơn so với con người trong 19 trên 24 trường hợp[1].
  • APE đã tự động "khám phá" ra một cách diễn đạt hiệu quả hơn cho prompting theo phong cách Chain-of-Thought. Thay vì câu lệnh chuẩn «Let's think step by step» (Hãy suy nghĩ từng bước), APE đã tạo ra một chỉ dẫn đầy đủ và hiệu quả hơn: «Let's work this out in a step by step way to be sure we have the right answer» (Hãy cùng giải quyết vấn đề này theo từng bước để đảm bảo rằng chúng ta có được câu trả lời đúng). Cách diễn đạt này đã cải thiện độ chính xác khi giải các bài toán toán học trên các dataset như MultiArith và GSM8K[1].

Ứng dụng và ưu điểm

Ứng dụng

  • Cải thiện few-shot learning: Tự động lựa chọn các ví dụ và chỉ dẫn tối ưu.
  • Nâng cao độ tin cậy của mô hình: APE có thể được cấu hình để tìm kiếm các prompt giúp giảm thiểu "ảo giác" (hallucination) và tối đa hóa tính trung thực của câu trả lời trên các benchmark như TruthfulQA.
  • Tự động hóa phát triển: Đẩy nhanh việc tạo ra các chatbot, hệ thống trích xuất thông tin và các ứng dụng LLM khác[4].

Ưu điểm

  • Khả năng mở rộng: Có thể tự động tạo ra và đánh giá hàng trăm, hàng nghìn prompt mà không cần sự tham gia của con người.
  • Khả năng thích ứng: Dễ dàng điều chỉnh LLM cho phù hợp với các lĩnh vực mới, chuyên biệt hẹp.
  • Tiết kiệm nguồn lực: Giảm đáng kể thời gian và công sức bỏ ra cho việc chọn lọc prompt thủ công.

Sự phát triển và các hướng tiếp cận liên quan

Khái niệm APE tiếp tục phát triển. Các hệ thống hoàn toàn tự chủ đã xuất hiện, chẳng hạn như APET (Automatic Prompt Engineering Toolbox), cho phép LLM (ví dụ: GPT-4) tự áp dụng các chiến lược prompting phức tạp (Expert Prompting, Chain of Thought, Tree of Thoughts) và tự động cải thiện các chỉ dẫn mà không cần can thiệp từ bên ngoài[5].

APE là một phần của xu hướng rộng lớn hơn hướng đến tự động hóa tương tác với LLM, bao gồm:

  • AutoPrompt: Phương pháp ban đầu sử dụng tìm kiếm gradient để tìm ra các token "kích hoạt" riêng lẻ.
  • OPRO (Optimization by PROmpting): Phương pháp tương tự APE từ DeepMind, cũng sử dụng LLM để tối ưu hóa prompt.

Liên kết

  • Trang web chính thức của dự án Automatic Prompt Engineer (APE)
  • Bài báo khoa học «Large Language Models Are Human-Level Prompt Engineers»
  • AutoPrompt (2020). AutoPrompt – Official GitHub Repository. GitHub.

Tài liệu tham khảo

  • Zhou, Y. et al. (2022). Large Language Models Are Human-Level Prompt Engineers. arXiv:2211.01910.
  • Li, W. et al. (2025). A Survey of Automatic Prompt Engineering: An Optimization Perspective. arXiv:2502.11560.
  • Hsieh, C.-J. et al. (2024). Automatic Engineering of Long Prompts. Findings of ACL 2024. 2024.findings-acl.634.
  • Hsieh, C.-J. et al. (2023). Automatic Long Prompt Engineering. arXiv:2311.10117.
  • Shin, T. et al. (2020). AutoPrompt: Eliciting Knowledge from Language Models with Automatically Generated Prompts. arXiv:2010.15980.
  • Yang, C. et al. (2023). Large Language Models as Optimizers (OPRO). arXiv:2309.03409.
  • Liu, Y. et al. (2024). Revisiting OPRO: The Limitations of Small-Scale LLMs as Optimizers. arXiv:2405.10276.
  • Kepel, D.; Valogianni, K. (2024). Autonomous Prompt Engineering in Large Language Models (APET). arXiv:2407.11000.
  • Yang, C. et al. (2024). Optimizing Instructions and Demonstrations for Multi-Stage LM Programs. arXiv:2406.11695.
  • Hsieh, C.-J. et al. (2024). APEX (code repository and results). PDF.

Ghi chú

  1. 1.0 1.1 1.2 1.3 1.4 Zhou, Y. et al. «Large Language Models Are Human-Level Prompt Engineers». arXiv:2211.01910, 2022. [1]
  2. 2.0 2.1 Li, W. et al. «A Survey of Automatic Prompt Engineering: An Optimization Perspective». arXiv:2502.11560, 2025. [2]
  3. Hsieh, C.-J. et al. «Automatic Engineering of Long Prompts». Findings of the Association for Computational Linguistics: ACL 2024. [3]
  4. Fernandez-garcia, A. et al. «Automatic Prompt Engineering for Foundation Models: A Survey». MDPI Electronics, 2025. [4]
  5. Kepel, D. & Valogianni, K. «Autonomous Prompt Engineering in Large Language Models». arXiv:2407.11000, 2024. [5]